Files
Odin/vendor/directx/d3d11/d3d11.odin
2026-02-17 18:27:34 +01:00

5213 lines
204 KiB
Odin

// Bindings for [[ Direct3D 11 ; https://learn.microsoft.com/en-us/windows/win32/direct3d11/atoc-dx-graphics-direct3d-11 ]].
package directx_d3d11
foreign import "system:d3d11.lib"
import "../dxgi"
import "../d3d_common"
import "core:sys/windows"
IUnknown :: dxgi.IUnknown
IUnknown_VTable :: dxgi.IUnknown_VTable
HANDLE :: dxgi.HANDLE
HMODULE :: dxgi.HMODULE
HRESULT :: dxgi.HRESULT
GUID :: dxgi.GUID
IID :: dxgi.IID
SIZE_T :: dxgi.SIZE_T
BOOL :: dxgi.BOOL
UINT :: dxgi.UINT
INT :: dxgi.INT
LPCSTR :: windows.LPCSTR
LPCWSTR :: windows.LPCWSTR
RECT :: dxgi.RECT
SIZE :: dxgi.SIZE
IBlob :: d3d_common.ID3DBlob
@(default_calling_convention="system", link_prefix="D3D11")
foreign d3d11 {
CreateDevice :: proc(
pAdapter: ^dxgi.IAdapter,
DriverType: DRIVER_TYPE,
Software: HMODULE,
Flags: CREATE_DEVICE_FLAGS,
pFeatureLevels: [^]FEATURE_LEVEL,
FeatureLevels: u32,
SDKVersion: u32,
ppDevice: ^^IDevice,
pFeatureLevel: ^FEATURE_LEVEL,
ppImmediateContext: ^^IDeviceContext,
) -> HRESULT ---
CreateDeviceAndSwapChain :: proc(
pAdapter: ^dxgi.IAdapter,
DriverType: DRIVER_TYPE,
Software: HMODULE,
Flags: CREATE_DEVICE_FLAGS,
pFeatureLevels: [^]FEATURE_LEVEL,
FeatureLevels: u32,
SDKVersion: u32,
pSwapChainDesc: ^dxgi.SWAP_CHAIN_DESC,
ppSwapChain: ^^dxgi.ISwapChain,
ppDevice: ^^IDevice,
pFeatureLevel: ^FEATURE_LEVEL,
ppImmediateContext: ^^IDeviceContext,
) -> HRESULT ---
}
WKPDID_D3DDebugObjectNameW_UUID_STRING :: "4CCA5FD8-921F-42C8-8566-70CAF2A9B741"
WKPDID_D3DDebugObjectNameW_UUID := &IID{0x4cca5fd8, 0x921f, 0x42c8, {0x85, 0x66, 0x70, 0xca, 0xf2, 0xa9, 0xb7, 0x41}}
WKPDID_CommentStringW_UUID_STRING :: "d0149dc0-90e8-4ec8-8144-e900ad266bb2"
WKPDID_CommentStringW_UUID := &IID{0xd0149dc0, 0x90e8, 0x4ec8, {0x81, 0x44, 0xe9, 0x00, 0xad, 0x26, 0x6b, 0xb2}}
TEXTURE_LAYOUT_ROW_MAJOR_UUID_STRING :: "b5dc234f-72bb-4bec-9705-8cf258df6b6c"
TEXTURE_LAYOUT_ROW_MAJOR_UUID := &IID{0xb5dc234f, 0x72bb, 0x4bec, {0x97, 0x05, 0x8c, 0xf2, 0x58, 0xdf, 0x6b, 0x6c}}
TEXTURE_LAYOUT_64KB_STANDARD_SWIZZLE_UUID_STRING :: "4c0f29e3-3f5f-4d35-84c9-bc0983b62c28"
TEXTURE_LAYOUT_64KB_STANDARD_SWIZZLE_UUID := &IID{0x4c0f29e3, 0x3f5f, 0x4d35, {0x84, 0xc9, 0xbc, 0x09, 0x83, 0xb6, 0x2c, 0x28}}
@(link_prefix="D3D11_")
foreign d3d11 {
DECODER_PROFILE_MPEG2_MOCOMP: GUID
DECODER_PROFILE_MPEG2_IDCT: GUID
DECODER_PROFILE_MPEG2_VLD: GUID
DECODER_PROFILE_MPEG1_VLD: GUID
DECODER_PROFILE_MPEG2and1_VLD: GUID
DECODER_PROFILE_H264_MOCOMP_NOFGT: GUID
DECODER_PROFILE_H264_MOCOMP_FGT: GUID
DECODER_PROFILE_H264_IDCT_NOFGT: GUID
DECODER_PROFILE_H264_IDCT_FGT: GUID
DECODER_PROFILE_H264_VLD_NOFGT: GUID
DECODER_PROFILE_H264_VLD_FGT: GUID
DECODER_PROFILE_H264_VLD_WITHFMOASO_NOFGT: GUID
DECODER_PROFILE_H264_VLD_STEREO_PROGRESSIVE_NOFGT: GUID
DECODER_PROFILE_H264_VLD_STEREO_NOFGT: GUID
DECODER_PROFILE_H264_VLD_MULTIVIEW_NOFGT: GUID
DECODER_PROFILE_WMV8_POSTPROC: GUID
DECODER_PROFILE_WMV8_MOCOMP: GUID
DECODER_PROFILE_WMV9_POSTPROC: GUID
DECODER_PROFILE_WMV9_MOCOMP: GUID
DECODER_PROFILE_WMV9_IDCT: GUID
DECODER_PROFILE_VC1_POSTPROC: GUID
DECODER_PROFILE_VC1_MOCOMP: GUID
DECODER_PROFILE_VC1_IDCT: GUID
DECODER_PROFILE_VC1_VLD: GUID
DECODER_PROFILE_VC1_D2010: GUID
DECODER_PROFILE_MPEG4PT2_VLD_SIMPLE: GUID
DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_NOGMC: GUID
DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_GMC: GUID
DECODER_PROFILE_HEVC_VLD_MAIN: GUID
DECODER_PROFILE_HEVC_VLD_MAIN10: GUID
DECODER_PROFILE_VP9_VLD_PROFILE0: GUID
DECODER_PROFILE_VP9_VLD_10BIT_PROFILE2: GUID
DECODER_PROFILE_VP8_VLD: GUID
CRYPTO_TYPE_AES128_CTR: GUID
DECODER_ENCRYPTION_HW_CENC: GUID
DECODER_BITSTREAM_ENCRYPTION_TYPE_CENC: GUID
DECODER_BITSTREAM_ENCRYPTION_TYPE_CBCS: GUID
KEY_EXCHANGE_HW_PROTECTION: GUID
AUTHENTICATED_QUERY_PROTECTION: GUID
AUTHENTICATED_QUERY_CHANNEL_TYPE: GUID
AUTHENTICATED_QUERY_DEVICE_HANDLE: GUID
AUTHENTICATED_QUERY_CRYPTO_SESSION: GUID
AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT: GUID
AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS: GUID
AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT: GUID
AUTHENTICATED_QUERY_OUTPUT_ID_COUNT: GUID
AUTHENTICATED_QUERY_OUTPUT_ID: GUID
AUTHENTICATED_QUERY_ACCESSIBILITY_ATTRIBUTES: GUID
AUTHENTICATED_QUERY_ENCRYPTION_WHEN_ACCESSIBLE_GUID_COUNT: GUID
AUTHENTICATED_QUERY_ENCRYPTION_WHEN_ACCESSIBLE_GUID: GUID
AUTHENTICATED_QUERY_CURRENT_ENCRYPTION_WHEN_ACCESSIBLE: GUID
AUTHENTICATED_CONFIGURE_INITIALIZE: GUID
AUTHENTICATED_CONFIGURE_PROTECTION: GUID
AUTHENTICATED_CONFIGURE_CRYPTO_SESSION: GUID
AUTHENTICATED_CONFIGURE_SHARED_RESOURCE: GUID
AUTHENTICATED_CONFIGURE_ENCRYPTION_WHEN_ACCESSIBLE: GUID
KEY_EXCHANGE_RSAES_OAEP: GUID
}
FL9_1_REQ_TEXTURE1D_U_DIMENSION :: 2048
FL9_3_REQ_TEXTURE1D_U_DIMENSION :: 4096
FL9_1_REQ_TEXTURE2D_U_OR_V_DIMENSION :: 2048
FL9_3_REQ_TEXTURE2D_U_OR_V_DIMENSION :: 4096
FL9_1_REQ_TEXTURECUBE_DIMENSION :: 512
FL9_3_REQ_TEXTURECUBE_DIMENSION :: 4096
FL9_1_REQ_TEXTURE3D_U_V_OR_W_DIMENSION :: 256
FL9_1_DEFAULT_MAX_ANISOTROPY :: 2
FL9_1_IA_PRIMITIVE_MAX_COUNT :: 65535
FL9_2_IA_PRIMITIVE_MAX_COUNT :: 1048575
FL9_1_SIMULTANEOUS_RENDER_TARGET_COUNT :: 1
FL9_3_SIMULTANEOUS_RENDER_TARGET_COUNT :: 4
FL9_1_MAX_TEXTURE_REPEAT :: 128
FL9_2_MAX_TEXTURE_REPEAT :: 2048
FL9_3_MAX_TEXTURE_REPEAT :: 8192
_8BIT_INDEX_STRIP_CUT_VALUE :: 0xff
_16BIT_INDEX_STRIP_CUT_VALUE :: 0xffff
_32BIT_INDEX_STRIP_CUT_VALUE :: 0xffffffff
ARRAY_AXIS_ADDRESS_RANGE_BIT_COUNT :: 9
CLIP_OR_CULL_DISTANCE_COUNT :: 8
CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT :: 2
COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT :: 14
COMMONSHADER_CONSTANT_BUFFER_COMPONENTS :: 4
COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT :: 32
COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT :: 15
COMMONSHADER_CONSTANT_BUFFER_PARTIAL_UPDATE_EXTENTS_BYTE_ALIGNMENT :: 16
COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS :: 4
COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT :: 15
COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST :: 1
COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS :: 1
COMMONSHADER_FLOWCONTROL_NESTING_LIMIT :: 64
COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS :: 4
COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT :: 1
COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST :: 1
COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS :: 1
COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT :: 32
COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS :: 1
COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT :: 128
COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST :: 1
COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS :: 1
COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT :: 128
COMMONSHADER_SAMPLER_REGISTER_COMPONENTS :: 1
COMMONSHADER_SAMPLER_REGISTER_COUNT :: 16
COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST :: 1
COMMONSHADER_SAMPLER_REGISTER_READ_PORTS :: 1
COMMONSHADER_SAMPLER_SLOT_COUNT :: 16
COMMONSHADER_SUBROUTINE_NESTING_LIMIT :: 32
COMMONSHADER_TEMP_REGISTER_COMPONENTS :: 4
COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT :: 32
COMMONSHADER_TEMP_REGISTER_COUNT :: 4096
COMMONSHADER_TEMP_REGISTER_READS_PER_INST :: 3
COMMONSHADER_TEMP_REGISTER_READ_PORTS :: 3
COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX :: 10
COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN :: -10
COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE :: -8
COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE :: 7
CS_4_X_BUCKET00_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 256
CS_4_X_BUCKET00_MAX_NUM_THREADS_PER_GROUP :: 64
CS_4_X_BUCKET01_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 240
CS_4_X_BUCKET01_MAX_NUM_THREADS_PER_GROUP :: 68
CS_4_X_BUCKET02_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 224
CS_4_X_BUCKET02_MAX_NUM_THREADS_PER_GROUP :: 72
CS_4_X_BUCKET03_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 208
CS_4_X_BUCKET03_MAX_NUM_THREADS_PER_GROUP :: 76
CS_4_X_BUCKET04_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 192
CS_4_X_BUCKET04_MAX_NUM_THREADS_PER_GROUP :: 84
CS_4_X_BUCKET05_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 176
CS_4_X_BUCKET05_MAX_NUM_THREADS_PER_GROUP :: 92
CS_4_X_BUCKET06_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 160
CS_4_X_BUCKET06_MAX_NUM_THREADS_PER_GROUP :: 100
CS_4_X_BUCKET07_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 144
CS_4_X_BUCKET07_MAX_NUM_THREADS_PER_GROUP :: 112
CS_4_X_BUCKET08_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 128
CS_4_X_BUCKET08_MAX_NUM_THREADS_PER_GROUP :: 128
CS_4_X_BUCKET09_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 112
CS_4_X_BUCKET09_MAX_NUM_THREADS_PER_GROUP :: 144
CS_4_X_BUCKET10_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 96
CS_4_X_BUCKET10_MAX_NUM_THREADS_PER_GROUP :: 168
CS_4_X_BUCKET11_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 80
CS_4_X_BUCKET11_MAX_NUM_THREADS_PER_GROUP :: 204
CS_4_X_BUCKET12_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 64
CS_4_X_BUCKET12_MAX_NUM_THREADS_PER_GROUP :: 256
CS_4_X_BUCKET13_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 48
CS_4_X_BUCKET13_MAX_NUM_THREADS_PER_GROUP :: 340
CS_4_X_BUCKET14_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 32
CS_4_X_BUCKET14_MAX_NUM_THREADS_PER_GROUP :: 512
CS_4_X_BUCKET15_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 16
CS_4_X_BUCKET15_MAX_NUM_THREADS_PER_GROUP :: 768
CS_4_X_DISPATCH_MAX_THREAD_GROUPS_IN_Z_DIMENSION :: 1
CS_4_X_RAW_UAV_BYTE_ALIGNMENT :: 256
CS_4_X_THREAD_GROUP_MAX_THREADS_PER_GROUP :: 768
CS_4_X_THREAD_GROUP_MAX_X :: 768
CS_4_X_THREAD_GROUP_MAX_Y :: 768
CS_4_X_UAV_REGISTER_COUNT :: 1
CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION :: 65535
CS_TGSM_REGISTER_COUNT :: 8192
CS_TGSM_REGISTER_READS_PER_INST :: 1
CS_TGSM_RESOURCE_REGISTER_COMPONENTS :: 1
CS_TGSM_RESOURCE_REGISTER_READ_PORTS :: 1
CS_THREADGROUPID_REGISTER_COMPONENTS :: 3
CS_THREADGROUPID_REGISTER_COUNT :: 1
CS_THREADIDINGROUPFLATTENED_REGISTER_COMPONENTS :: 1
CS_THREADIDINGROUPFLATTENED_REGISTER_COUNT :: 1
CS_THREADIDINGROUP_REGISTER_COMPONENTS :: 3
CS_THREADIDINGROUP_REGISTER_COUNT :: 1
CS_THREADID_REGISTER_COMPONENTS :: 3
CS_THREADID_REGISTER_COUNT :: 1
CS_THREAD_GROUP_MAX_THREADS_PER_GROUP :: 1024
CS_THREAD_GROUP_MAX_X :: 1024
CS_THREAD_GROUP_MAX_Y :: 1024
CS_THREAD_GROUP_MAX_Z :: 64
CS_THREAD_GROUP_MIN_X :: 1
CS_THREAD_GROUP_MIN_Y :: 1
CS_THREAD_GROUP_MIN_Z :: 1
CS_THREAD_LOCAL_TEMP_REGISTER_POOL :: 16384
DEFAULT_BLEND_FACTOR_ALPHA :: 1.0
DEFAULT_BLEND_FACTOR_BLUE :: 1.0
DEFAULT_BLEND_FACTOR_GREEN :: 1.0
DEFAULT_BLEND_FACTOR_RED :: 1.0
DEFAULT_BORDER_COLOR_COMPONENT :: 0.0
DEFAULT_DEPTH_BIAS :: 0
DEFAULT_DEPTH_BIAS_CLAMP :: 0.0
DEFAULT_MAX_ANISOTROPY :: 16
DEFAULT_MIP_LOD_BIAS :: 0.0
DEFAULT_RENDER_TARGET_ARRAY_INDEX :: 0
DEFAULT_SAMPLE_MASK :: 0xffffffff
DEFAULT_SCISSOR_ENDX :: 0
DEFAULT_SCISSOR_ENDY :: 0
DEFAULT_SCISSOR_STARTX :: 0
DEFAULT_SCISSOR_STARTY :: 0
DEFAULT_SLOPE_SCALED_DEPTH_BIAS :: 0.0
DEFAULT_STENCIL_READ_MASK :: 0xff
DEFAULT_STENCIL_REFERENCE :: 0
DEFAULT_STENCIL_WRITE_MASK :: 0xff
DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX :: 0
DEFAULT_VIEWPORT_HEIGHT :: 0
DEFAULT_VIEWPORT_MAX_DEPTH :: 0.0
DEFAULT_VIEWPORT_MIN_DEPTH :: 0.0
DEFAULT_VIEWPORT_TOPLEFTX :: 0
DEFAULT_VIEWPORT_TOPLEFTY :: 0
DEFAULT_VIEWPORT_WIDTH :: 0
DS_INPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS :: 3968
DS_INPUT_CONTROL_POINT_REGISTER_COMPONENTS :: 4
DS_INPUT_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT :: 32
DS_INPUT_CONTROL_POINT_REGISTER_COUNT :: 32
DS_INPUT_CONTROL_POINT_REGISTER_READS_PER_INST :: 2
DS_INPUT_CONTROL_POINT_REGISTER_READ_PORTS :: 1
DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENTS :: 3
DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENT_BIT_COUNT :: 32
DS_INPUT_DOMAIN_POINT_REGISTER_COUNT :: 1
DS_INPUT_DOMAIN_POINT_REGISTER_READS_PER_INST :: 2
DS_INPUT_DOMAIN_POINT_REGISTER_READ_PORTS :: 1
DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENTS :: 4
DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT :: 32
DS_INPUT_PATCH_CONSTANT_REGISTER_COUNT :: 32
DS_INPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST :: 2
DS_INPUT_PATCH_CONSTANT_REGISTER_READ_PORTS :: 1
DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS :: 1
DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT :: 32
DS_INPUT_PRIMITIVE_ID_REGISTER_COUNT :: 1
DS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST :: 2
DS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS :: 1
DS_OUTPUT_REGISTER_COMPONENTS :: 4
DS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT :: 32
DS_OUTPUT_REGISTER_COUNT :: 32
FLOAT16_FUSED_TOLERANCE_IN_ULP :: 0.6
FLOAT32_MAX :: 3.402823466e+38
FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP :: 0.6
FLOAT_TO_SRGB_EXPONENT_DENOMINATOR :: 2.4
FLOAT_TO_SRGB_EXPONENT_NUMERATOR :: 1.0
FLOAT_TO_SRGB_OFFSET :: 0.055
FLOAT_TO_SRGB_SCALE_1 :: 12.92
FLOAT_TO_SRGB_SCALE_2 :: 1.055
FLOAT_TO_SRGB_THRESHOLD :: 0.0031308
FTOI_INSTRUCTION_MAX_INPUT :: 2147483647.999
FTOI_INSTRUCTION_MIN_INPUT :: -2147483648.999
FTOU_INSTRUCTION_MAX_INPUT :: 4294967295.999
FTOU_INSTRUCTION_MIN_INPUT :: 0.0
GS_INPUT_INSTANCE_ID_READS_PER_INST :: 2
GS_INPUT_INSTANCE_ID_READ_PORTS :: 1
GS_INPUT_INSTANCE_ID_REGISTER_COMPONENTS :: 1
GS_INPUT_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT :: 32
GS_INPUT_INSTANCE_ID_REGISTER_COUNT :: 1
GS_INPUT_PRIM_CONST_REGISTER_COMPONENTS :: 1
GS_INPUT_PRIM_CONST_REGISTER_COMPONENT_BIT_COUNT :: 32
GS_INPUT_PRIM_CONST_REGISTER_COUNT :: 1
GS_INPUT_PRIM_CONST_REGISTER_READS_PER_INST :: 2
GS_INPUT_PRIM_CONST_REGISTER_READ_PORTS :: 1
GS_INPUT_REGISTER_COMPONENTS :: 4
GS_INPUT_REGISTER_COMPONENT_BIT_COUNT :: 32
GS_INPUT_REGISTER_COUNT :: 32
GS_INPUT_REGISTER_READS_PER_INST :: 2
GS_INPUT_REGISTER_READ_PORTS :: 1
GS_INPUT_REGISTER_VERTICES :: 32
GS_MAX_INSTANCE_COUNT :: 32
GS_MAX_OUTPUT_VERTEX_COUNT_ACROSS_INSTANCES :: 1024
GS_OUTPUT_ELEMENTS :: 32
GS_OUTPUT_REGISTER_COMPONENTS :: 4
GS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT :: 32
GS_OUTPUT_REGISTER_COUNT :: 32
HS_CONTROL_POINT_PHASE_INPUT_REGISTER_COUNT :: 32
HS_CONTROL_POINT_PHASE_OUTPUT_REGISTER_COUNT :: 32
HS_CONTROL_POINT_REGISTER_COMPONENTS :: 4
HS_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT :: 32
HS_CONTROL_POINT_REGISTER_READS_PER_INST :: 2
HS_CONTROL_POINT_REGISTER_READ_PORTS :: 1
HS_FORK_PHASE_INSTANCE_COUNT_UPPER_BOUND :: 0xffffffff
HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENTS :: 1
HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT :: 32
HS_INPUT_FORK_INSTANCE_ID_REGISTER_COUNT :: 1
HS_INPUT_FORK_INSTANCE_ID_REGISTER_READS_PER_INST :: 2
HS_INPUT_FORK_INSTANCE_ID_REGISTER_READ_PORTS :: 1
HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENTS :: 1
HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT :: 32
HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COUNT :: 1
HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READS_PER_INST :: 2
HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READ_PORTS :: 1
HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS :: 1
HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT :: 32
HS_INPUT_PRIMITIVE_ID_REGISTER_COUNT :: 1
HS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST :: 2
HS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS :: 1
HS_JOIN_PHASE_INSTANCE_COUNT_UPPER_BOUND :: 0xffffffff
HS_MAXTESSFACTOR_LOWER_BOUND :: 1.0
HS_MAXTESSFACTOR_UPPER_BOUND :: 64.0
HS_OUTPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS :: 3968
HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENTS :: 1
HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENT_BIT_COUNT :: 32
HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COUNT :: 1
HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READS_PER_INST :: 2
HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READ_PORTS :: 1
HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENTS :: 4
HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT :: 32
HS_OUTPUT_PATCH_CONSTANT_REGISTER_COUNT :: 32
HS_OUTPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST :: 2
HS_OUTPUT_PATCH_CONSTANT_REGISTER_READ_PORTS :: 1
HS_OUTPUT_PATCH_CONSTANT_REGISTER_SCALAR_COMPONENTS :: 128
IA_DEFAULT_INDEX_BUFFER_OFFSET_IN_BYTES :: 0
IA_DEFAULT_PRIMITIVE_TOPOLOGY :: 0
IA_DEFAULT_VERTEX_BUFFER_OFFSET_IN_BYTES :: 0
IA_INDEX_INPUT_RESOURCE_SLOT_COUNT :: 1
IA_INSTANCE_ID_BIT_COUNT :: 32
IA_INTEGER_ARITHMETIC_BIT_COUNT :: 32
IA_PATCH_MAX_CONTROL_POINT_COUNT :: 32
IA_PRIMITIVE_ID_BIT_COUNT :: 32
IA_VERTEX_ID_BIT_COUNT :: 32
IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT :: 32
IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS :: 128
IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT :: 32
INTEGER_DIVIDE_BY_ZERO_QUOTIENT :: 0xffffffff
INTEGER_DIVIDE_BY_ZERO_REMAINDER :: 0xffffffff
KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL :: 0xffffffff
KEEP_UNORDERED_ACCESS_VIEWS :: 0xffffffff
LINEAR_GAMMA :: 1.0
MAJOR_VERSION :: 11
MAX_BORDER_COLOR_COMPONENT :: 1.0
MAX_DEPTH :: 1.0
MAX_MAXANISOTROPY :: 16
MAX_MULTISAMPLE_SAMPLE_COUNT :: 32
MAX_POSITION_VALUE :: 3.402823466e+34
MAX_TEXTURE_DIMENSION_2_TO_EXP :: 17
MINOR_VERSION :: 0
MIN_BORDER_COLOR_COMPONENT :: 0.0
MIN_DEPTH :: 0.0
MIN_MAXANISOTROPY :: 0
MIP_LOD_BIAS_MAX :: 15.99
MIP_LOD_BIAS_MIN :: -16.0
MIP_LOD_FRACTIONAL_BIT_COUNT :: 8
MIP_LOD_RANGE_BIT_COUNT :: 8
MULTISAMPLE_ANTIALIAS_LINE_WIDTH :: 1.4
NONSAMPLE_FETCH_OUT_OF_RANGE_ACCESS_RESULT :: 0
PIXEL_ADDRESS_RANGE_BIT_COUNT :: 15
PRE_SCISSOR_PIXEL_ADDRESS_RANGE_BIT_COUNT :: 16
PS_CS_UAV_REGISTER_COMPONENTS :: 1
PS_CS_UAV_REGISTER_COUNT :: 8
PS_CS_UAV_REGISTER_READS_PER_INST :: 1
PS_CS_UAV_REGISTER_READ_PORTS :: 1
PS_FRONTFACING_DEFAULT_VALUE :: 0xffffffff
PS_FRONTFACING_FALSE_VALUE :: 0
PS_FRONTFACING_TRUE_VALUE :: 0xffffffff
PS_INPUT_REGISTER_COMPONENTS :: 4
PS_INPUT_REGISTER_COMPONENT_BIT_COUNT :: 32
PS_INPUT_REGISTER_COUNT :: 32
PS_INPUT_REGISTER_READS_PER_INST :: 2
PS_INPUT_REGISTER_READ_PORTS :: 1
PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT :: 0.0
PS_OUTPUT_DEPTH_REGISTER_COMPONENTS :: 1
PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT :: 32
PS_OUTPUT_DEPTH_REGISTER_COUNT :: 1
PS_OUTPUT_MASK_REGISTER_COMPONENTS :: 1
PS_OUTPUT_MASK_REGISTER_COMPONENT_BIT_COUNT :: 32
PS_OUTPUT_MASK_REGISTER_COUNT :: 1
PS_OUTPUT_REGISTER_COMPONENTS :: 4
PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT :: 32
PS_OUTPUT_REGISTER_COUNT :: 8
PS_PIXEL_CENTER_FRACTIONAL_COMPONENT :: 0.5
RAW_UAV_SRV_BYTE_ALIGNMENT :: 16
REQ_BLEND_OBJECT_COUNT_PER_DEVICE :: 4096
REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP :: 27
REQ_CONSTANT_BUFFER_ELEMENT_COUNT :: 4096
REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_DEVICE :: 4096
REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP :: 32
REQ_DRAW_VERTEX_COUNT_2_TO_EXP :: 32
REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION :: 16384
REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT :: 1024
REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT :: 4096
REQ_MAXANISOTROPY :: 16
REQ_MIP_LEVELS :: 15
REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES :: 2048
REQ_RASTERIZER_OBJECT_COUNT_PER_DEVICE :: 4096
REQ_RENDER_TO_BUFFER_WINDOW_WIDTH :: 16384
REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM :: 128
REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_B_TERM :: 0.25
REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_C_TERM :: 2048
REQ_RESOURCE_VIEW_COUNT_PER_DEVICE_2_TO_EXP :: 20
REQ_SAMPLER_OBJECT_COUNT_PER_DEVICE :: 4096
REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION :: 2048
REQ_TEXTURE1D_U_DIMENSION :: 16384
REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION :: 2048
REQ_TEXTURE2D_U_OR_V_DIMENSION :: 16384
REQ_TEXTURE3D_U_V_OR_W_DIMENSION :: 2048
REQ_TEXTURECUBE_DIMENSION :: 16384
RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL :: 0
SHADER_MAJOR_VERSION :: 5
SHADER_MAX_INSTANCES :: 65535
SHADER_MAX_INTERFACES :: 253
SHADER_MAX_INTERFACE_CALL_SITES :: 4096
SHADER_MAX_TYPES :: 65535
SHADER_MINOR_VERSION :: 0
SHIFT_INSTRUCTION_PAD_VALUE :: 0
SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT :: 5
SIMULTANEOUS_RENDER_TARGET_COUNT :: 8
SO_BUFFER_MAX_STRIDE_IN_BYTES :: 2048
SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES :: 512
SO_BUFFER_SLOT_COUNT :: 4
SO_DDI_REGISTER_INDEX_DENOTING_GAP :: 0xffffffff
SO_NO_RASTERIZED_STREAM :: 0xffffffff
SO_OUTPUT_COMPONENT_COUNT :: 128
SO_STREAM_COUNT :: 4
SPEC_DATE_DAY :: 16
SPEC_DATE_YEAR :: 2011
SPEC_VERSION :: 1.07
SRGB_GAMMA :: 2.2
SRGB_TO_FLOAT_DENOMINATOR_1 :: 12.92
SRGB_TO_FLOAT_DENOMINATOR_2 :: 1.055
SRGB_TO_FLOAT_EXPONENT :: 2.4
SRGB_TO_FLOAT_OFFSET :: 0.055
SRGB_TO_FLOAT_THRESHOLD :: 0.04045
SRGB_TO_FLOAT_TOLERANCE_IN_ULP :: 0.5
STANDARD_COMPONENT_BIT_COUNT :: 32
STANDARD_COMPONENT_BIT_COUNT_DOUBLED :: 64
STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE :: 4
STANDARD_PIXEL_COMPONENT_COUNT :: 128
STANDARD_PIXEL_ELEMENT_COUNT :: 32
STANDARD_VECTOR_SIZE :: 4
STANDARD_VERTEX_ELEMENT_COUNT :: 32
STANDARD_VERTEX_TOTAL_COMPONENT_COUNT :: 64
SUBPIXEL_FRACTIONAL_BIT_COUNT :: 8
SUBTEXEL_FRACTIONAL_BIT_COUNT :: 8
TESSELLATOR_MAX_EVEN_TESSELLATION_FACTOR :: 64
TESSELLATOR_MAX_ISOLINE_DENSITY_TESSELLATION_FACTOR :: 64
TESSELLATOR_MAX_ODD_TESSELLATION_FACTOR :: 63
TESSELLATOR_MAX_TESSELLATION_FACTOR :: 64
TESSELLATOR_MIN_EVEN_TESSELLATION_FACTOR :: 2
TESSELLATOR_MIN_ISOLINE_DENSITY_TESSELLATION_FACTOR :: 1
TESSELLATOR_MIN_ODD_TESSELLATION_FACTOR :: 1
TEXEL_ADDRESS_RANGE_BIT_COUNT :: 16
UNBOUND_MEMORY_ACCESS_RESULT :: 0
VIEWPORT_AND_SCISSORRECT_MAX_INDEX :: 15
VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE :: 16
VIEWPORT_BOUNDS_MAX :: 32767
VIEWPORT_BOUNDS_MIN :: -32768
VS_INPUT_REGISTER_COMPONENTS :: 4
VS_INPUT_REGISTER_COMPONENT_BIT_COUNT :: 32
VS_INPUT_REGISTER_COUNT :: 32
VS_INPUT_REGISTER_READS_PER_INST :: 2
VS_INPUT_REGISTER_READ_PORTS :: 1
VS_OUTPUT_REGISTER_COMPONENTS :: 4
VS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT :: 32
VS_OUTPUT_REGISTER_COUNT :: 32
WHQL_CONTEXT_COUNT_FOR_RESOURCE_LIMIT :: 10
WHQL_DRAWINDEXED_INDEX_COUNT_2_TO_EXP :: 25
WHQL_DRAW_VERTEX_COUNT_2_TO_EXP :: 25
_1_UAV_SLOT_COUNT :: 64
_2_TILED_RESOURCE_TILE_SIZE_IN_BYTES :: 65536
_4_VIDEO_DECODER_MAX_HISTOGRAM_COMPONENTS :: 4
_4_VIDEO_DECODER_HISTOGRAM_OFFSET_ALIGNMENT :: 256
_FACD3D11 :: 0x87c
APPEND_ALIGNED_ELEMENT :: 0xffffffff
FILTER_REDUCTION_TYPE_MASK :: 0x3
FILTER_REDUCTION_TYPE_SHIFT :: 7
FILTER_TYPE_MASK :: 0x3
MIN_FILTER_SHIFT :: 4
MAG_FILTER_SHIFT :: 2
MIP_FILTER_SHIFT :: 0
COMPARISON_FILTERING_BIT :: 0x80
ANISOTROPIC_FILTERING_BIT :: 0x40
SDK_VERSION :: 7
RETURN_PARAMETER_INDEX :: -1
COMPONENT_MASK :: distinct bit_set[COMPONENT_MASK_ELEMENT; u32]
COMPONENT_MASK_ELEMENT :: enum u32 {
X = 1,
Y = 2,
Z = 4,
W = 8,
}
SHADER_REQUIRES_FLAGS :: distinct bit_set[SHADER_REQUIRES_FLAG; u64]
SHADER_REQUIRES_FLAG :: enum u64 {
DOUBLES = 0,
EARLY_DEPTH_STENCIL = 1,
UAVS_AT_EVERY_STAGE = 2,
_64_UAVS = 3,
MINIMUM_PRECISION = 4,
_11_1_DOUBLE_EXTENSIONS = 5,
_11_1_SHADER_EXTENSIONS = 6,
LEVEL_9_COMPARISON_FILTERING = 7,
TILED_RESOURCES = 8,
}
SHADER_REQUIRES_DOUBLES :: SHADER_REQUIRES_FLAGS{.DOUBLES}
SHADER_REQUIRES_EARLY_DEPTH_STENCIL :: SHADER_REQUIRES_FLAGS{.EARLY_DEPTH_STENCIL}
SHADER_REQUIRES_UAVS_AT_EVERY_STAGE :: SHADER_REQUIRES_FLAGS{.UAVS_AT_EVERY_STAGE}
SHADER_REQUIRES_64_UAVS :: SHADER_REQUIRES_FLAGS{._64_UAVS}
SHADER_REQUIRES_MINIMUM_PRECISION :: SHADER_REQUIRES_FLAGS{.MINIMUM_PRECISION}
SHADER_REQUIRES_11_1_DOUBLE_EXTENSIONS :: SHADER_REQUIRES_FLAGS{._11_1_DOUBLE_EXTENSIONS}
SHADER_REQUIRES_11_1_SHADER_EXTENSIONS :: SHADER_REQUIRES_FLAGS{._11_1_SHADER_EXTENSIONS}
SHADER_REQUIRES_LEVEL_9_COMPARISON_FILTERING :: SHADER_REQUIRES_FLAGS{.LEVEL_9_COMPARISON_FILTERING}
SHADER_REQUIRES_TILED_RESOURCES :: SHADER_REQUIRES_FLAGS{.TILED_RESOURCES}
DRIVER_TYPE :: enum i32 {
UNKNOWN = 0,
HARDWARE = 1,
REFERENCE = 2,
NULL = 3,
SOFTWARE = 4,
WARP = 5,
}
FEATURE_LEVEL :: enum i32 {
_1_0_CORE = 4096,
_9_1 = 37120,
_9_2 = 37376,
_9_3 = 37632,
_10_0 = 40960,
_10_1 = 41216,
_11_0 = 45056,
_11_1 = 45312,
_12_0 = 49152,
_12_1 = 49408,
}
PRIMITIVE_TOPOLOGY :: enum i32 {
UNDEFINED = 0,
POINTLIST = 1,
LINELIST = 2,
LINESTRIP = 3,
TRIANGLELIST = 4,
TRIANGLESTRIP = 5,
LINELIST_ADJ = 10,
LINESTRIP_ADJ = 11,
TRIANGLELIST_ADJ = 12,
TRIANGLESTRIP_ADJ = 13,
_1_CONTROL_POINT_PATCHLIST = 33,
_2_CONTROL_POINT_PATCHLIST = 34,
_3_CONTROL_POINT_PATCHLIST = 35,
_4_CONTROL_POINT_PATCHLIST = 36,
_5_CONTROL_POINT_PATCHLIST = 37,
_6_CONTROL_POINT_PATCHLIST = 38,
_7_CONTROL_POINT_PATCHLIST = 39,
_8_CONTROL_POINT_PATCHLIST = 40,
_9_CONTROL_POINT_PATCHLIST = 41,
_10_CONTROL_POINT_PATCHLIST = 42,
_11_CONTROL_POINT_PATCHLIST = 43,
_12_CONTROL_POINT_PATCHLIST = 44,
_13_CONTROL_POINT_PATCHLIST = 45,
_14_CONTROL_POINT_PATCHLIST = 46,
_15_CONTROL_POINT_PATCHLIST = 47,
_16_CONTROL_POINT_PATCHLIST = 48,
_17_CONTROL_POINT_PATCHLIST = 49,
_18_CONTROL_POINT_PATCHLIST = 50,
_19_CONTROL_POINT_PATCHLIST = 51,
_20_CONTROL_POINT_PATCHLIST = 52,
_21_CONTROL_POINT_PATCHLIST = 53,
_22_CONTROL_POINT_PATCHLIST = 54,
_23_CONTROL_POINT_PATCHLIST = 55,
_24_CONTROL_POINT_PATCHLIST = 56,
_25_CONTROL_POINT_PATCHLIST = 57,
_26_CONTROL_POINT_PATCHLIST = 58,
_27_CONTROL_POINT_PATCHLIST = 59,
_28_CONTROL_POINT_PATCHLIST = 60,
_29_CONTROL_POINT_PATCHLIST = 61,
_30_CONTROL_POINT_PATCHLIST = 62,
_31_CONTROL_POINT_PATCHLIST = 63,
_32_CONTROL_POINT_PATCHLIST = 64,
}
PRIMITIVE :: enum i32 {
UNDEFINED = 0,
POINT = 1,
LINE = 2,
TRIANGLE = 3,
LINE_ADJ = 6,
TRIANGLE_ADJ = 7,
_1_CONTROL_POINT_PATCH = 8,
_2_CONTROL_POINT_PATCH = 9,
_3_CONTROL_POINT_PATCH = 10,
_4_CONTROL_POINT_PATCH = 11,
_5_CONTROL_POINT_PATCH = 12,
_6_CONTROL_POINT_PATCH = 13,
_7_CONTROL_POINT_PATCH = 14,
_8_CONTROL_POINT_PATCH = 15,
_9_CONTROL_POINT_PATCH = 16,
_10_CONTROL_POINT_PATCH = 17,
_11_CONTROL_POINT_PATCH = 18,
_12_CONTROL_POINT_PATCH = 19,
_13_CONTROL_POINT_PATCH = 20,
_14_CONTROL_POINT_PATCH = 21,
_15_CONTROL_POINT_PATCH = 22,
_16_CONTROL_POINT_PATCH = 23,
_17_CONTROL_POINT_PATCH = 24,
_18_CONTROL_POINT_PATCH = 25,
_19_CONTROL_POINT_PATCH = 26,
_20_CONTROL_POINT_PATCH = 27,
_21_CONTROL_POINT_PATCH = 28,
_22_CONTROL_POINT_PATCH = 29,
_23_CONTROL_POINT_PATCH = 30,
_24_CONTROL_POINT_PATCH = 31,
_25_CONTROL_POINT_PATCH = 32,
_26_CONTROL_POINT_PATCH = 33,
_27_CONTROL_POINT_PATCH = 34,
_28_CONTROL_POINT_PATCH = 35,
_29_CONTROL_POINT_PATCH = 36,
_30_CONTROL_POINT_PATCH = 37,
_31_CONTROL_POINT_PATCH = 38,
_32_CONTROL_POINT_PATCH = 39,
}
SRV_DIMENSION :: enum i32 {
UNKNOWN = 0,
BUFFER = 1,
TEXTURE1D = 2,
TEXTURE1DARRAY = 3,
TEXTURE2D = 4,
TEXTURE2DARRAY = 5,
TEXTURE2DMS = 6,
TEXTURE2DMSARRAY = 7,
TEXTURE3D = 8,
TEXTURECUBE = 9,
TEXTURECUBEARRAY = 10,
BUFFEREX = 11,
}
PFN_DESTRUCTION_CALLBACK :: #type proc "c" (a0: rawptr)
ID3DDestructionNotifier_UUID_STRING :: "A06EB39A-50DA-425B-8C31-4EECD6C270F3"
ID3DDestructionNotifier_UUID := &IID{0xA06EB39A, 0x50DA, 0x425B, {0x8C, 0x31, 0x4E, 0xEC, 0xD6, 0xC2, 0x70, 0xF3}}
ID3DDestructionNotifier :: struct #raw_union {
#subtype iunknown: IUnknown,
using id3ddestructionnotifier_vtable: ^ID3DDestructionNotifier_VTable,
}
ID3DDestructionNotifier_VTable :: struct {
using iunknown_vtable: IUnknown_VTable,
RegisterDestructionCallback: proc "system" (this: ^ID3DDestructionNotifier, callbackFn: PFN_DESTRUCTION_CALLBACK, pData: rawptr, pCallbackID: ^u32) -> HRESULT,
UnregisterDestructionCallback: proc "system" (this: ^ID3DDestructionNotifier, callbackID: u32) -> HRESULT,
}
SHADER_VARIABLE_CLASS :: enum i32 {
SCALAR = 0,
VECTOR = 1,
MATRIX_ROWS = 2,
MATRIX_COLUMNS = 3,
OBJECT = 4,
STRUCT = 5,
INTERFACE_CLASS = 6,
INTERFACE_POINTER = 7,
}
SHADER_VARIABLE_FLAGS :: distinct bit_set[SHADER_VARIABLE_FLAG; u32]
SHADER_VARIABLE_FLAG :: enum u32 {
USERPACKED = 0,
USED = 1,
INTERFACE_POINTER = 2,
INTERFACE_PARAMETER = 3,
}
SHADER_VARIABLE_TYPE :: enum i32 {
VOID = 0,
BOOL = 1,
INT = 2,
FLOAT = 3,
STRING = 4,
TEXTURE = 5,
TEXTURE1D = 6,
TEXTURE2D = 7,
TEXTURE3D = 8,
TEXTURECUBE = 9,
SAMPLER = 10,
SAMPLER1D = 11,
SAMPLER2D = 12,
SAMPLER3D = 13,
SAMPLERCUBE = 14,
PIXELSHADER = 15,
VERTEXSHADER = 16,
PIXELFRAGMENT = 17,
VERTEXFRAGMENT = 18,
UINT = 19,
UINT8 = 20,
GEOMETRYSHADER = 21,
RASTERIZER = 22,
DEPTHSTENCIL = 23,
BLEND = 24,
BUFFER = 25,
CBUFFER = 26,
TBUFFER = 27,
TEXTURE1DARRAY = 28,
TEXTURE2DARRAY = 29,
RENDERTARGETVIEW = 30,
DEPTHSTENCILVIEW = 31,
TEXTURE2DMS = 32,
TEXTURE2DMSARRAY = 33,
TEXTURECUBEARRAY = 34,
HULLSHADER = 35,
DOMAINSHADER = 36,
INTERFACE_POINTER = 37,
COMPUTESHADER = 38,
DOUBLE = 39,
RWTEXTURE1D = 40,
RWTEXTURE1DARRAY = 41,
RWTEXTURE2D = 42,
RWTEXTURE2DARRAY = 43,
RWTEXTURE3D = 44,
RWBUFFER = 45,
BYTEADDRESS_BUFFER = 46,
RWBYTEADDRESS_BUFFER = 47,
STRUCTURED_BUFFER = 48,
RWSTRUCTURED_BUFFER = 49,
APPEND_STRUCTURED_BUFFER = 50,
CONSUME_STRUCTURED_BUFFER = 51,
MIN8FLOAT = 52,
MIN10FLOAT = 53,
MIN16FLOAT = 54,
MIN12INT = 55,
MIN16INT = 56,
MIN16UINT = 57,
}
SHADER_INPUT_FLAGS :: distinct bit_set[SHADER_INPUT_FLAG; u32]
SHADER_INPUT_FLAG :: enum u32 {
USERPACKED = 0,
COMPARISON_SAMPLER = 1,
TEXTURE_COMPONENT_0 = 2,
TEXTURE_COMPONENT_1 = 3,
TEXTURE_COMPONENTS = 0xc,
UNUSED = 4,
}
SHADER_INPUT_FLAG_USERPACKED :: SHADER_INPUT_FLAGS{.USERPACKED}
SHADER_INPUT_FLAG_COMPARISON_SAMPLER :: SHADER_INPUT_FLAGS{.COMPARISON_SAMPLER}
SHADER_INPUT_FLAG_TEXTURE_COMPONENT_0 :: SHADER_INPUT_FLAGS{.TEXTURE_COMPONENT_0}
SHADER_INPUT_FLAG_TEXTURE_COMPONENT_1 :: SHADER_INPUT_FLAGS{.TEXTURE_COMPONENT_1}
SHADER_INPUT_FLAG_TEXTURE_COMPONENTS :: SHADER_INPUT_FLAGS{.TEXTURE_COMPONENT_0, .TEXTURE_COMPONENT_1}
SHADER_INPUT_FLAG_UNUSED :: SHADER_INPUT_FLAGS{.UNUSED}
SHADER_INPUT_TYPE :: enum i32 {
CBUFFER = 0,
TBUFFER = 1,
TEXTURE = 2,
SAMPLER = 3,
UAV_RWTYPED = 4,
STRUCTURED = 5,
UAV_RWSTRUCTURED = 6,
BYTEADDRESS = 7,
UAV_RWBYTEADDRESS = 8,
UAV_APPEND_STRUCTURED = 9,
UAV_CONSUME_STRUCTURED = 10,
UAV_RWSTRUCTURED_WITH_COUNTER = 11,
RTACCELERATIONSTRUCTURE = 12,
UAV_FEEDBACKTEXTURE = 13,
}
SHADER_CBUFFER_FLAGS :: distinct bit_set[SHADER_CBUFFER_FLAG; u32]
SHADER_CBUFFER_FLAG :: enum u32 {
USERPACKED = 0,
}
CBUFFER_TYPE :: enum i32 {
CBUFFER = 0,
TBUFFER = 1,
INTERFACE_POINTERS = 2,
RESOURCE_BIND_INFO = 3,
}
NAME :: enum i32 {
UNDEFINED = 0,
POSITION = 1,
CLIP_DISTANCE = 2,
CULL_DISTANCE = 3,
RENDER_TARGET_ARRAY_INDEX = 4,
VIEWPORT_ARRAY_INDEX = 5,
VERTEX_ID = 6,
PRIMITIVE_ID = 7,
INSTANCE_ID = 8,
IS_FRONT_FACE = 9,
SAMPLE_INDEX = 10,
FINAL_QUAD_EDGE_TESSFACTOR = 11,
FINAL_QUAD_INSIDE_TESSFACTOR = 12,
FINAL_TRI_EDGE_TESSFACTOR = 13,
FINAL_TRI_INSIDE_TESSFACTOR = 14,
FINAL_LINE_DETAIL_TESSFACTOR = 15,
FINAL_LINE_DENSITY_TESSFACTOR = 16,
BARYCENTRICS = 23,
SHADINGRATE = 24,
CULLPRIMITIVE = 25,
TARGET = 64,
DEPTH = 65,
COVERAGE = 66,
DEPTH_GREATER_EQUAL = 67,
DEPTH_LESS_EQUAL = 68,
STENCIL_REF = 69,
INNER_COVERAGE = 70,
}
RESOURCE_RETURN_TYPE :: enum i32 {
UNORM = 1,
SNORM = 2,
SINT = 3,
UINT = 4,
FLOAT = 5,
MIXED = 6,
DOUBLE = 7,
CONTINUED = 8,
}
REGISTER_COMPONENT_TYPE :: enum i32 {
UNKNOWN = 0,
UINT32 = 1,
SINT32 = 2,
FLOAT32 = 3,
}
TESSELLATOR_DOMAIN :: enum i32 {
UNDEFINED = 0,
ISOLINE = 1,
TRI = 2,
QUAD = 3,
}
TESSELLATOR_PARTITIONING :: enum i32 {
UNDEFINED = 0,
INTEGER = 1,
POW2 = 2,
FRACTIONAL_ODD = 3,
FRACTIONAL_EVEN = 4,
}
TESSELLATOR_OUTPUT_PRIMITIVE :: enum i32 {
UNDEFINED = 0,
POINT = 1,
LINE = 2,
TRIANGLE_CW = 3,
TRIANGLE_CCW = 4,
}
MIN_PRECISION :: enum i32 {
DEFAULT = 0,
FLOAT_16 = 1,
FLOAT_2_8 = 2,
RESERVED = 3,
SINT_16 = 4,
UINT_16 = 5,
ANY_16 = 240,
ANY_10 = 241,
}
INTERPOLATION_MODE :: enum i32 {
UNDEFINED = 0,
CONSTANT = 1,
LINEAR = 2,
LINEAR_CENTROID = 3,
LINEAR_NOPERSPECTIVE = 4,
LINEAR_NOPERSPECTIVE_CENTROID = 5,
LINEAR_SAMPLE = 6,
LINEAR_NOPERSPECTIVE_SAMPLE = 7,
}
PARAMETER_FLAGS :: distinct bit_set[PARAMETER_FLAG; u32]
PARAMETER_FLAG :: enum u32 {
IN = 0,
OUT = 1,
}
CDEFAULT :: struct {
_: u8,
}
INPUT_CLASSIFICATION :: enum i32 {
VERTEX_DATA = 0,
INSTANCE_DATA = 1,
}
INPUT_ELEMENT_DESC :: struct {
SemanticName: LPCSTR,
SemanticIndex: u32,
Format: dxgi.FORMAT,
InputSlot: u32,
AlignedByteOffset: u32,
InputSlotClass: INPUT_CLASSIFICATION,
InstanceDataStepRate: u32,
}
FILL_MODE :: enum i32 {
WIREFRAME = 2,
SOLID = 3,
}
CULL_MODE :: enum i32 {
NONE = 1,
FRONT = 2,
BACK = 3,
}
SO_DECLARATION_ENTRY :: struct {
Stream: u32,
SemanticName: LPCSTR,
SemanticIndex: u32,
StartComponent: u8,
ComponentCount: u8,
OutputSlot: u8,
}
VIEWPORT :: struct {
TopLeftX: f32,
TopLeftY: f32,
Width: f32,
Height: f32,
MinDepth: f32,
MaxDepth: f32,
}
DRAW_INSTANCED_INDIRECT_ARGS :: struct {
VertexCountPerInstance: u32,
InstanceCount: u32,
StartVertexLocation: u32,
StartInstanceLocation: u32,
}
DRAW_INDEXED_INSTANCED_INDIRECT_ARGS :: struct {
IndexCountPerInstance: u32,
InstanceCount: u32,
StartIndexLocation: u32,
BaseVertexLocation: i32,
StartInstanceLocation: u32,
}
RESOURCE_DIMENSION :: enum i32 {
UNKNOWN = 0,
BUFFER = 1,
TEXTURE1D = 2,
TEXTURE2D = 3,
TEXTURE3D = 4,
}
DSV_DIMENSION :: enum i32 {
UNKNOWN = 0,
TEXTURE1D = 1,
TEXTURE1DARRAY = 2,
TEXTURE2D = 3,
TEXTURE2DARRAY = 4,
TEXTURE2DMS = 5,
TEXTURE2DMSARRAY = 6,
}
RTV_DIMENSION :: enum i32 {
UNKNOWN = 0,
BUFFER = 1,
TEXTURE1D = 2,
TEXTURE1DARRAY = 3,
TEXTURE2D = 4,
TEXTURE2DARRAY = 5,
TEXTURE2DMS = 6,
TEXTURE2DMSARRAY = 7,
TEXTURE3D = 8,
}
UAV_DIMENSION :: enum i32 {
UNKNOWN = 0,
BUFFER = 1,
TEXTURE1D = 2,
TEXTURE1DARRAY = 3,
TEXTURE2D = 4,
TEXTURE2DARRAY = 5,
TEXTURE3D = 8,
}
USAGE :: enum i32 {
DEFAULT = 0,
IMMUTABLE = 1,
DYNAMIC = 2,
STAGING = 3,
}
BIND_FLAGS :: distinct bit_set[BIND_FLAG; u32]
BIND_FLAG :: enum u32 {
VERTEX_BUFFER = 0,
INDEX_BUFFER = 1,
CONSTANT_BUFFER = 2,
SHADER_RESOURCE = 3,
STREAM_OUTPUT = 4,
RENDER_TARGET = 5,
DEPTH_STENCIL = 6,
UNORDERED_ACCESS = 7,
DECODER = 9,
VIDEO_ENCODER = 10,
}
CPU_ACCESS_FLAGS :: distinct bit_set[CPU_ACCESS_FLAG; u32]
CPU_ACCESS_FLAG :: enum u32 {
WRITE = 16,
READ = 17,
}
RESOURCE_MISC_FLAGS :: distinct bit_set[RESOURCE_MISC_FLAG; u32]
RESOURCE_MISC_FLAG :: enum u32 {
GENERATE_MIPS = 0,
SHARED = 1,
TEXTURECUBE = 2,
DRAWINDIRECT_ARGS = 4,
BUFFER_ALLOW_RAW_VIEWS = 5,
BUFFER_STRUCTURED = 6,
RESOURCE_CLAMP = 7,
SHARED_KEYEDMUTEX = 8,
GDI_COMPATIBLE = 9,
SHARED_NTHANDLE = 11,
RESTRICTED_CONTENT = 12,
RESTRICT_SHARED_RESOURCE = 13,
RESTRICT_SHARED_RESOURCE_DRIVER = 14,
GUARDED = 15,
TILE_POOL = 17,
TILED = 18,
HW_PROTECTED = 19,
}
MAP :: enum i32 {
READ = 1,
WRITE = 2,
READ_WRITE = 3,
WRITE_DISCARD = 4,
WRITE_NO_OVERWRITE = 5,
}
MAP_FLAGS :: distinct bit_set[MAP_FLAG; u32]
MAP_FLAG :: enum u32 {
DO_NOT_WAIT = 20,
}
RAISE_FLAGS :: distinct bit_set[RAISE_FLAG; u32]
RAISE_FLAG :: enum u32 {
DRIVER_INTERNAL_ERROR = 0,
}
CLEAR_FLAGS :: distinct bit_set[CLEAR_FLAG; u32]
CLEAR_FLAG :: enum u32 {
DEPTH = 0,
STENCIL = 1,
}
CRECT :: struct {
using d3d11_rect: RECT,
}
BOX :: struct {
left: u32,
top: u32,
front: u32,
right: u32,
bottom: u32,
back: u32,
}
CBOX :: struct {
using d3d11_box: BOX,
}
IDeviceChild_UUID_STRING :: "1841E5C8-16B0-489B-BCC8-44CFB0D5DEAE"
IDeviceChild_UUID := &IID{0x1841E5C8, 0x16B0, 0x489B, {0xBC, 0xC8, 0x44, 0xCF, 0xB0, 0xD5, 0xDE, 0xAE}}
IDeviceChild :: struct #raw_union {
#subtype iunknown: IUnknown,
using id3d11devicechild_vtable: ^IDeviceChild_VTable,
}
IDeviceChild_VTable :: struct {
using iunknown_vtable: IUnknown_VTable,
GetDevice: proc "system" (this: ^IDeviceChild, ppDevice: ^^IDevice),
GetPrivateData: proc "system" (this: ^IDeviceChild, guid: ^GUID, pDataSize: ^u32, pData: rawptr) -> HRESULT,
SetPrivateData: proc "system" (this: ^IDeviceChild, guid: ^GUID, DataSize: u32, pData: rawptr) -> HRESULT,
SetPrivateDataInterface: proc "system" (this: ^IDeviceChild, guid: ^GUID, pData: ^IUnknown) -> HRESULT,
}
COMPARISON_FUNC :: enum i32 {
NEVER = 1,
LESS = 2,
EQUAL = 3,
LESS_EQUAL = 4,
GREATER = 5,
NOT_EQUAL = 6,
GREATER_EQUAL = 7,
ALWAYS = 8,
}
DEPTH_WRITE_MASK :: enum i32 {
ZERO = 0,
ALL = 1,
}
STENCIL_OP :: enum i32 {
KEEP = 1,
ZERO = 2,
REPLACE = 3,
INCR_SAT = 4,
DECR_SAT = 5,
INVERT = 6,
INCR = 7,
DECR = 8,
}
DEPTH_STENCILOP_DESC :: struct {
StencilFailOp: STENCIL_OP,
StencilDepthFailOp: STENCIL_OP,
StencilPassOp: STENCIL_OP,
StencilFunc: COMPARISON_FUNC,
}
DEPTH_STENCIL_DESC :: struct {
DepthEnable: BOOL,
DepthWriteMask: DEPTH_WRITE_MASK,
DepthFunc: COMPARISON_FUNC,
StencilEnable: BOOL,
StencilReadMask: u8,
StencilWriteMask: u8,
FrontFace: DEPTH_STENCILOP_DESC,
BackFace: DEPTH_STENCILOP_DESC,
}
CDEPTH_STENCIL_DESC :: struct {
using d3d11_depth_stencil_desc: DEPTH_STENCIL_DESC,
}
IDepthStencilState_UUID_STRING :: "03823EFB-8D8F-4E1C-9AA2-F64BB2CBFDF1"
IDepthStencilState_UUID := &IID{0x03823EFB, 0x8D8F, 0x4E1C, {0x9A, 0xA2, 0xF6, 0x4B, 0xB2, 0xCB, 0xFD, 0xF1}}
IDepthStencilState :: struct #raw_union {
#subtype id3d11devicechild: IDeviceChild,
using id3d11depthstencilstate_vtable: ^IDepthStencilState_VTable,
}
IDepthStencilState_VTable :: struct {
using id3d11devicechild_vtable: IDeviceChild_VTable,
GetDesc: proc "system" (this: ^IDepthStencilState, pDesc: ^DEPTH_STENCIL_DESC),
}
BLEND :: enum i32 {
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,
}
BLEND_OP :: enum i32 {
ADD = 1,
SUBTRACT = 2,
REV_SUBTRACT = 3,
MIN = 4,
MAX = 5,
}
COLOR_WRITE_ENABLE_MASK :: distinct bit_set[COLOR_WRITE_ENABLE; u32]
COLOR_WRITE_ENABLE_RED :: COLOR_WRITE_ENABLE_MASK{.RED}
COLOR_WRITE_ENABLE_GREEN :: COLOR_WRITE_ENABLE_MASK{.GREEN}
COLOR_WRITE_ENABLE_BLUE :: COLOR_WRITE_ENABLE_MASK{.BLUE}
COLOR_WRITE_ENABLE_ALPHA :: COLOR_WRITE_ENABLE_MASK{.ALPHA}
COLOR_WRITE_ENABLE_ALL :: COLOR_WRITE_ENABLE_MASK{.RED, .GREEN, .BLUE, .ALPHA}
COLOR_WRITE_ENABLE :: enum i32 {
RED = 0,
GREEN = 1,
BLUE = 2,
ALPHA = 3,
}
RENDER_TARGET_BLEND_DESC :: struct {
BlendEnable: BOOL,
SrcBlend: BLEND,
DestBlend: BLEND,
BlendOp: BLEND_OP,
SrcBlendAlpha: BLEND,
DestBlendAlpha: BLEND,
BlendOpAlpha: BLEND_OP,
RenderTargetWriteMask: u8,
}
BLEND_DESC :: struct {
AlphaToCoverageEnable: BOOL,
IndependentBlendEnable: BOOL,
RenderTarget: [8]RENDER_TARGET_BLEND_DESC,
}
CBLEND_DESC :: struct {
using d3d11_blend_desc: BLEND_DESC,
}
IBlendState_UUID_STRING :: "75B68FAA-347D-4159-8F45-A0640F01CD9A"
IBlendState_UUID := &IID{0x75B68FAA, 0x347D, 0x4159, {0x8F, 0x45, 0xA0, 0x64, 0x0F, 0x01, 0xCD, 0x9A}}
IBlendState :: struct #raw_union {
#subtype id3d11devicechild: IDeviceChild,
using id3d11blendstate_vtable: ^IBlendState_VTable,
}
IBlendState_VTable :: struct {
using id3d11devicechild_vtable: IDeviceChild_VTable,
GetDesc: proc "system" (this: ^IBlendState, pDesc: ^BLEND_DESC),
}
RASTERIZER_DESC :: struct {
FillMode: FILL_MODE,
CullMode: CULL_MODE,
FrontCounterClockwise: BOOL,
DepthBias: i32,
DepthBiasClamp: f32,
SlopeScaledDepthBias: f32,
DepthClipEnable: BOOL,
ScissorEnable: BOOL,
MultisampleEnable: BOOL,
AntialiasedLineEnable: BOOL,
}
CRASTERIZER_DESC :: struct {
using d3d11_rasterizer_desc: RASTERIZER_DESC,
}
IRasterizerState_UUID_STRING :: "9BB4AB81-AB1A-4D8F-B506-FC04200B6EE7"
IRasterizerState_UUID := &IID{0x9BB4AB81, 0xAB1A, 0x4D8F, {0xB5, 0x06, 0xFC, 0x04, 0x20, 0x0B, 0x6E, 0xE7}}
IRasterizerState :: struct #raw_union {
#subtype id3d11devicechild: IDeviceChild,
using id3d11rasterizerstate_vtable: ^IRasterizerState_VTable,
}
IRasterizerState_VTable :: struct {
using id3d11devicechild_vtable: IDeviceChild_VTable,
GetDesc: proc "system" (this: ^IRasterizerState, pDesc: ^RASTERIZER_DESC),
}
SUBRESOURCE_DATA :: struct {
pSysMem: rawptr,
SysMemPitch: u32,
SysMemSlicePitch: u32,
}
MAPPED_SUBRESOURCE :: struct {
pData: rawptr,
RowPitch: u32,
DepthPitch: u32,
}
IResource_UUID_STRING :: "DC8E63F3-D12B-4952-B47B-5E45026A862D"
IResource_UUID := &IID{0xDC8E63F3, 0xD12B, 0x4952, {0xB4, 0x7B, 0x5E, 0x45, 0x02, 0x6A, 0x86, 0x2D}}
IResource :: struct #raw_union {
#subtype id3d11devicechild: IDeviceChild,
using id3d11resource_vtable: ^IResource_VTable,
}
IResource_VTable :: struct {
using id3d11devicechild_vtable: IDeviceChild_VTable,
GetType: proc "system" (this: ^IResource, pResourceDimension: ^RESOURCE_DIMENSION),
SetEvictionPriority: proc "system" (this: ^IResource, EvictionPriority: u32),
GetEvictionPriority: proc "system" (this: ^IResource) -> u32,
}
BUFFER_DESC :: struct {
ByteWidth: u32,
Usage: USAGE,
BindFlags: BIND_FLAGS,
CPUAccessFlags: CPU_ACCESS_FLAGS,
MiscFlags: RESOURCE_MISC_FLAGS,
StructureByteStride: u32,
}
CBUFFER_DESC :: struct {
using d3d11_buffer_desc: BUFFER_DESC,
}
IBuffer_UUID_STRING :: "48570B85-D1EE-4FCD-A250-EB350722B037"
IBuffer_UUID := &IID{0x48570B85, 0xD1EE, 0x4FCD, {0xA2, 0x50, 0xEB, 0x35, 0x07, 0x22, 0xB0, 0x37}}
IBuffer :: struct #raw_union {
#subtype id3d11resource: IResource,
using id3d11buffer_vtable: ^IBuffer_VTable,
}
IBuffer_VTable :: struct {
using id3d11resource_vtable: IResource_VTable,
GetDesc: proc "system" (this: ^IBuffer, pDesc: ^BUFFER_DESC),
}
TEXTURE1D_DESC :: struct {
Width: u32,
MipLevels: u32,
ArraySize: u32,
Format: dxgi.FORMAT,
Usage: USAGE,
BindFlags: BIND_FLAGS,
CPUAccessFlags: CPU_ACCESS_FLAGS,
MiscFlags: RESOURCE_MISC_FLAGS,
}
CTEXTURE1D_DESC :: struct {
using d3d11_texture1d_desc: TEXTURE1D_DESC,
}
ITexture1D_UUID_STRING :: "F8FB5C27-C6B3-4F75-A4C8-439AF2EF564C"
ITexture1D_UUID := &IID{0xF8FB5C27, 0xC6B3, 0x4F75, {0xA4, 0xC8, 0x43, 0x9A, 0xF2, 0xEF, 0x56, 0x4C}}
ITexture1D :: struct #raw_union {
#subtype id3d11resource: IResource,
using id3d11texture1d_vtable: ^ITexture1D_VTable,
}
ITexture1D_VTable :: struct {
using id3d11resource_vtable: IResource_VTable,
GetDesc: proc "system" (this: ^ITexture1D, pDesc: ^TEXTURE1D_DESC),
}
TEXTURE2D_DESC :: struct {
Width: u32,
Height: u32,
MipLevels: u32,
ArraySize: u32,
Format: dxgi.FORMAT,
SampleDesc: dxgi.SAMPLE_DESC,
Usage: USAGE,
BindFlags: BIND_FLAGS,
CPUAccessFlags: CPU_ACCESS_FLAGS,
MiscFlags: RESOURCE_MISC_FLAGS,
}
CTEXTURE2D_DESC :: struct {
using d3d11_texture2d_desc: TEXTURE2D_DESC,
}
ITexture2D_UUID_STRING :: "6F15AAF2-D208-4E89-9AB4-489535D34F9C"
ITexture2D_UUID := &IID{0x6F15AAF2, 0xD208, 0x4E89, {0x9A, 0xB4, 0x48, 0x95, 0x35, 0xD3, 0x4F, 0x9C}}
ITexture2D :: struct #raw_union {
#subtype id3d11resource: IResource,
using id3d11texture2d_vtable: ^ITexture2D_VTable,
}
ITexture2D_VTable :: struct {
using id3d11resource_vtable: IResource_VTable,
GetDesc: proc "system" (this: ^ITexture2D, pDesc: ^TEXTURE2D_DESC),
}
TEXTURE3D_DESC :: struct {
Width: u32,
Height: u32,
Depth: u32,
MipLevels: u32,
Format: dxgi.FORMAT,
Usage: USAGE,
BindFlags: BIND_FLAGS,
CPUAccessFlags: CPU_ACCESS_FLAGS,
MiscFlags: RESOURCE_MISC_FLAGS,
}
CTEXTURE3D_DESC :: struct {
using d3d11_texture3d_desc: TEXTURE3D_DESC,
}
ITexture3D_UUID_STRING :: "037E866E-F56D-4357-A8AF-9DABBE6E250E"
ITexture3D_UUID := &IID{0x037E866E, 0xF56D, 0x4357, {0xA8, 0xAF, 0x9D, 0xAB, 0xBE, 0x6E, 0x25, 0x0E}}
ITexture3D :: struct #raw_union {
#subtype id3d11resource: IResource,
using id3d11texture3d_vtable: ^ITexture3D_VTable,
}
ITexture3D_VTable :: struct {
using id3d11resource_vtable: IResource_VTable,
GetDesc: proc "system" (this: ^ITexture3D, pDesc: ^TEXTURE3D_DESC),
}
TEXTURECUBE_FACE :: enum i32 {
POSITIVE_X = 0,
NEGATIVE_X = 1,
POSITIVE_Y = 2,
NEGATIVE_Y = 3,
POSITIVE_Z = 4,
NEGATIVE_Z = 5,
}
IView_UUID_STRING :: "839D1216-BB2E-412B-B7F4-A9DBEBE08ED1"
IView_UUID := &IID{0x839D1216, 0xBB2E, 0x412B, {0xB7, 0xF4, 0xA9, 0xDB, 0xEB, 0xE0, 0x8E, 0xD1}}
IView :: struct #raw_union {
#subtype id3d11devicechild: IDeviceChild,
using id3d11view_vtable: ^IView_VTable,
}
IView_VTable :: struct {
using id3d11devicechild_vtable: IDeviceChild_VTable,
GetResource: proc "system" (this: ^IView, ppResource: ^^IResource),
}
BUFFER_SRV :: struct {
using _: struct #raw_union {
FirstElement: u32,
ElementOffset: u32,
},
using _: struct #raw_union {
NumElements: u32,
ElementWidth: u32,
},
}
BUFFEREX_SRV_FLAGS :: distinct bit_set[BUFFEREX_SRV_FLAG; u32]
BUFFEREX_SRV_FLAG :: enum u32 {
RAW = 0,
}
BUFFEREX_SRV :: struct {
FirstElement: u32,
NumElements: u32,
Flags: BUFFEREX_SRV_FLAGS,
}
TEX1D_SRV :: struct {
MostDetailedMip: u32,
MipLevels: u32,
}
TEX1D_ARRAY_SRV :: struct {
MostDetailedMip: u32,
MipLevels: u32,
FirstArraySlice: u32,
ArraySize: u32,
}
TEX2D_SRV :: struct {
MostDetailedMip: u32,
MipLevels: u32,
}
TEX2D_ARRAY_SRV :: struct {
MostDetailedMip: u32,
MipLevels: u32,
FirstArraySlice: u32,
ArraySize: u32,
}
TEX3D_SRV :: struct {
MostDetailedMip: u32,
MipLevels: u32,
}
TEXCUBE_SRV :: struct {
MostDetailedMip: u32,
MipLevels: u32,
}
TEXCUBE_ARRAY_SRV :: struct {
MostDetailedMip: u32,
MipLevels: u32,
First2DArrayFace: u32,
NumCubes: u32,
}
TEX2DMS_SRV :: struct {
UnusedField_NothingToDefine: u32,
}
TEX2DMS_ARRAY_SRV :: struct {
FirstArraySlice: u32,
ArraySize: u32,
}
SHADER_RESOURCE_VIEW_DESC :: struct {
Format: dxgi.FORMAT,
ViewDimension: SRV_DIMENSION,
using _: struct #raw_union {
Buffer: BUFFER_SRV,
Texture1D: TEX1D_SRV,
Texture1DArray: TEX1D_ARRAY_SRV,
Texture2D: TEX2D_SRV,
Texture2DArray: TEX2D_ARRAY_SRV,
Texture2DMS: TEX2DMS_SRV,
Texture2DMSArray: TEX2DMS_ARRAY_SRV,
Texture3D: TEX3D_SRV,
TextureCube: TEXCUBE_SRV,
TextureCubeArray: TEXCUBE_ARRAY_SRV,
BufferEx: BUFFEREX_SRV,
},
}
CSHADER_RESOURCE_VIEW_DESC :: struct {
using d3d11_shader_resource_view_desc: SHADER_RESOURCE_VIEW_DESC,
}
IShaderResourceView_UUID_STRING :: "B0E06FE0-8192-4E1A-B1CA-36D7414710B2"
IShaderResourceView_UUID := &IID{0xB0E06FE0, 0x8192, 0x4E1A, {0xB1, 0xCA, 0x36, 0xD7, 0x41, 0x47, 0x10, 0xB2}}
IShaderResourceView :: struct #raw_union {
#subtype id3d11view: IView,
using id3d11shaderresourceview_vtable: ^IShaderResourceView_VTable,
}
IShaderResourceView_VTable :: struct {
using id3d11view_vtable: IView_VTable,
GetDesc: proc "system" (this: ^IShaderResourceView, pDesc: ^SHADER_RESOURCE_VIEW_DESC),
}
BUFFER_RTV :: struct {
using _: struct #raw_union {
FirstElement: u32,
ElementOffset: u32,
},
using _: struct #raw_union {
NumElements: u32,
ElementWidth: u32,
},
}
TEX1D_RTV :: struct {
MipSlice: u32,
}
TEX1D_ARRAY_RTV :: struct {
MipSlice: u32,
FirstArraySlice: u32,
ArraySize: u32,
}
TEX2D_RTV :: struct {
MipSlice: u32,
}
TEX2DMS_RTV :: struct {
UnusedField_NothingToDefine: u32,
}
TEX2D_ARRAY_RTV :: struct {
MipSlice: u32,
FirstArraySlice: u32,
ArraySize: u32,
}
TEX2DMS_ARRAY_RTV :: struct {
FirstArraySlice: u32,
ArraySize: u32,
}
TEX3D_RTV :: struct {
MipSlice: u32,
FirstWSlice: u32,
WSize: u32,
}
RENDER_TARGET_VIEW_DESC :: struct {
Format: dxgi.FORMAT,
ViewDimension: RTV_DIMENSION,
using _: struct #raw_union {
Buffer: BUFFER_RTV,
Texture1D: TEX1D_RTV,
Texture1DArray: TEX1D_ARRAY_RTV,
Texture2D: TEX2D_RTV,
Texture2DArray: TEX2D_ARRAY_RTV,
Texture2DMS: TEX2DMS_RTV,
Texture2DMSArray: TEX2DMS_ARRAY_RTV,
Texture3D: TEX3D_RTV,
},
}
CRENDER_TARGET_VIEW_DESC :: struct {
using d3d11_render_target_view_desc: RENDER_TARGET_VIEW_DESC,
}
IRenderTargetView_UUID_STRING :: "DFDBA067-0B8D-4865-875B-D7B4516CC164"
IRenderTargetView_UUID := &IID{0xDFDBA067, 0x0B8D, 0x4865, {0x87, 0x5B, 0xD7, 0xB4, 0x51, 0x6C, 0xC1, 0x64}}
IRenderTargetView :: struct #raw_union {
#subtype id3d11view: IView,
using id3d11rendertargetview_vtable: ^IRenderTargetView_VTable,
}
IRenderTargetView_VTable :: struct {
using id3d11view_vtable: IView_VTable,
GetDesc: proc "system" (this: ^IRenderTargetView, pDesc: ^RENDER_TARGET_VIEW_DESC),
}
CVIEWPORT :: struct {
using d3d11_viewport: VIEWPORT,
}
TEX1D_DSV :: struct {
MipSlice: u32,
}
TEX1D_ARRAY_DSV :: struct {
MipSlice: u32,
FirstArraySlice: u32,
ArraySize: u32,
}
TEX2D_DSV :: struct {
MipSlice: u32,
}
TEX2D_ARRAY_DSV :: struct {
MipSlice: u32,
FirstArraySlice: u32,
ArraySize: u32,
}
TEX2DMS_DSV :: struct {
UnusedField_NothingToDefine: u32,
}
TEX2DMS_ARRAY_DSV :: struct {
FirstArraySlice: u32,
ArraySize: u32,
}
DSV_FLAGS :: distinct bit_set[DSV_FLAG; u32]
DSV_FLAG :: enum u32 {
DEPTH = 0,
STENCIL = 1,
}
DEPTH_STENCIL_VIEW_DESC :: struct {
Format: dxgi.FORMAT,
ViewDimension: DSV_DIMENSION,
Flags: DSV_FLAGS,
using _: struct #raw_union {
Texture1D: TEX1D_DSV,
Texture1DArray: TEX1D_ARRAY_DSV,
Texture2D: TEX2D_DSV,
Texture2DArray: TEX2D_ARRAY_DSV,
Texture2DMS: TEX2DMS_DSV,
Texture2DMSArray: TEX2DMS_ARRAY_DSV,
},
}
CDEPTH_STENCIL_VIEW_DESC :: struct {
using d3d11_depth_stencil_view_desc: DEPTH_STENCIL_VIEW_DESC,
}
IDepthStencilView_UUID_STRING :: "9FDAC92A-1876-48C3-AFAD-25B94F84A9B6"
IDepthStencilView_UUID := &IID{0x9FDAC92A, 0x1876, 0x48C3, {0xAF, 0xAD, 0x25, 0xB9, 0x4F, 0x84, 0xA9, 0xB6}}
IDepthStencilView :: struct #raw_union {
#subtype id3d11view: IView,
using id3d11depthstencilview_vtable: ^IDepthStencilView_VTable,
}
IDepthStencilView_VTable :: struct {
using id3d11view_vtable: IView_VTable,
GetDesc: proc "system" (this: ^IDepthStencilView, pDesc: ^DEPTH_STENCIL_VIEW_DESC),
}
BUFFER_UAV_FLAGS :: distinct bit_set[BUFFER_UAV_FLAG; u32]
BUFFER_UAV_FLAG :: enum u32 {
RAW = 0,
APPEND = 1,
COUNTER = 2,
}
BUFFER_UAV :: struct {
FirstElement: u32,
NumElements: u32,
Flags: BUFFER_UAV_FLAGS,
}
TEX1D_UAV :: struct {
MipSlice: u32,
}
TEX1D_ARRAY_UAV :: struct {
MipSlice: u32,
FirstArraySlice: u32,
ArraySize: u32,
}
TEX2D_UAV :: struct {
MipSlice: u32,
}
TEX2D_ARRAY_UAV :: struct {
MipSlice: u32,
FirstArraySlice: u32,
ArraySize: u32,
}
TEX3D_UAV :: struct {
MipSlice: u32,
FirstWSlice: u32,
WSize: u32,
}
UNORDERED_ACCESS_VIEW_DESC :: struct {
Format: dxgi.FORMAT,
ViewDimension: UAV_DIMENSION,
using _: struct #raw_union {
Buffer: BUFFER_UAV,
Texture1D: TEX1D_UAV,
Texture1DArray: TEX1D_ARRAY_UAV,
Texture2D: TEX2D_UAV,
Texture2DArray: TEX2D_ARRAY_UAV,
Texture3D: TEX3D_UAV,
},
}
CUNORDERED_ACCESS_VIEW_DESC :: struct {
using d3d11_unordered_access_view_desc: UNORDERED_ACCESS_VIEW_DESC,
}
IUnorderedAccessView_UUID_STRING :: "28ACF509-7F5C-48F6-8611-F316010A6380"
IUnorderedAccessView_UUID := &IID{0x28ACF509, 0x7F5C, 0x48F6, {0x86, 0x11, 0xF3, 0x16, 0x01, 0x0A, 0x63, 0x80}}
IUnorderedAccessView :: struct #raw_union {
#subtype id3d11view: IView,
using id3d11unorderedaccessview_vtable: ^IUnorderedAccessView_VTable,
}
IUnorderedAccessView_VTable :: struct {
using id3d11view_vtable: IView_VTable,
GetDesc: proc "system" (this: ^IUnorderedAccessView, pDesc: ^UNORDERED_ACCESS_VIEW_DESC),
}
IVertexShader_UUID_STRING :: "3B301D64-D678-4289-8897-22F8928B72F3"
IVertexShader_UUID := &IID{0x3B301D64, 0xD678, 0x4289, {0x88, 0x97, 0x22, 0xF8, 0x92, 0x8B, 0x72, 0xF3}}
IVertexShader :: struct {
using id3d11devicechild: IDeviceChild,
}
IHullShader_UUID_STRING :: "8E5C6061-628A-4C8E-8264-BBE45CB3D5DD"
IHullShader_UUID := &IID{0x8E5C6061, 0x628A, 0x4C8E, {0x82, 0x64, 0xBB, 0xE4, 0x5C, 0xB3, 0xD5, 0xDD}}
IHullShader :: struct {
using id3d11devicechild: IDeviceChild,
}
IDomainShader_UUID_STRING :: "F582C508-0F36-490C-9977-31EECE268CFA"
IDomainShader_UUID := &IID{0xF582C508, 0x0F36, 0x490C, {0x99, 0x77, 0x31, 0xEE, 0xCE, 0x26, 0x8C, 0xFA}}
IDomainShader :: struct {
using id3d11devicechild: IDeviceChild,
}
IGeometryShader_UUID_STRING :: "38325B96-EFFB-4022-BA02-2E795B70275C"
IGeometryShader_UUID := &IID{0x38325B96, 0xEFFB, 0x4022, {0xBA, 0x02, 0x2E, 0x79, 0x5B, 0x70, 0x27, 0x5C}}
IGeometryShader :: struct {
using id3d11devicechild: IDeviceChild,
}
IPixelShader_UUID_STRING :: "EA82E40D-51DC-4F33-93D4-DB7C9125AE8C"
IPixelShader_UUID := &IID{0xEA82E40D, 0x51DC, 0x4F33, {0x93, 0xD4, 0xDB, 0x7C, 0x91, 0x25, 0xAE, 0x8C}}
IPixelShader :: struct {
using id3d11devicechild: IDeviceChild,
}
IComputeShader_UUID_STRING :: "4F5B196E-C2BD-495E-BD01-1FDED38E4969"
IComputeShader_UUID := &IID{0x4F5B196E, 0xC2BD, 0x495E, {0xBD, 0x01, 0x1F, 0xDE, 0xD3, 0x8E, 0x49, 0x69}}
IComputeShader :: struct {
using id3d11devicechild: IDeviceChild,
}
IInputLayout_UUID_STRING :: "E4819DDC-4CF0-4025-BD26-5DE82A3E07B7"
IInputLayout_UUID := &IID{0xE4819DDC, 0x4CF0, 0x4025, {0xBD, 0x26, 0x5D, 0xE8, 0x2A, 0x3E, 0x07, 0xB7}}
IInputLayout :: struct {
using id3d11devicechild: IDeviceChild,
}
FILTER :: enum i32 {
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,
}
FILTER_TYPE :: enum i32 {
POINT = 0,
LINEAR = 1,
}
FILTER_REDUCTION_TYPE :: enum i32 {
STANDARD = 0,
COMPARISON = 1,
MINIMUM = 2,
MAXIMUM = 3,
}
TEXTURE_ADDRESS_MODE :: enum i32 {
WRAP = 1,
MIRROR = 2,
CLAMP = 3,
BORDER = 4,
MIRROR_ONCE = 5,
}
SAMPLER_DESC :: struct {
Filter: FILTER,
AddressU: TEXTURE_ADDRESS_MODE,
AddressV: TEXTURE_ADDRESS_MODE,
AddressW: TEXTURE_ADDRESS_MODE,
MipLODBias: f32,
MaxAnisotropy: u32,
ComparisonFunc: COMPARISON_FUNC,
BorderColor: [4]f32,
MinLOD: f32,
MaxLOD: f32,
}
CSAMPLER_DESC :: struct {
using d3d11_sampler_desc: SAMPLER_DESC,
}
ISamplerState_UUID_STRING :: "DA6FEA51-564C-4487-9810-F0D0F9B4E3A5"
ISamplerState_UUID := &IID{0xDA6FEA51, 0x564C, 0x4487, {0x98, 0x10, 0xF0, 0xD0, 0xF9, 0xB4, 0xE3, 0xA5}}
ISamplerState :: struct #raw_union {
#subtype id3d11devicechild: IDeviceChild,
using id3d11samplerstate_vtable: ^ISamplerState_VTable,
}
ISamplerState_VTable :: struct {
using id3d11devicechild_vtable: IDeviceChild_VTable,
GetDesc: proc "system" (this: ^ISamplerState, pDesc: ^SAMPLER_DESC),
}
FORMAT_SUPPORT :: enum i32 { // TODO: make bit_set
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,
}
FORMAT_SUPPORT2 :: enum i32 { // TODO: make bit_set
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,
}
IAsynchronous_UUID_STRING :: "4B35D0CD-1E15-4258-9C98-1B1333F6DD3B"
IAsynchronous_UUID := &IID{0x4B35D0CD, 0x1E15, 0x4258, {0x9C, 0x98, 0x1B, 0x13, 0x33, 0xF6, 0xDD, 0x3B}}
IAsynchronous :: struct #raw_union {
#subtype id3d11devicechild: IDeviceChild,
using id3d11asynchronous_vtable: ^IAsynchronous_VTable,
}
IAsynchronous_VTable :: struct {
using id3d11devicechild_vtable: IDeviceChild_VTable,
GetDataSize: proc "system" (this: ^IAsynchronous) -> u32,
}
ASYNC_GETDATA_FLAGS :: distinct bit_set[ASYNC_GETDATA_FLAG; u32]
ASYNC_GETDATA_FLAG :: enum u32 {
DONOTFLUSH = 0,
}
QUERY :: enum i32 {
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,
}
QUERY_MISC_FLAGS :: distinct bit_set[QUERY_MISC_FLAG; u32]
QUERY_MISC_FLAG :: enum u32 {
PREDICATEHINT = 0,
}
QUERY_DESC :: struct {
Query: QUERY,
MiscFlags: QUERY_MISC_FLAGS,
}
CQUERY_DESC :: struct {
using d3d11_query_desc: QUERY_DESC,
}
IQuery_UUID_STRING :: "D6C00747-87B7-425E-B84D-44D108560AFD"
IQuery_UUID := &IID{0xD6C00747, 0x87B7, 0x425E, {0xB8, 0x4D, 0x44, 0xD1, 0x08, 0x56, 0x0A, 0xFD}}
IQuery :: struct #raw_union {
#subtype id3d11asynchronous: IAsynchronous,
using id3d11query_vtable: ^IQuery_VTable,
}
IQuery_VTable :: struct {
using id3d11asynchronous_vtable: IAsynchronous_VTable,
GetDesc: proc "system" (this: ^IQuery, pDesc: ^QUERY_DESC),
}
IPredicate_UUID_STRING :: "9EB576DD-9F77-4D86-81AA-8BAB5FE490E2"
IPredicate_UUID := &IID{0x9EB576DD, 0x9F77, 0x4D86, {0x81, 0xAA, 0x8B, 0xAB, 0x5F, 0xE4, 0x90, 0xE2}}
IPredicate :: struct {
using id3d11query: IQuery,
}
QUERY_DATA_TIMESTAMP_DISJOINT :: struct {
Frequency: u64,
Disjoint: BOOL,
}
QUERY_DATA_PIPELINE_STATISTICS :: struct {
IAVertices: u64,
IAPrimitives: u64,
VSInvocations: u64,
GSInvocations: u64,
GSPrimitives: u64,
CInvocations: u64,
CPrimitives: u64,
PSInvocations: u64,
HSInvocations: u64,
DSInvocations: u64,
CSInvocations: u64,
}
QUERY_DATA_SO_STATISTICS :: struct {
NumPrimitivesWritten: u64,
PrimitivesStorageNeeded: u64,
}
COUNTER :: enum i32 {
DEVICE_DEPENDENT_0 = 1073741824,
}
COUNTER_TYPE :: enum i32 {
FLOAT32 = 0,
UINT16 = 1,
UINT32 = 2,
UINT64 = 3,
}
COUNTER_DESC :: struct {
Counter: COUNTER,
MiscFlags: RESOURCE_MISC_FLAGS,
}
CCOUNTER_DESC :: struct {
using d3d11_counter_desc: COUNTER_DESC,
}
COUNTER_INFO :: struct {
LastDeviceDependentCounter: COUNTER,
NumSimultaneousCounters: u32,
NumDetectableParallelUnits: u8,
}
ICounter_UUID_STRING :: "6E8C49FB-A371-4770-B440-29086022B741"
ICounter_UUID := &IID{0x6E8C49FB, 0xA371, 0x4770, {0xB4, 0x40, 0x29, 0x08, 0x60, 0x22, 0xB7, 0x41}}
ICounter :: struct #raw_union {
#subtype id3d11asynchronous: IAsynchronous,
using id3d11counter_vtable: ^ICounter_VTable,
}
ICounter_VTable :: struct {
using id3d11asynchronous_vtable: IAsynchronous_VTable,
GetDesc: proc "system" (this: ^ICounter, pDesc: ^COUNTER_DESC),
}
STANDARD_MULTISAMPLE_QUALITY_LEVELS :: enum i32 {
STANDARD_MULTISAMPLE_PATTERN = -1,
CENTER_MULTISAMPLE_PATTERN = -2,
}
DEVICE_CONTEXT_TYPE :: enum i32 {
IMMEDIATE = 0,
DEFERRED = 1,
}
CLASS_INSTANCE_DESC :: struct {
InstanceId: u32,
InstanceIndex: u32,
TypeId: u32,
ConstantBuffer: u32,
BaseConstantBufferOffset: u32,
BaseTexture: u32,
BaseSampler: u32,
Created: BOOL,
}
IClassInstance_UUID_STRING :: "A6CD7FAA-B0B7-4A2F-9436-8662A65797CB"
IClassInstance_UUID := &IID{0xA6CD7FAA, 0xB0B7, 0x4A2F, {0x94, 0x36, 0x86, 0x62, 0xA6, 0x57, 0x97, 0xCB}}
IClassInstance :: struct #raw_union {
#subtype id3d11devicechild: IDeviceChild,
using id3d11classinstance_vtable: ^IClassInstance_VTable,
}
IClassInstance_VTable :: struct {
using id3d11devicechild_vtable: IDeviceChild_VTable,
GetClassLinkage: proc "system" (this: ^IClassInstance, ppLinkage: ^^IClassLinkage),
GetDesc: proc "system" (this: ^IClassInstance, pDesc: ^CLASS_INSTANCE_DESC),
GetInstanceName: proc "system" (this: ^IClassInstance, pInstanceName: cstring, pBufferLength: ^SIZE_T),
GetTypeName: proc "system" (this: ^IClassInstance, pTypeName: cstring, pBufferLength: ^SIZE_T),
}
IClassLinkage_UUID_STRING :: "DDF57CBA-9543-46E4-A12B-F207A0FE7FED"
IClassLinkage_UUID := &IID{0xDDF57CBA, 0x9543, 0x46E4, {0xA1, 0x2B, 0xF2, 0x07, 0xA0, 0xFE, 0x7F, 0xED}}
IClassLinkage :: struct #raw_union {
#subtype id3d11devicechild: IDeviceChild,
using id3d11classlinkage_vtable: ^IClassLinkage_VTable,
}
IClassLinkage_VTable :: struct {
using id3d11devicechild_vtable: IDeviceChild_VTable,
GetClassInstance: proc "system" (this: ^IClassLinkage, pClassInstanceName: LPCSTR, InstanceIndex: u32, ppInstance: ^^IClassInstance) -> HRESULT,
CreateClassInstance: proc "system" (this: ^IClassLinkage, pClassTypeName: LPCSTR, ConstantBufferOffset: u32, ConstantVectorOffset: u32, TextureOffset: u32, SamplerOffset: u32, ppInstance: ^^IClassInstance) -> HRESULT,
}
ICommandList_UUID_STRING :: "A24BC4D1-769E-43F7-8013-98FF566C18E2"
ICommandList_UUID := &IID{0xA24BC4D1, 0x769E, 0x43F7, {0x80, 0x13, 0x98, 0xFF, 0x56, 0x6C, 0x18, 0xE2}}
ICommandList :: struct #raw_union {
#subtype id3d11devicechild: IDeviceChild,
using id3d11commandlist_vtable: ^ICommandList_VTable,
}
ICommandList_VTable :: struct {
using id3d11devicechild_vtable: IDeviceChild_VTable,
GetContextFlags: proc "system" (this: ^ICommandList) -> u32,
}
FEATURE :: enum i32 {
THREADING = 0,
DOUBLES = 1,
FORMAT_SUPPORT = 2,
FORMAT_SUPPORT2 = 3,
D3D10_X_HARDWARE_OPTIONS = 4,
OPTIONS = 5,
ARCHITECTURE_INFO = 6,
D3D9_OPTIONS = 7,
SHADER_MIN_PRECISION_SUPPORT = 8,
D3D9_SHADOW_SUPPORT = 9,
OPTIONS1 = 10,
D3D9_SIMPLE_INSTANCING_SUPPORT = 11,
MARKER_SUPPORT = 12,
D3D9_OPTIONS1 = 13,
OPTIONS2 = 14,
OPTIONS3 = 15,
GPU_VIRTUAL_ADDRESS_SUPPORT = 16,
OPTIONS4 = 17,
SHADER_CACHE = 18,
OPTIONS5 = 19,
}
FEATURE_DATA_THREADING :: struct {
DriverConcurrentCreates: BOOL,
DriverCommandLists: BOOL,
}
FEATURE_DATA_DOUBLES :: struct {
DoublePrecisionFloatShaderOps: BOOL,
}
FEATURE_DATA_FORMAT_SUPPORT :: struct {
InFormat: dxgi.FORMAT,
OutFormatSupport: u32,
}
FEATURE_DATA_FORMAT_SUPPORT2 :: struct {
InFormat: dxgi.FORMAT,
OutFormatSupport2: u32,
}
FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS :: struct {
ComputeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x: BOOL,
}
FEATURE_DATA_OPTIONS :: struct {
OutputMergerLogicOp: BOOL,
UAVOnlyRenderingForcedSampleCount: BOOL,
DiscardAPIsSeenByDriver: BOOL,
FlagsForUpdateAndCopySeenByDriver: BOOL,
ClearView: BOOL,
CopyWithOverlap: BOOL,
ConstantBufferPartialUpdate: BOOL,
ConstantBufferOffsetting: BOOL,
MapNoOverwriteOnDynamicConstantBuffer: BOOL,
MapNoOverwriteOnDynamicBufferSRV: BOOL,
MultisampleRTVWithForcedSampleCountOne: BOOL,
SAD4ShaderInstructions: BOOL,
ExtendedDoublesShaderInstructions: BOOL,
ExtendedResourceSharing: BOOL,
}
FEATURE_DATA_ARCHITECTURE_INFO :: struct {
TileBasedDeferredRenderer: BOOL,
}
FEATURE_DATA_D3D9_OPTIONS :: struct {
FullNonPow2TextureSupport: BOOL,
}
FEATURE_DATA_D3D9_SHADOW_SUPPORT :: struct {
SupportsDepthAsTextureWithLessEqualComparisonFilter: BOOL,
}
SHADER_MIN_PRECISION_SUPPORT :: enum i32 {
_10_BIT = 1,
_16_BIT = 2,
}
FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT :: struct {
PixelShaderMinPrecision: u32,
AllOtherShaderStagesMinPrecision: u32,
}
TILED_RESOURCES_TIER :: enum i32 {
TILED_RESOURCES_NOT_SUPPORTED = 0,
_1 = 1,
_2 = 2,
_3 = 3,
}
FEATURE_DATA_OPTIONS1 :: struct {
TiledResourcesTier: TILED_RESOURCES_TIER,
MinMaxFiltering: BOOL,
ClearViewAlsoSupportsDepthOnlyFormats: BOOL,
MapOnDefaultBuffers: BOOL,
}
FEATURE_DATA_D3D9_SIMPLE_INSTANCING_SUPPORT :: struct {
SimpleInstancingSupported: BOOL,
}
FEATURE_DATA_MARKER_SUPPORT :: struct {
Profile: BOOL,
}
FEATURE_DATA_D3D9_OPTIONS1 :: struct {
FullNonPow2TextureSupported: BOOL,
DepthAsTextureWithLessEqualComparisonFilterSupported: BOOL,
SimpleInstancingSupported: BOOL,
TextureCubeFaceRenderTargetWithNonCubeDepthStencilSupported: BOOL,
}
CONSERVATIVE_RASTERIZATION_TIER :: enum i32 {
CONSERVATIVE_RASTERIZATION_NOT_SUPPORTED = 0,
_1 = 1,
_2 = 2,
_3 = 3,
}
FEATURE_DATA_OPTIONS2 :: struct {
PSSpecifiedStencilRefSupported: BOOL,
TypedUAVLoadAdditionalFormats: BOOL,
ROVsSupported: BOOL,
ConservativeRasterizationTier: CONSERVATIVE_RASTERIZATION_TIER,
TiledResourcesTier: TILED_RESOURCES_TIER,
MapOnDefaultTextures: BOOL,
StandardSwizzle: BOOL,
UnifiedMemoryArchitecture: BOOL,
}
FEATURE_DATA_OPTIONS3 :: struct {
VPAndRTArrayIndexFromAnyShaderFeedingRasterizer: BOOL,
}
FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT :: struct {
MaxGPUVirtualAddressBitsPerResource: u32,
MaxGPUVirtualAddressBitsPerProcess: u32,
}
SHADER_CACHE_SUPPORT_FLAGS :: distinct bit_set[SHADER_CACHE_SUPPORT_FLAG; u32]
SHADER_CACHE_SUPPORT_FLAG :: enum u32 {
AUTOMATIC_INPROC_CACHE = 0,
AUTOMATIC_DISK_CACHE = 1,
}
FEATURE_DATA_SHADER_CACHE :: struct {
SupportFlags: SHADER_CACHE_SUPPORT_FLAGS,
}
SHARED_RESOURCE_TIER :: enum i32 {
_0 = 0,
_1 = 1,
_2 = 2,
_3 = 3,
}
FEATURE_DATA_OPTIONS5 :: struct {
SharedResourceTier: SHARED_RESOURCE_TIER,
}
IDeviceContext_UUID_STRING :: "C0BFA96C-E089-44FB-8EAF-26F8796190DA"
IDeviceContext_UUID := &IID{0xC0BFA96C, 0xE089, 0x44FB, {0x8E, 0xAF, 0x26, 0xF8, 0x79, 0x61, 0x90, 0xDA}}
IDeviceContext :: struct #raw_union {
#subtype id3d11devicechild: IDeviceChild,
using id3d11devicecontext_vtable: ^IDeviceContext_VTable,
}
IDeviceContext_VTable :: struct {
using id3d11devicechild_vtable: IDeviceChild_VTable,
VSSetConstantBuffers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumBuffers: u32, ppConstantBuffers: [^]^IBuffer),
PSSetShaderResources: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumViews: u32, ppShaderResourceViews: [^]^IShaderResourceView),
PSSetShader: proc "system" (this: ^IDeviceContext, pPixelShader: ^IPixelShader, ppClassInstances: [^]^IClassInstance, NumClassInstances: u32),
PSSetSamplers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumSamplers: u32, ppSamplers: [^]^ISamplerState),
VSSetShader: proc "system" (this: ^IDeviceContext, pVertexShader: ^IVertexShader, ppClassInstances: [^]^IClassInstance, NumClassInstances: u32),
DrawIndexed: proc "system" (this: ^IDeviceContext, IndexCount: u32, StartIndexLocation: u32, BaseVertexLocation: i32),
Draw: proc "system" (this: ^IDeviceContext, VertexCount: u32, StartVertexLocation: u32),
Map: proc "system" (this: ^IDeviceContext, pResource: ^IResource, Subresource: u32, MapType: MAP, MapFlags: MAP_FLAGS, pMappedResource: ^MAPPED_SUBRESOURCE) -> HRESULT,
Unmap: proc "system" (this: ^IDeviceContext, pResource: ^IResource, Subresource: u32),
PSSetConstantBuffers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumBuffers: u32, ppConstantBuffers: [^]^IBuffer),
IASetInputLayout: proc "system" (this: ^IDeviceContext, pInputLayout: ^IInputLayout),
IASetVertexBuffers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumBuffers: u32, ppVertexBuffers: [^]^IBuffer, pStrides: [^]u32, pOffsets: [^]u32),
IASetIndexBuffer: proc "system" (this: ^IDeviceContext, pIndexBuffer: ^IBuffer, Format: dxgi.FORMAT, Offset: u32),
DrawIndexedInstanced: proc "system" (this: ^IDeviceContext, IndexCountPerInstance: u32, InstanceCount: u32, StartIndexLocation: u32, BaseVertexLocation: i32, StartInstanceLocation: u32),
DrawInstanced: proc "system" (this: ^IDeviceContext, VertexCountPerInstance: u32, InstanceCount: u32, StartVertexLocation: u32, StartInstanceLocation: u32),
GSSetConstantBuffers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumBuffers: u32, ppConstantBuffers: [^]^IBuffer),
GSSetShader: proc "system" (this: ^IDeviceContext, pShader: ^IGeometryShader, ppClassInstances: [^]^IClassInstance, NumClassInstances: u32),
IASetPrimitiveTopology: proc "system" (this: ^IDeviceContext, Topology: PRIMITIVE_TOPOLOGY),
VSSetShaderResources: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumViews: u32, ppShaderResourceViews: [^]^IShaderResourceView),
VSSetSamplers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumSamplers: u32, ppSamplers: [^]^ISamplerState),
Begin: proc "system" (this: ^IDeviceContext, pAsync: ^IAsynchronous),
End: proc "system" (this: ^IDeviceContext, pAsync: ^IAsynchronous),
GetData: proc "system" (this: ^IDeviceContext, pAsync: ^IAsynchronous, pData: rawptr, DataSize: u32, GetDataFlags: u32) -> HRESULT,
SetPredication: proc "system" (this: ^IDeviceContext, pPredicate: ^IPredicate, PredicateValue: BOOL),
GSSetShaderResources: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumViews: u32, ppShaderResourceViews: [^]^IShaderResourceView),
GSSetSamplers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumSamplers: u32, ppSamplers: [^]^ISamplerState),
OMSetRenderTargets: proc "system" (this: ^IDeviceContext, NumViews: u32, ppRenderTargetViews: [^]^IRenderTargetView, pDepthStencilView: ^IDepthStencilView),
OMSetRenderTargetsAndUnorderedAccessViews: proc "system" (this: ^IDeviceContext, NumRTVs: u32, ppRenderTargetViews: [^]^IRenderTargetView, pDepthStencilView: ^IDepthStencilView, UAVStartSlot: u32, NumUAVs: u32, ppUnorderedAccessViews: [^]^IUnorderedAccessView, pUAVInitialCounts: [^]u32),
OMSetBlendState: proc "system" (this: ^IDeviceContext, pBlendState: ^IBlendState, BlendFactor: ^[4]f32, SampleMask: u32),
OMSetDepthStencilState: proc "system" (this: ^IDeviceContext, pDepthStencilState: ^IDepthStencilState, StencilRef: u32),
SOSetTargets: proc "system" (this: ^IDeviceContext, NumBuffers: u32, ppSOTargets: [^]^IBuffer, pOffsets: [^]u32),
DrawAuto: proc "system" (this: ^IDeviceContext),
DrawIndexedInstancedIndirect: proc "system" (this: ^IDeviceContext, pBufferForArgs: ^IBuffer, AlignedByteOffsetForArgs: u32),
DrawInstancedIndirect: proc "system" (this: ^IDeviceContext, pBufferForArgs: ^IBuffer, AlignedByteOffsetForArgs: u32),
Dispatch: proc "system" (this: ^IDeviceContext, ThreadGroupCountX: u32, ThreadGroupCountY: u32, ThreadGroupCountZ: u32),
DispatchIndirect: proc "system" (this: ^IDeviceContext, pBufferForArgs: ^IBuffer, AlignedByteOffsetForArgs: u32),
RSSetState: proc "system" (this: ^IDeviceContext, pRasterizerState: ^IRasterizerState),
RSSetViewports: proc "system" (this: ^IDeviceContext, NumViewports: u32, pViewports: [^]VIEWPORT),
RSSetScissorRects: proc "system" (this: ^IDeviceContext, NumRects: u32, pRects: [^]RECT),
CopySubresourceRegion: proc "system" (this: ^IDeviceContext, pDstResource: ^IResource, DstSubresource: u32, DstX: u32, DstY: u32, DstZ: u32, pSrcResource: ^IResource, SrcSubresource: u32, pSrcBox: ^BOX),
CopyResource: proc "system" (this: ^IDeviceContext, pDstResource: ^IResource, pSrcResource: ^IResource),
UpdateSubresource: proc "system" (this: ^IDeviceContext, pDstResource: ^IResource, DstSubresource: u32, pDstBox: ^BOX, pSrcData: rawptr, SrcRowPitch: u32, SrcDepthPitch: u32),
CopyStructureCount: proc "system" (this: ^IDeviceContext, pDstBuffer: ^IBuffer, DstAlignedByteOffset: u32, pSrcView: ^IUnorderedAccessView),
ClearRenderTargetView: proc "system" (this: ^IDeviceContext, pRenderTargetView: ^IRenderTargetView, ColorRGBA: ^[4]f32),
ClearUnorderedAccessViewUint: proc "system" (this: ^IDeviceContext, pUnorderedAccessView: ^IUnorderedAccessView, Values: ^[4]u32),
ClearUnorderedAccessViewFloat: proc "system" (this: ^IDeviceContext, pUnorderedAccessView: ^IUnorderedAccessView, Values: ^[4]f32),
ClearDepthStencilView: proc "system" (this: ^IDeviceContext, pDepthStencilView: ^IDepthStencilView, ClearFlags: CLEAR_FLAGS, Depth: f32, Stencil: u8),
GenerateMips: proc "system" (this: ^IDeviceContext, pShaderResourceView: ^IShaderResourceView),
SetResourceMinLOD: proc "system" (this: ^IDeviceContext, pResource: ^IResource, MinLOD: f32),
GetResourceMinLOD: proc "system" (this: ^IDeviceContext, pResource: ^IResource) -> f32,
ResolveSubresource: proc "system" (this: ^IDeviceContext, pDstResource: ^IResource, DstSubresource: u32, pSrcResource: ^IResource, SrcSubresource: u32, Format: dxgi.FORMAT),
ExecuteCommandList: proc "system" (this: ^IDeviceContext, pCommandList: ^ICommandList, RestoreContextState: BOOL),
HSSetShaderResources: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumViews: u32, ppShaderResourceViews: [^]^IShaderResourceView),
HSSetShader: proc "system" (this: ^IDeviceContext, pHullShader: ^IHullShader, ppClassInstances: [^]^IClassInstance, NumClassInstances: u32),
HSSetSamplers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumSamplers: u32, ppSamplers: [^]^ISamplerState),
HSSetConstantBuffers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumBuffers: u32, ppConstantBuffers: [^]^IBuffer),
DSSetShaderResources: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumViews: u32, ppShaderResourceViews: [^]^IShaderResourceView),
DSSetShader: proc "system" (this: ^IDeviceContext, pDomainShader: ^IDomainShader, ppClassInstances: [^]^IClassInstance, NumClassInstances: u32),
DSSetSamplers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumSamplers: u32, ppSamplers: [^]^ISamplerState),
DSSetConstantBuffers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumBuffers: u32, ppConstantBuffers: [^]^IBuffer),
CSSetShaderResources: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumViews: u32, ppShaderResourceViews: [^]^IShaderResourceView),
CSSetUnorderedAccessViews: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumUAVs: u32, ppUnorderedAccessViews: [^]^IUnorderedAccessView, pUAVInitialCounts: [^]u32),
CSSetShader: proc "system" (this: ^IDeviceContext, pComputeShader: ^IComputeShader, ppClassInstances: [^]^IClassInstance, NumClassInstances: u32),
CSSetSamplers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumSamplers: u32, ppSamplers: [^]^ISamplerState),
CSSetConstantBuffers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumBuffers: u32, ppConstantBuffers: [^]^IBuffer),
VSGetConstantBuffers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumBuffers: u32, ppConstantBuffers: [^]^IBuffer),
PSGetShaderResources: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumViews: u32, ppShaderResourceViews: [^]^IShaderResourceView),
PSGetShader: proc "system" (this: ^IDeviceContext, ppPixelShader: ^^IPixelShader, ppClassInstances: [^]^IClassInstance, pNumClassInstances: ^u32),
PSGetSamplers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumSamplers: u32, ppSamplers: [^]^ISamplerState),
VSGetShader: proc "system" (this: ^IDeviceContext, ppVertexShader: ^^IVertexShader, ppClassInstances: [^]^IClassInstance, pNumClassInstances: ^u32),
PSGetConstantBuffers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumBuffers: u32, ppConstantBuffers: [^]^IBuffer),
IAGetInputLayout: proc "system" (this: ^IDeviceContext, ppInputLayout: ^^IInputLayout),
IAGetVertexBuffers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumBuffers: u32, ppVertexBuffers: [^]^IBuffer, pStrides: [^]u32, pOffsets: [^]u32),
IAGetIndexBuffer: proc "system" (this: ^IDeviceContext, pIndexBuffer: ^^IBuffer, Format: ^dxgi.FORMAT, Offset: ^u32),
GSGetConstantBuffers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumBuffers: u32, ppConstantBuffers: [^]^IBuffer),
GSGetShader: proc "system" (this: ^IDeviceContext, ppGeometryShader: ^^IGeometryShader, ppClassInstances: [^]^IClassInstance, pNumClassInstances: ^u32),
IAGetPrimitiveTopology: proc "system" (this: ^IDeviceContext, pTopology: ^PRIMITIVE_TOPOLOGY),
VSGetShaderResources: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumViews: u32, ppShaderResourceViews: [^]^IShaderResourceView),
VSGetSamplers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumSamplers: u32, ppSamplers: [^]^ISamplerState),
GetPredication: proc "system" (this: ^IDeviceContext, ppPredicate: ^^IPredicate, pPredicateValue: ^BOOL),
GSGetShaderResources: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumViews: u32, ppShaderResourceViews: [^]^IShaderResourceView),
GSGetSamplers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumSamplers: u32, ppSamplers: [^]^ISamplerState),
OMGetRenderTargets: proc "system" (this: ^IDeviceContext, NumViews: u32, ppRenderTargetViews: [^]^IRenderTargetView, ppDepthStencilView: ^^IDepthStencilView),
OMGetRenderTargetsAndUnorderedAccessViews: proc "system" (this: ^IDeviceContext, NumRTVs: u32, ppRenderTargetViews: [^]^IRenderTargetView, ppDepthStencilView: ^^IDepthStencilView, UAVStartSlot: u32, NumUAVs: u32, ppUnorderedAccessViews: [^]^IUnorderedAccessView),
OMGetBlendState: proc "system" (this: ^IDeviceContext, ppBlendState: ^^IBlendState, BlendFactor: ^[4]f32, pSampleMask: ^COLOR_WRITE_ENABLE_MASK),
OMGetDepthStencilState: proc "system" (this: ^IDeviceContext, ppDepthStencilState: ^^IDepthStencilState, pStencilRef: ^u32),
SOGetTargets: proc "system" (this: ^IDeviceContext, NumBuffers: u32, ppSOTargets: [^]^IBuffer),
RSGetState: proc "system" (this: ^IDeviceContext, ppRasterizerState: ^^IRasterizerState),
RSGetViewports: proc "system" (this: ^IDeviceContext, pNumViewports: ^u32, pViewports: [^]VIEWPORT),
RSGetScissorRects: proc "system" (this: ^IDeviceContext, pNumRects: ^u32, pRects: [^]RECT),
HSGetShaderResources: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumViews: u32, ppShaderResourceViews: [^]^IShaderResourceView),
HSGetShader: proc "system" (this: ^IDeviceContext, ppHullShader: ^^IHullShader, ppClassInstances: [^]^IClassInstance, pNumClassInstances: ^u32),
HSGetSamplers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumSamplers: u32, ppSamplers: [^]^ISamplerState),
HSGetConstantBuffers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumBuffers: u32, ppConstantBuffers: [^]^IBuffer),
DSGetShaderResources: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumViews: u32, ppShaderResourceViews: [^]^IShaderResourceView),
DSGetShader: proc "system" (this: ^IDeviceContext, ppDomainShader: ^^IDomainShader, ppClassInstances: [^]^IClassInstance, pNumClassInstances: ^u32),
DSGetSamplers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumSamplers: u32, ppSamplers: [^]^ISamplerState),
DSGetConstantBuffers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumBuffers: u32, ppConstantBuffers: [^]^IBuffer),
CSGetShaderResources: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumViews: u32, ppShaderResourceViews: [^]^IShaderResourceView),
CSGetUnorderedAccessViews: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumUAVs: u32, ppUnorderedAccessViews: [^]^IUnorderedAccessView),
CSGetShader: proc "system" (this: ^IDeviceContext, ppComputeShader: ^^IComputeShader, ppClassInstances: [^]^IClassInstance, pNumClassInstances: ^u32),
CSGetSamplers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumSamplers: u32, ppSamplers: [^]^ISamplerState),
CSGetConstantBuffers: proc "system" (this: ^IDeviceContext, StartSlot: u32, NumBuffers: u32, ppConstantBuffers: [^]^IBuffer),
ClearState: proc "system" (this: ^IDeviceContext),
Flush: proc "system" (this: ^IDeviceContext),
GetType: proc "system" (this: ^IDeviceContext) -> DEVICE_CONTEXT_TYPE,
GetContextFlags: proc "system" (this: ^IDeviceContext) -> u32,
FinishCommandList: proc "system" (this: ^IDeviceContext, RestoreDeferredContextState: BOOL, ppCommandList: ^^ICommandList) -> HRESULT,
}
CVIDEO_DEFAULT :: struct {
_: u8,
}
APP_DEPRECATED_HRESULT :: HRESULT
VIDEO_DECODER_DESC :: struct {
Guid: GUID,
SampleWidth: u32,
SampleHeight: u32,
OutputFormat: dxgi.FORMAT,
}
VIDEO_DECODER_CONFIG :: struct {
guidConfigBitstreamEncryption: GUID,
guidConfigMBcontrolEncryption: GUID,
guidConfigResidDiffEncryption: GUID,
ConfigBitstreamRaw: u32,
ConfigMBcontrolRasterOrder: u32,
ConfigResidDiffHost: u32,
ConfigSpatialResid8: u32,
ConfigResid8Subtraction: u32,
ConfigSpatialHost8or9Clipping: u32,
ConfigSpatialResidInterleaved: u32,
ConfigIntraResidUnsigned: u32,
ConfigResidDiffAccelerator: u32,
ConfigHostInverseScan: u32,
ConfigSpecificIDCT: u32,
Config4GroupedCoefs: u32,
ConfigMinRenderTargetBuffCount: u16,
ConfigDecoderSpecific: u16,
}
VIDEO_DECODER_BUFFER_TYPE :: enum i32 {
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,
}
AES_CTR_IV :: struct {
IV: u64,
Count: u64,
}
ENCRYPTED_BLOCK_INFO :: struct {
NumEncryptedBytesAtBeginning: u32,
NumBytesInSkipPattern: u32,
NumBytesInEncryptPattern: u32,
}
VIDEO_DECODER_BUFFER_DESC :: struct {
BufferType: VIDEO_DECODER_BUFFER_TYPE,
BufferIndex: u32,
DataOffset: u32,
DataSize: u32,
FirstMBaddress: u32,
NumMBsInBuffer: u32,
Width: u32,
Height: u32,
Stride: u32,
ReservedBits: u32,
pIV: rawptr,
IVSize: u32,
PartialEncryption: BOOL,
EncryptedBlockInfo: ENCRYPTED_BLOCK_INFO,
}
VIDEO_DECODER_EXTENSION :: struct {
Function: u32,
pPrivateInputData: rawptr,
PrivateInputDataSize: u32,
pPrivateOutputData: rawptr,
PrivateOutputDataSize: u32,
ResourceCount: u32,
ppResourceList: ^^IResource,
}
IVideoDecoder_UUID_STRING :: "3C9C5B51-995D-48D1-9B8D-FA5CAEDED65C"
IVideoDecoder_UUID := &IID{0x3C9C5B51, 0x995D, 0x48D1, {0x9B, 0x8D, 0xFA, 0x5C, 0xAE, 0xDE, 0xD6, 0x5C}}
IVideoDecoder :: struct #raw_union {
#subtype id3d11devicechild: IDeviceChild,
using id3d11videodecoder_vtable: ^IVideoDecoder_VTable,
}
IVideoDecoder_VTable :: struct {
using id3d11devicechild_vtable: IDeviceChild_VTable,
GetCreationParameters: proc "system" (this: ^IVideoDecoder, pVideoDesc: ^VIDEO_DECODER_DESC, pConfig: ^VIDEO_DECODER_CONFIG) -> HRESULT,
GetDriverHandle: proc "system" (this: ^IVideoDecoder, pDriverHandle: ^HANDLE) -> HRESULT,
}
VIDEO_PROCESSOR_FORMAT_SUPPORT :: enum i32 {
INPUT = 1,
OUTPUT = 2,
}
VIDEO_PROCESSOR_DEVICE_CAPS :: enum i32 { // TODO: make bit_set
LINEAR_SPACE = 1,
xvYCC = 2,
RGB_RANGE_CONVERSION = 4,
YCbCr_MATRIX_CONVERSION = 8,
NOMINAL_RANGE = 16,
}
VIDEO_PROCESSOR_FEATURE_CAPS :: enum i32 { // TODO: make bit_set
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,
}
VIDEO_PROCESSOR_FILTER_CAPS :: enum i32 { // TODO: make bit_set
BRIGHTNESS = 1,
CONTRAST = 2,
HUE = 4,
SATURATION = 8,
NOISE_REDUCTION = 16,
EDGE_ENHANCEMENT = 32,
ANAMORPHIC_SCALING = 64,
STEREO_ADJUSTMENT = 128,
}
VIDEO_PROCESSOR_FORMAT_CAPS :: enum i32 { // TODO: make bit_set
RGB_INTERLACED = 1,
RGB_PROCAMP = 2,
RGB_LUMA_KEY = 4,
PALETTE_INTERLACED = 8,
}
VIDEO_PROCESSOR_AUTO_STREAM_CAPS :: enum i32 { // TODO: make bit_set
DENOISE = 1,
DERINGING = 2,
EDGE_ENHANCEMENT = 4,
COLOR_CORRECTION = 8,
FLESH_TONE_MAPPING = 16,
IMAGE_STABILIZATION = 32,
SUPER_RESOLUTION = 64,
ANAMORPHIC_SCALING = 128,
}
VIDEO_PROCESSOR_STEREO_CAPS :: enum i32 { // TODO: make bit_set
MONO_OFFSET = 1,
ROW_INTERLEAVED = 2,
COLUMN_INTERLEAVED = 4,
CHECKERBOARD = 8,
FLIP_MODE = 16,
}
VIDEO_PROCESSOR_CAPS :: struct {
DeviceCaps: u32,
FeatureCaps: u32,
FilterCaps: u32,
InputFormatCaps: u32,
AutoStreamCaps: u32,
StereoCaps: u32,
RateConversionCapsCount: u32,
MaxInputStreams: u32,
MaxStreamStates: u32,
}
VIDEO_PROCESSOR_PROCESSOR_CAPS :: enum i32 { // TODO: make bit_set
DEINTERLACE_BLEND = 1,
DEINTERLACE_BOB = 2,
DEINTERLACE_ADAPTIVE = 4,
DEINTERLACE_MOTION_COMPENSATION = 8,
INVERSE_TELECINE = 16,
FRAME_RATE_CONVERSION = 32,
}
VIDEO_PROCESSOR_ITELECINE_CAPS :: enum i32 {
_32 = 1,
_22 = 2,
_2224 = 4,
_2332 = 8,
_32322 = 16,
_55 = 32,
_64 = 64,
_87 = 128,
_222222222223 = 256,
OTHER = -2147483648,
}
VIDEO_PROCESSOR_RATE_CONVERSION_CAPS :: struct {
PastFrames: u32,
FutureFrames: u32,
ProcessorCaps: u32,
ITelecineCaps: u32,
CustomRateCount: u32,
}
CONTENT_PROTECTION_CAPS :: enum i32 {
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,
}
VIDEO_CONTENT_PROTECTION_CAPS :: struct {
Caps: u32,
KeyExchangeTypeCount: u32,
BlockAlignmentSize: u32,
ProtectedMemorySize: u64,
}
VIDEO_PROCESSOR_CUSTOM_RATE :: struct {
CustomRate: dxgi.RATIONAL,
OutputFrames: u32,
InputInterlaced: BOOL,
InputFramesOrFields: u32,
}
VIDEO_PROCESSOR_FILTER :: enum i32 {
BRIGHTNESS = 0,
CONTRAST = 1,
HUE = 2,
SATURATION = 3,
NOISE_REDUCTION = 4,
EDGE_ENHANCEMENT = 5,
ANAMORPHIC_SCALING = 6,
STEREO_ADJUSTMENT = 7,
}
VIDEO_PROCESSOR_FILTER_RANGE :: struct {
Minimum: i32,
Maximum: i32,
Default: i32,
Multiplier: f32,
}
VIDEO_FRAME_FORMAT :: enum i32 {
PROGRESSIVE = 0,
INTERLACED_TOP_FIELD_FIRST = 1,
INTERLACED_BOTTOM_FIELD_FIRST = 2,
}
VIDEO_USAGE :: enum i32 {
PLAYBACK_NORMAL = 0,
OPTIMAL_SPEED = 1,
OPTIMAL_QUALITY = 2,
}
VIDEO_PROCESSOR_CONTENT_DESC :: struct {
InputFrameFormat: VIDEO_FRAME_FORMAT,
InputFrameRate: dxgi.RATIONAL,
InputWidth: u32,
InputHeight: u32,
OutputFrameRate: dxgi.RATIONAL,
OutputWidth: u32,
OutputHeight: u32,
Usage: VIDEO_USAGE,
}
IVideoProcessorEnumerator_UUID_STRING :: "31627037-53AB-4200-9061-05FAA9AB45F9"
IVideoProcessorEnumerator_UUID := &IID{0x31627037, 0x53AB, 0x4200, {0x90, 0x61, 0x05, 0xFA, 0xA9, 0xAB, 0x45, 0xF9}}
IVideoProcessorEnumerator :: struct #raw_union {
#subtype id3d11devicechild: IDeviceChild,
using id3d11videoprocessorenumerator_vtable: ^IVideoProcessorEnumerator_VTable,
}
IVideoProcessorEnumerator_VTable :: struct {
using id3d11devicechild_vtable: IDeviceChild_VTable,
GetVideoProcessorContentDesc: proc "system" (this: ^IVideoProcessorEnumerator, pContentDesc: ^VIDEO_PROCESSOR_CONTENT_DESC) -> HRESULT,
CheckVideoProcessorFormat: proc "system" (this: ^IVideoProcessorEnumerator, Format: dxgi.FORMAT, pFlags: ^u32) -> HRESULT,
GetVideoProcessorCaps: proc "system" (this: ^IVideoProcessorEnumerator, pCaps: ^VIDEO_PROCESSOR_CAPS) -> HRESULT,
GetVideoProcessorRateConversionCaps: proc "system" (this: ^IVideoProcessorEnumerator, TypeIndex: u32, pCaps: ^VIDEO_PROCESSOR_RATE_CONVERSION_CAPS) -> HRESULT,
GetVideoProcessorCustomRate: proc "system" (this: ^IVideoProcessorEnumerator, TypeIndex: u32, CustomRateIndex: u32, pRate: ^VIDEO_PROCESSOR_CUSTOM_RATE) -> HRESULT,
GetVideoProcessorFilterRange: proc "system" (this: ^IVideoProcessorEnumerator, Filter: VIDEO_PROCESSOR_FILTER, pRange: ^VIDEO_PROCESSOR_FILTER_RANGE) -> HRESULT,
}
VIDEO_COLOR_RGBA :: struct {
R: f32,
G: f32,
B: f32,
A: f32,
}
VIDEO_COLOR_YCbCrA :: struct {
Y: f32,
Cb: f32,
Cr: f32,
A: f32,
}
VIDEO_COLOR :: struct {
using _: struct #raw_union {
YCbCr: VIDEO_COLOR_YCbCrA,
RGBA: VIDEO_COLOR_RGBA,
},
}
VIDEO_PROCESSOR_NOMINAL_RANGE :: enum i32 {
UNDEFINED = 0,
_16_235 = 1,
_0_255 = 2,
}
VIDEO_PROCESSOR_COLOR_SPACE_FLAG :: enum u32 {
Usage = 0,
RGB_Range = 1,
YCbCr_Matrix = 2,
YCbCr_xvYCC = 3,
Nominal_Range = 4,
Reserved = 6,
}
VIDEO_PROCESSOR_COLOR_SPACE :: distinct bit_set[VIDEO_PROCESSOR_COLOR_SPACE_FLAG; u32]
VIDEO_PROCESSOR_ALPHA_FILL_MODE :: enum i32 {
OPAQUE = 0,
BACKGROUND = 1,
DESTINATION = 2,
SOURCE_STREAM = 3,
}
VIDEO_PROCESSOR_OUTPUT_RATE :: enum i32 {
NORMAL = 0,
HALF = 1,
CUSTOM = 2,
}
VIDEO_PROCESSOR_STEREO_FORMAT :: enum i32 {
MONO = 0,
HORIZONTAL = 1,
VERTICAL = 2,
SEPARATE = 3,
MONO_OFFSET = 4,
ROW_INTERLEAVED = 5,
COLUMN_INTERLEAVED = 6,
CHECKERBOARD = 7,
}
VIDEO_PROCESSOR_STEREO_FLIP_MODE :: enum i32 {
NONE = 0,
FRAME0 = 1,
FRAME1 = 2,
}
VIDEO_PROCESSOR_ROTATION :: enum i32 {
IDENTITY = 0,
_90 = 1,
_180 = 2,
_270 = 3,
}
VIDEO_PROCESSOR_STREAM :: struct {
Enable: BOOL,
OutputIndex: u32,
InputFrameOrField: u32,
PastFrames: u32,
FutureFrames: u32,
ppPastSurfaces: ^^IVideoProcessorInputView,
pInputSurface: ^IVideoProcessorInputView,
ppFutureSurfaces: ^^IVideoProcessorInputView,
ppPastSurfacesRight: ^^IVideoProcessorInputView,
pInputSurfaceRight: ^IVideoProcessorInputView,
ppFutureSurfacesRight: ^^IVideoProcessorInputView,
}
IVideoProcessor_UUID_STRING :: "1D7B0652-185F-41C6-85CE-0C5BE3D4AE6C"
IVideoProcessor_UUID := &IID{0x1D7B0652, 0x185F, 0x41C6, {0x85, 0xCE, 0x0C, 0x5B, 0xE3, 0xD4, 0xAE, 0x6C}}
IVideoProcessor :: struct #raw_union {
#subtype id3d11devicechild: IDeviceChild,
using id3d11videoprocessor_vtable: ^IVideoProcessor_VTable,
}
IVideoProcessor_VTable :: struct {
using id3d11devicechild_vtable: IDeviceChild_VTable,
GetContentDesc: proc "system" (this: ^IVideoProcessor, pDesc: ^VIDEO_PROCESSOR_CONTENT_DESC),
GetRateConversionCaps: proc "system" (this: ^IVideoProcessor, pCaps: ^VIDEO_PROCESSOR_RATE_CONVERSION_CAPS),
}
OMAC :: struct {
Omac: [16]u8,
}
AUTHENTICATED_CHANNEL_TYPE :: enum i32 {
D3D11 = 1,
DRIVER_SOFTWARE = 2,
DRIVER_HARDWARE = 3,
}
IAuthenticatedChannel_UUID_STRING :: "3015A308-DCBD-47AA-A747-192486D14D4A"
IAuthenticatedChannel_UUID := &IID{0x3015A308, 0xDCBD, 0x47AA, {0xA7, 0x47, 0x19, 0x24, 0x86, 0xD1, 0x4D, 0x4A}}
IAuthenticatedChannel :: struct #raw_union {
#subtype id3d11devicechild: IDeviceChild,
using id3d11authenticatedchannel_vtable: ^IAuthenticatedChannel_VTable,
}
IAuthenticatedChannel_VTable :: struct {
using id3d11devicechild_vtable: IDeviceChild_VTable,
GetCertificateSize: proc "system" (this: ^IAuthenticatedChannel, pCertificateSize: ^u32) -> HRESULT,
GetCertificate: proc "system" (this: ^IAuthenticatedChannel, CertificateSize: u32, pCertificate: cstring) -> HRESULT,
GetChannelHandle: proc "system" (this: ^IAuthenticatedChannel, pChannelHandle: ^HANDLE),
}
AUTHENTICATED_QUERY_INPUT :: struct {
QueryType: GUID,
hChannel: HANDLE,
SequenceNumber: u32,
}
AUTHENTICATED_QUERY_OUTPUT :: struct {
omac: OMAC,
QueryType: GUID,
hChannel: HANDLE,
SequenceNumber: u32,
ReturnCode: HRESULT,
}
AUTHENTICATED_PROTECTION_FLAG :: enum u32 {
ProtectionEnabled = 0,
OverlayOrFullscreenRequired = 1,
Reserved = 2,
}
AUTHENTICATED_PROTECTION_FLAGS :: distinct bit_set[AUTHENTICATED_PROTECTION_FLAG; u32]
AUTHENTICATED_QUERY_PROTECTION_OUTPUT :: struct {
Output: AUTHENTICATED_QUERY_OUTPUT,
ProtectionFlags: AUTHENTICATED_PROTECTION_FLAGS,
}
AUTHENTICATED_QUERY_CHANNEL_TYPE_OUTPUT :: struct {
Output: AUTHENTICATED_QUERY_OUTPUT,
ChannelType: AUTHENTICATED_CHANNEL_TYPE,
}
AUTHENTICATED_QUERY_DEVICE_HANDLE_OUTPUT :: struct {
Output: AUTHENTICATED_QUERY_OUTPUT,
DeviceHandle: HANDLE,
}
AUTHENTICATED_QUERY_CRYPTO_SESSION_INPUT :: struct {
Input: AUTHENTICATED_QUERY_INPUT,
DecoderHandle: HANDLE,
}
AUTHENTICATED_QUERY_CRYPTO_SESSION_OUTPUT :: struct {
Output: AUTHENTICATED_QUERY_OUTPUT,
DecoderHandle: HANDLE,
CryptoSessionHandle: HANDLE,
DeviceHandle: HANDLE,
}
AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT_OUTPUT :: struct {
Output: AUTHENTICATED_QUERY_OUTPUT,
RestrictedSharedResourceProcessCount: u32,
}
AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_INPUT :: struct {
Input: AUTHENTICATED_QUERY_INPUT,
ProcessIndex: u32,
}
AUTHENTICATED_PROCESS_IDENTIFIER_TYPE :: enum i32 {
UNKNOWN = 0,
DWM = 1,
HANDLE = 2,
}
AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_OUTPUT :: struct {
Output: AUTHENTICATED_QUERY_OUTPUT,
ProcessIndex: u32,
ProcessIdentifier: AUTHENTICATED_PROCESS_IDENTIFIER_TYPE,
ProcessHandle: HANDLE,
}
AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT_OUTPUT :: struct {
Output: AUTHENTICATED_QUERY_OUTPUT,
UnrestrictedProtectedSharedResourceCount: u32,
}
AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_INPUT :: struct {
Input: AUTHENTICATED_QUERY_INPUT,
DeviceHandle: HANDLE,
CryptoSessionHandle: HANDLE,
}
AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_OUTPUT :: struct {
Output: AUTHENTICATED_QUERY_OUTPUT,
DeviceHandle: HANDLE,
CryptoSessionHandle: HANDLE,
OutputIDCount: u32,
}
AUTHENTICATED_QUERY_OUTPUT_ID_INPUT :: struct {
Input: AUTHENTICATED_QUERY_INPUT,
DeviceHandle: HANDLE,
CryptoSessionHandle: HANDLE,
OutputIDIndex: u32,
}
AUTHENTICATED_QUERY_OUTPUT_ID_OUTPUT :: struct {
Output: AUTHENTICATED_QUERY_OUTPUT,
DeviceHandle: HANDLE,
CryptoSessionHandle: HANDLE,
OutputIDIndex: u32,
OutputID: u64,
}
BUS_TYPE :: enum i32 {
OTHER = 0,
PCI = 1,
PCIX = 2,
PCIEXPRESS = 3,
AGP = 4,
NSIDE_OF_CHIPSET = 65536,
RACKS_ON_MOTHER_BOARD_TO_CHIP = 131072,
RACKS_ON_MOTHER_BOARD_TO_SOCKET = 196608,
AUGHTER_BOARD_CONNECTOR = 262144,
AUGHTER_BOARD_CONNECTOR_INSIDE_OF_NUAE = 327680,
ON_STANDARD = -2147483648,
}
AUTHENTICATED_QUERY_ACESSIBILITY_OUTPUT :: struct {
Output: AUTHENTICATED_QUERY_OUTPUT,
BusType: BUS_TYPE,
AccessibleInContiguousBlocks: BOOL,
AccessibleInNonContiguousBlocks: BOOL,
}
AUTHENTICATED_QUERY_ACCESSIBILITY_OUTPUT :: AUTHENTICATED_QUERY_ACESSIBILITY_OUTPUT
AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_COUNT_OUTPUT :: struct {
Output: AUTHENTICATED_QUERY_OUTPUT,
EncryptionGuidCount: u32,
}
AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_INPUT :: struct {
Input: AUTHENTICATED_QUERY_INPUT,
EncryptionGuidIndex: u32,
}
AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_OUTPUT :: struct {
Output: AUTHENTICATED_QUERY_OUTPUT,
EncryptionGuidIndex: u32,
EncryptionGuid: GUID,
}
AUTHENTICATED_QUERY_CURRENT_ACCESSIBILITY_ENCRYPTION_OUTPUT :: struct {
Output: AUTHENTICATED_QUERY_OUTPUT,
EncryptionGuid: GUID,
}
AUTHENTICATED_CONFIGURE_INPUT :: struct {
omac: OMAC,
ConfigureType: GUID,
hChannel: HANDLE,
SequenceNumber: u32,
}
AUTHENTICATED_CONFIGURE_OUTPUT :: struct {
omac: OMAC,
ConfigureType: GUID,
hChannel: HANDLE,
SequenceNumber: u32,
ReturnCode: HRESULT,
}
AUTHENTICATED_CONFIGURE_INITIALIZE_INPUT :: struct {
Parameters: AUTHENTICATED_CONFIGURE_INPUT,
StartSequenceQuery: u32,
StartSequenceConfigure: u32,
}
AUTHENTICATED_CONFIGURE_PROTECTION_INPUT :: struct {
Parameters: AUTHENTICATED_CONFIGURE_INPUT,
Protections: AUTHENTICATED_PROTECTION_FLAGS,
}
AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_INPUT :: struct {
Parameters: AUTHENTICATED_CONFIGURE_INPUT,
DecoderHandle: HANDLE,
CryptoSessionHandle: HANDLE,
DeviceHandle: HANDLE,
}
AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_INPUT :: struct {
Parameters: AUTHENTICATED_CONFIGURE_INPUT,
ProcessType: AUTHENTICATED_PROCESS_IDENTIFIER_TYPE,
ProcessHandle: HANDLE,
AllowAccess: BOOL,
}
AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION_INPUT :: struct {
Parameters: AUTHENTICATED_CONFIGURE_INPUT,
EncryptionGuid: GUID,
}
ICryptoSession_UUID_STRING :: "9B32F9AD-BDCC-40A6-A39D-D5C865845720"
ICryptoSession_UUID := &IID{0x9B32F9AD, 0xBDCC, 0x40A6, {0xA3, 0x9D, 0xD5, 0xC8, 0x65, 0x84, 0x57, 0x20}}
ICryptoSession :: struct #raw_union {
#subtype id3d11devicechild: IDeviceChild,
using id3d11cryptosession_vtable: ^ICryptoSession_VTable,
}
ICryptoSession_VTable :: struct {
using id3d11devicechild_vtable: IDeviceChild_VTable,
GetCryptoType: proc "system" (this: ^ICryptoSession, pCryptoType: ^GUID),
GetDecoderProfile: proc "system" (this: ^ICryptoSession, pDecoderProfile: ^GUID),
GetCertificateSize: proc "system" (this: ^ICryptoSession, pCertificateSize: ^u32) -> HRESULT,
GetCertificate: proc "system" (this: ^ICryptoSession, CertificateSize: u32, pCertificate: cstring) -> HRESULT,
GetCryptoSessionHandle: proc "system" (this: ^ICryptoSession, pCryptoSessionHandle: ^HANDLE),
}
VDOV_DIMENSION :: enum i32 {
UNKNOWN = 0,
TEXTURE2D = 1,
}
TEX2D_VDOV :: struct {
ArraySlice: u32,
}
VIDEO_DECODER_OUTPUT_VIEW_DESC :: struct {
DecodeProfile: GUID,
ViewDimension: VDOV_DIMENSION,
using _: struct #raw_union {
Texture2D: TEX2D_VDOV,
},
}
IVideoDecoderOutputView_UUID_STRING :: "C2931AEA-2A85-4F20-860F-FBA1FD256E18"
IVideoDecoderOutputView_UUID := &IID{0xC2931AEA, 0x2A85, 0x4F20, {0x86, 0x0F, 0xFB, 0xA1, 0xFD, 0x25, 0x6E, 0x18}}
IVideoDecoderOutputView :: struct #raw_union {
#subtype id3d11view: IView,
using id3d11videodecoderoutputview_vtable: ^IVideoDecoderOutputView_VTable,
}
IVideoDecoderOutputView_VTable :: struct {
using id3d11view_vtable: IView_VTable,
GetDesc: proc "system" (this: ^IVideoDecoderOutputView, pDesc: ^VIDEO_DECODER_OUTPUT_VIEW_DESC),
}
VPIV_DIMENSION :: enum i32 {
UNKNOWN = 0,
TEXTURE2D = 1,
}
TEX2D_VPIV :: struct {
MipSlice: u32,
ArraySlice: u32,
}
VIDEO_PROCESSOR_INPUT_VIEW_DESC :: struct {
FourCC: u32,
ViewDimension: VPIV_DIMENSION,
using _: struct #raw_union {
Texture2D: TEX2D_VPIV,
},
}
IVideoProcessorInputView_UUID_STRING :: "11EC5A5F-51DC-4945-AB34-6E8C21300EA5"
IVideoProcessorInputView_UUID := &IID{0x11EC5A5F, 0x51DC, 0x4945, {0xAB, 0x34, 0x6E, 0x8C, 0x21, 0x30, 0x0E, 0xA5}}
IVideoProcessorInputView :: struct #raw_union {
#subtype id3d11view: IView,
using id3d11videoprocessorinputview_vtable: ^IVideoProcessorInputView_VTable,
}
IVideoProcessorInputView_VTable :: struct {
using id3d11view_vtable: IView_VTable,
GetDesc: proc "system" (this: ^IVideoProcessorInputView, pDesc: ^VIDEO_PROCESSOR_INPUT_VIEW_DESC),
}
VPOV_DIMENSION :: enum i32 {
UNKNOWN = 0,
TEXTURE2D = 1,
TEXTURE2DARRAY = 2,
}
TEX2D_VPOV :: struct {
MipSlice: u32,
}
TEX2D_ARRAY_VPOV :: struct {
MipSlice: u32,
FirstArraySlice: u32,
ArraySize: u32,
}
VIDEO_PROCESSOR_OUTPUT_VIEW_DESC :: struct {
ViewDimension: VPOV_DIMENSION,
using _: struct #raw_union {
Texture2D: TEX2D_VPOV,
Texture2DArray: TEX2D_ARRAY_VPOV,
},
}
IVideoProcessorOutputView_UUID_STRING :: "A048285E-25A9-4527-BD93-D68B68C44254"
IVideoProcessorOutputView_UUID := &IID{0xA048285E, 0x25A9, 0x4527, {0xBD, 0x93, 0xD6, 0x8B, 0x68, 0xC4, 0x42, 0x54}}
IVideoProcessorOutputView :: struct #raw_union {
#subtype id3d11view: IView,
using id3d11videoprocessoroutputview_vtable: ^IVideoProcessorOutputView_VTable,
}
IVideoProcessorOutputView_VTable :: struct {
using id3d11view_vtable: IView_VTable,
GetDesc: proc "system" (this: ^IVideoProcessorOutputView, pDesc: ^VIDEO_PROCESSOR_OUTPUT_VIEW_DESC),
}
IVideoContext_UUID_STRING :: "61F21C45-3C0E-4A74-9CEA-67100D9AD5E4"
IVideoContext_UUID := &IID{0x61F21C45, 0x3C0E, 0x4A74, {0x9C, 0xEA, 0x67, 0x10, 0x0D, 0x9A, 0xD5, 0xE4}}
IVideoContext :: struct #raw_union {
#subtype id3d11devicechild: IDeviceChild,
using id3d11videocontext_vtable: ^IVideoContext_VTable,
}
IVideoContext_VTable :: struct {
using id3d11devicechild_vtable: IDeviceChild_VTable,
GetDecoderBuffer: proc "system" (this: ^IVideoContext, pDecoder: ^IVideoDecoder, Type: VIDEO_DECODER_BUFFER_TYPE, pBufferSize: ^u32, ppBuffer: ^rawptr) -> HRESULT,
ReleaseDecoderBuffer: proc "system" (this: ^IVideoContext, pDecoder: ^IVideoDecoder, Type: VIDEO_DECODER_BUFFER_TYPE) -> HRESULT,
DecoderBeginFrame: proc "system" (this: ^IVideoContext, pDecoder: ^IVideoDecoder, pView: ^IVideoDecoderOutputView, ContentKeySize: u32, pContentKey: rawptr) -> HRESULT,
DecoderEndFrame: proc "system" (this: ^IVideoContext, pDecoder: ^IVideoDecoder) -> HRESULT,
SubmitDecoderBuffers: proc "system" (this: ^IVideoContext, pDecoder: ^IVideoDecoder, NumBuffers: u32, pBufferDesc: ^VIDEO_DECODER_BUFFER_DESC) -> HRESULT,
DecoderExtension: proc "system" (this: ^IVideoContext, pDecoder: ^IVideoDecoder, pExtensionData: ^VIDEO_DECODER_EXTENSION) -> APP_DEPRECATED_HRESULT,
VideoProcessorSetOutputTargetRect: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, Enable: BOOL, pRect: ^RECT),
VideoProcessorSetOutputBackgroundColor: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, YCbCr: BOOL, pColor: ^VIDEO_COLOR),
VideoProcessorSetOutputColorSpace: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, pColorSpace: ^VIDEO_PROCESSOR_COLOR_SPACE),
VideoProcessorSetOutputAlphaFillMode: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, AlphaFillMode: VIDEO_PROCESSOR_ALPHA_FILL_MODE, StreamIndex: u32),
VideoProcessorSetOutputConstriction: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, Enable: BOOL, Size: SIZE),
VideoProcessorSetOutputStereoMode: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, Enable: BOOL),
VideoProcessorSetOutputExtension: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, pExtensionGuid: ^GUID, DataSize: u32, pData: rawptr) -> APP_DEPRECATED_HRESULT,
VideoProcessorGetOutputTargetRect: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, Enabled: ^BOOL, pRect: ^RECT),
VideoProcessorGetOutputBackgroundColor: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, pYCbCr: ^BOOL, pColor: ^VIDEO_COLOR),
VideoProcessorGetOutputColorSpace: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, pColorSpace: ^VIDEO_PROCESSOR_COLOR_SPACE),
VideoProcessorGetOutputAlphaFillMode: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, pAlphaFillMode: ^VIDEO_PROCESSOR_ALPHA_FILL_MODE, pStreamIndex: ^u32),
VideoProcessorGetOutputConstriction: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, pEnabled: ^BOOL, pSize: ^SIZE),
VideoProcessorGetOutputStereoMode: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, pEnabled: ^BOOL),
VideoProcessorGetOutputExtension: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, pExtensionGuid: ^GUID, DataSize: u32, pData: rawptr) -> APP_DEPRECATED_HRESULT,
VideoProcessorSetStreamFrameFormat: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, FrameFormat: VIDEO_FRAME_FORMAT),
VideoProcessorSetStreamColorSpace: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, pColorSpace: ^VIDEO_PROCESSOR_COLOR_SPACE),
VideoProcessorSetStreamOutputRate: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, OutputRate: VIDEO_PROCESSOR_OUTPUT_RATE, RepeatFrame: BOOL, pCustomRate: ^dxgi.RATIONAL),
VideoProcessorSetStreamSourceRect: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, Enable: BOOL, pRect: ^RECT),
VideoProcessorSetStreamDestRect: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, Enable: BOOL, pRect: ^RECT),
VideoProcessorSetStreamAlpha: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, Enable: BOOL, Alpha: f32),
VideoProcessorSetStreamPalette: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, Count: u32, pEntries: [^]u32),
VideoProcessorSetStreamPixelAspectRatio: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, Enable: BOOL, pSourceAspectRatio: ^dxgi.RATIONAL, pDestinationAspectRatio: ^dxgi.RATIONAL),
VideoProcessorSetStreamLumaKey: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, Enable: BOOL, Lower: f32, Upper: f32),
VideoProcessorSetStreamStereoFormat: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, Enable: BOOL, Format: VIDEO_PROCESSOR_STEREO_FORMAT, LeftViewFrame0: BOOL, BaseViewFrame0: BOOL, FlipMode: VIDEO_PROCESSOR_STEREO_FLIP_MODE, MonoOffset: i32),
VideoProcessorSetStreamAutoProcessingMode: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, Enable: BOOL),
VideoProcessorSetStreamFilter: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, Filter: VIDEO_PROCESSOR_FILTER, Enable: BOOL, Level: i32),
VideoProcessorSetStreamExtension: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, pExtensionGuid: ^GUID, DataSize: u32, pData: rawptr) -> APP_DEPRECATED_HRESULT,
VideoProcessorGetStreamFrameFormat: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, pFrameFormat: ^VIDEO_FRAME_FORMAT),
VideoProcessorGetStreamColorSpace: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, pColorSpace: ^VIDEO_PROCESSOR_COLOR_SPACE),
VideoProcessorGetStreamOutputRate: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, pOutputRate: ^VIDEO_PROCESSOR_OUTPUT_RATE, pRepeatFrame: ^BOOL, pCustomRate: ^dxgi.RATIONAL),
VideoProcessorGetStreamSourceRect: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, pEnabled: ^BOOL, pRect: ^RECT),
VideoProcessorGetStreamDestRect: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, pEnabled: ^BOOL, pRect: ^RECT),
VideoProcessorGetStreamAlpha: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, pEnabled: ^BOOL, pAlpha: ^f32),
VideoProcessorGetStreamPalette: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, Count: u32, pEntries: [^]u32),
VideoProcessorGetStreamPixelAspectRatio: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, pEnabled: ^BOOL, pSourceAspectRatio: ^dxgi.RATIONAL, pDestinationAspectRatio: ^dxgi.RATIONAL),
VideoProcessorGetStreamLumaKey: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, pEnabled: ^BOOL, pLower: ^f32, pUpper: ^f32),
VideoProcessorGetStreamStereoFormat: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, pEnable: ^BOOL, pFormat: ^VIDEO_PROCESSOR_STEREO_FORMAT, pLeftViewFrame0: ^BOOL, pBaseViewFrame0: ^BOOL, pFlipMode: ^VIDEO_PROCESSOR_STEREO_FLIP_MODE, MonoOffset: ^i32),
VideoProcessorGetStreamAutoProcessingMode: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, pEnabled: ^BOOL),
VideoProcessorGetStreamFilter: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, Filter: VIDEO_PROCESSOR_FILTER, pEnabled: ^BOOL, pLevel: ^i32),
VideoProcessorGetStreamExtension: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, pExtensionGuid: ^GUID, DataSize: u32, pData: rawptr) -> APP_DEPRECATED_HRESULT,
VideoProcessorBlt: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, pView: ^IVideoProcessorOutputView, OutputFrame: u32, StreamCount: u32, pStreams: [^]VIDEO_PROCESSOR_STREAM) -> HRESULT,
NegotiateCryptoSessionKeyExchange: proc "system" (this: ^IVideoContext, pCryptoSession: ^ICryptoSession, DataSize: u32, pData: rawptr) -> HRESULT,
EncryptionBlt: proc "system" (this: ^IVideoContext, pCryptoSession: ^ICryptoSession, pSrcSurface: ^ITexture2D, pDstSurface: ^ITexture2D, IVSize: u32, pIV: rawptr),
DecryptionBlt: proc "system" (this: ^IVideoContext, pCryptoSession: ^ICryptoSession, pSrcSurface: ^ITexture2D, pDstSurface: ^ITexture2D, pEncryptedBlockInfo: ^ENCRYPTED_BLOCK_INFO, ContentKeySize: u32, pContentKey: rawptr, IVSize: u32, pIV: rawptr),
StartSessionKeyRefresh: proc "system" (this: ^IVideoContext, pCryptoSession: ^ICryptoSession, RandomNumberSize: u32, pRandomNumber: rawptr),
FinishSessionKeyRefresh: proc "system" (this: ^IVideoContext, pCryptoSession: ^ICryptoSession),
GetEncryptionBltKey: proc "system" (this: ^IVideoContext, pCryptoSession: ^ICryptoSession, KeySize: u32, pReadbackKey: rawptr) -> HRESULT,
NegotiateAuthenticatedChannelKeyExchange: proc "system" (this: ^IVideoContext, pChannel: ^IAuthenticatedChannel, DataSize: u32, pData: rawptr) -> HRESULT,
QueryAuthenticatedChannel: proc "system" (this: ^IVideoContext, pChannel: ^IAuthenticatedChannel, InputSize: u32, pInput: rawptr, OutputSize: u32, pOutput: rawptr) -> HRESULT,
ConfigureAuthenticatedChannel: proc "system" (this: ^IVideoContext, pChannel: ^IAuthenticatedChannel, InputSize: u32, pInput: rawptr, pOutput: ^AUTHENTICATED_CONFIGURE_OUTPUT) -> HRESULT,
VideoProcessorSetStreamRotation: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, Enable: BOOL, Rotation: VIDEO_PROCESSOR_ROTATION),
VideoProcessorGetStreamRotation: proc "system" (this: ^IVideoContext, pVideoProcessor: ^IVideoProcessor, StreamIndex: u32, pEnable: ^BOOL, pRotation: ^VIDEO_PROCESSOR_ROTATION),
}
IUserDefinedAnnotation_UUID_STRING :: "B2DAAD8B-03D4-4DBF-95EB-32AB4B63D0AB"
IUserDefinedAnnotation_UUID := &IID{0xB2DAAD8B, 0x03D4, 0x4DBF, {0x95, 0xEB, 0x32, 0xAB, 0x4B, 0x63, 0xD0, 0xAB}}
IUserDefinedAnnotation :: struct #raw_union {
#subtype iunknown: IUnknown,
using id3d11userdefinedannotation_vtable: ^IUserDefinedAnnotation_VTable,
}
IUserDefinedAnnotation_VTable :: struct {
using iunknown_vtable : IUnknown_VTable,
BeginEvent: proc "system" (this: ^IUserDefinedAnnotation, Name: LPCWSTR) -> i32,
EndEvent: proc "system" (this: ^IUserDefinedAnnotation) -> i32,
GetStatus: proc "system" (this: ^IUserDefinedAnnotation) -> i32,
SetMarker: proc "system" (this: ^IUserDefinedAnnotation, Name: LPCWSTR),
}
IVideoDevice_UUID_STRING :: "10EC4D5B-975A-4689-B9E4-D0AAC30FE333"
IVideoDevice_UUID := &IID{0x10EC4D5B, 0x975A, 0x4689, {0xB9, 0xE4, 0xD0, 0xAA, 0xC3, 0x0F, 0xE3, 0x33}}
IVideoDevice :: struct #raw_union {
#subtype iunknown: IUnknown,
using id3d11videodevice_vtable: ^IVideoDevice_VTable,
}
IVideoDevice_VTable :: struct {
using iunknown_vtable: IUnknown_VTable,
CreateVideoDecoder: proc "system" (this: ^IVideoDevice, pVideoDesc: ^VIDEO_DECODER_DESC, pConfig: ^VIDEO_DECODER_CONFIG, ppDecoder: ^^IVideoDecoder) -> HRESULT,
CreateVideoProcessor: proc "system" (this: ^IVideoDevice, pEnum: ^IVideoProcessorEnumerator, RateConversionIndex: u32, ppVideoProcessor: ^^IVideoProcessor) -> HRESULT,
CreateAuthenticatedChannel: proc "system" (this: ^IVideoDevice, ChannelType: AUTHENTICATED_CHANNEL_TYPE, ppAuthenticatedChannel: ^^IAuthenticatedChannel) -> HRESULT,
CreateCryptoSession: proc "system" (this: ^IVideoDevice, pCryptoType: ^GUID, pDecoderProfile: ^GUID, pKeyExchangeType: ^GUID, ppCryptoSession: ^^ICryptoSession) -> HRESULT,
CreateVideoDecoderOutputView: proc "system" (this: ^IVideoDevice, pResource: ^IResource, pDesc: ^VIDEO_DECODER_OUTPUT_VIEW_DESC, ppVDOVView: ^^IVideoDecoderOutputView) -> HRESULT,
CreateVideoProcessorInputView: proc "system" (this: ^IVideoDevice, pResource: ^IResource, pEnum: ^IVideoProcessorEnumerator, pDesc: ^VIDEO_PROCESSOR_INPUT_VIEW_DESC, ppVPIView: ^^IVideoProcessorInputView) -> HRESULT,
CreateVideoProcessorOutputView: proc "system" (this: ^IVideoDevice, pResource: ^IResource, pEnum: ^IVideoProcessorEnumerator, pDesc: ^VIDEO_PROCESSOR_OUTPUT_VIEW_DESC, ppVPOView: ^^IVideoProcessorOutputView) -> HRESULT,
CreateVideoProcessorEnumerator: proc "system" (this: ^IVideoDevice, pDesc: ^VIDEO_PROCESSOR_CONTENT_DESC, ppEnum: ^^IVideoProcessorEnumerator) -> HRESULT,
GetVideoDecoderProfileCount: proc "system" (this: ^IVideoDevice) -> u32,
GetVideoDecoderProfile: proc "system" (this: ^IVideoDevice, Index: u32, pDecoderProfile: ^GUID) -> HRESULT,
CheckVideoDecoderFormat: proc "system" (this: ^IVideoDevice, pDecoderProfile: ^GUID, Format: dxgi.FORMAT, pSupported: ^BOOL) -> HRESULT,
GetVideoDecoderConfigCount: proc "system" (this: ^IVideoDevice, pDesc: ^VIDEO_DECODER_DESC, pCount: ^u32) -> HRESULT,
GetVideoDecoderConfig: proc "system" (this: ^IVideoDevice, pDesc: ^VIDEO_DECODER_DESC, Index: u32, pConfig: ^VIDEO_DECODER_CONFIG) -> HRESULT,
GetContentProtectionCaps: proc "system" (this: ^IVideoDevice, pCryptoType: ^GUID, pDecoderProfile: ^GUID, pCaps: ^VIDEO_CONTENT_PROTECTION_CAPS) -> HRESULT,
CheckCryptoKeyExchange: proc "system" (this: ^IVideoDevice, pCryptoType: ^GUID, pDecoderProfile: ^GUID, Index: u32, pKeyExchangeType: ^GUID) -> HRESULT,
SetPrivateData: proc "system" (this: ^IVideoDevice, guid: ^GUID, DataSize: u32, pData: rawptr) -> HRESULT,
SetPrivateDataInterface: proc "system" (this: ^IVideoDevice, guid: ^GUID, pData: ^IUnknown) -> HRESULT,
}
IDevice_UUID_STRING :: "DB6F6DDB-AC77-4E88-8253-819DF9BBF140"
IDevice_UUID := &IID{0xDB6F6DDB, 0xAC77, 0x4E88, {0x82, 0x53, 0x81, 0x9D, 0xF9, 0xBB, 0xF1, 0x40}}
IDevice :: struct #raw_union {
#subtype iunknown: IUnknown,
using id3d11device_vtable: ^IDevice_VTable,
}
IDevice_VTable :: struct {
using iunknown_vtable: IUnknown_VTable,
CreateBuffer: proc "system" (this: ^IDevice, pDesc: ^BUFFER_DESC, pInitialData: ^SUBRESOURCE_DATA, ppBuffer: ^^IBuffer) -> HRESULT,
CreateTexture1D: proc "system" (this: ^IDevice, pDesc: ^TEXTURE1D_DESC, pInitialData: ^SUBRESOURCE_DATA, ppTexture1D: ^^ITexture1D) -> HRESULT,
CreateTexture2D: proc "system" (this: ^IDevice, pDesc: ^TEXTURE2D_DESC, pInitialData: ^SUBRESOURCE_DATA, ppTexture2D: ^^ITexture2D) -> HRESULT,
CreateTexture3D: proc "system" (this: ^IDevice, pDesc: ^TEXTURE3D_DESC, pInitialData: ^SUBRESOURCE_DATA, ppTexture3D: ^^ITexture3D) -> HRESULT,
CreateShaderResourceView: proc "system" (this: ^IDevice, pResource: ^IResource, pDesc: ^SHADER_RESOURCE_VIEW_DESC, ppSRView: ^^IShaderResourceView) -> HRESULT,
CreateUnorderedAccessView: proc "system" (this: ^IDevice, pResource: ^IResource, pDesc: ^UNORDERED_ACCESS_VIEW_DESC, ppUAView: ^^IUnorderedAccessView) -> HRESULT,
CreateRenderTargetView: proc "system" (this: ^IDevice, pResource: ^IResource, pDesc: ^RENDER_TARGET_VIEW_DESC, ppRTView: ^^IRenderTargetView) -> HRESULT,
CreateDepthStencilView: proc "system" (this: ^IDevice, pResource: ^IResource, pDesc: ^DEPTH_STENCIL_VIEW_DESC, ppDepthStencilView: ^^IDepthStencilView) -> HRESULT,
CreateInputLayout: proc "system" (this: ^IDevice, pInputElementDescs: [^]INPUT_ELEMENT_DESC, NumElements: u32, pShaderBytecodeWithInputSignature: rawptr, BytecodeLength: SIZE_T, ppInputLayout: ^^IInputLayout) -> HRESULT,
CreateVertexShader: proc "system" (this: ^IDevice, pShaderBytecode: rawptr, BytecodeLength: SIZE_T, pClassLinkage: ^IClassLinkage, ppVertexShader: ^^IVertexShader) -> HRESULT,
CreateGeometryShader: proc "system" (this: ^IDevice, pShaderBytecode: rawptr, BytecodeLength: SIZE_T, pClassLinkage: ^IClassLinkage, ppGeometryShader: ^^IGeometryShader) -> HRESULT,
CreateGeometryShaderWithStreamOutput: proc "system" (this: ^IDevice, pShaderBytecode: rawptr, BytecodeLength: SIZE_T, pSODeclaration: ^SO_DECLARATION_ENTRY, NumEntries: u32, pBufferStrides: [^]u32, NumStrides: u32, RasterizedStream: u32, pClassLinkage: ^IClassLinkage, ppGeometryShader: ^^IGeometryShader) -> HRESULT,
CreatePixelShader: proc "system" (this: ^IDevice, pShaderBytecode: rawptr, BytecodeLength: SIZE_T, pClassLinkage: ^IClassLinkage, ppPixelShader: ^^IPixelShader) -> HRESULT,
CreateHullShader: proc "system" (this: ^IDevice, pShaderBytecode: rawptr, BytecodeLength: SIZE_T, pClassLinkage: ^IClassLinkage, ppHullShader: ^^IHullShader) -> HRESULT,
CreateDomainShader: proc "system" (this: ^IDevice, pShaderBytecode: rawptr, BytecodeLength: SIZE_T, pClassLinkage: ^IClassLinkage, ppDomainShader: ^^IDomainShader) -> HRESULT,
CreateComputeShader: proc "system" (this: ^IDevice, pShaderBytecode: rawptr, BytecodeLength: SIZE_T, pClassLinkage: ^IClassLinkage, ppComputeShader: ^^IComputeShader) -> HRESULT,
CreateClassLinkage: proc "system" (this: ^IDevice, ppLinkage: ^^IClassLinkage) -> HRESULT,
CreateBlendState: proc "system" (this: ^IDevice, pBlendStateDesc: ^BLEND_DESC, ppBlendState: ^^IBlendState) -> HRESULT,
CreateDepthStencilState: proc "system" (this: ^IDevice, pDepthStencilDesc: ^DEPTH_STENCIL_DESC, ppDepthStencilState: ^^IDepthStencilState) -> HRESULT,
CreateRasterizerState: proc "system" (this: ^IDevice, pRasterizerDesc: ^RASTERIZER_DESC, ppRasterizerState: ^^IRasterizerState) -> HRESULT,
CreateSamplerState: proc "system" (this: ^IDevice, pSamplerDesc: ^SAMPLER_DESC, ppSamplerState: ^^ISamplerState) -> HRESULT,
CreateQuery: proc "system" (this: ^IDevice, pQueryDesc: ^QUERY_DESC, ppQuery: ^^IQuery) -> HRESULT,
CreatePredicate: proc "system" (this: ^IDevice, pPredicateDesc: ^QUERY_DESC, ppPredicate: ^^IPredicate) -> HRESULT,
CreateCounter: proc "system" (this: ^IDevice, pCounterDesc: ^COUNTER_DESC, ppCounter: ^^ICounter) -> HRESULT,
CreateDeferredContext: proc "system" (this: ^IDevice, ContextFlags: u32, ppDeferredContext: ^^IDeviceContext) -> HRESULT,
OpenSharedResource: proc "system" (this: ^IDevice, hResource: HANDLE, ReturnedInterface: ^IID, ppResource: ^rawptr) -> HRESULT,
CheckFormatSupport: proc "system" (this: ^IDevice, Format: dxgi.FORMAT, pFormatSupport: ^u32) -> HRESULT,
CheckMultisampleQualityLevels: proc "system" (this: ^IDevice, Format: dxgi.FORMAT, SampleCount: u32, pNumQualityLevels: [^]u32) -> HRESULT,
CheckCounterInfo: proc "system" (this: ^IDevice, pCounterInfo: ^COUNTER_INFO),
CheckCounter: proc "system" (this: ^IDevice, pDesc: ^COUNTER_DESC, pType: ^COUNTER_TYPE, pActiveCounters: ^u32, szName: cstring, pNameLength: ^u32, szUnits: cstring, pUnitsLength: ^u32, szDescription: cstring, pDescriptionLength: ^u32) -> HRESULT,
CheckFeatureSupport: proc "system" (this: ^IDevice, Feature: FEATURE, pFeatureSupportData: rawptr, FeatureSupportDataSize: u32) -> HRESULT,
GetPrivateData: proc "system" (this: ^IDevice, guid: ^GUID, pDataSize: ^u32, pData: rawptr) -> HRESULT,
SetPrivateData: proc "system" (this: ^IDevice, guid: ^GUID, DataSize: u32, pData: rawptr) -> HRESULT,
SetPrivateDataInterface: proc "system" (this: ^IDevice, guid: ^GUID, pData: ^IUnknown) -> HRESULT,
GetFeatureLevel: proc "system" (this: ^IDevice) -> FEATURE_LEVEL,
GetCreationFlags: proc "system" (this: ^IDevice) -> u32,
GetDeviceRemovedReason: proc "system" (this: ^IDevice) -> HRESULT,
GetImmediateContext: proc "system" (this: ^IDevice, ppImmediateContext: ^^IDeviceContext),
SetExceptionMode: proc "system" (this: ^IDevice, RaiseFlags: RAISE_FLAGS) -> HRESULT,
GetExceptionMode: proc "system" (this: ^IDevice) -> u32,
}
CREATE_DEVICE_FLAGS :: distinct bit_set[CREATE_DEVICE_FLAG; u32]
CREATE_DEVICE_FLAG :: enum u32 {
SINGLETHREADED = 0,
DEBUG = 1,
SWITCH_TO_REF = 2,
PREVENT_INTERNAL_THREADING_OPTIMIZATIONS = 3,
BGRA_SUPPORT = 5,
DEBUGGABLE = 6,
PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY = 7,
DISABLE_GPU_TIMEOUT = 8,
VIDEO_SUPPORT = 11,
}
PFN_CREATE_DEVICE :: #type proc "c" (a0: ^dxgi.IAdapter, a1: DRIVER_TYPE, a2: HMODULE, a3: u32, a4: ^FEATURE_LEVEL, a5: u32, a6: u32, a7: ^^IDevice, a8: ^FEATURE_LEVEL, a9: ^^IDeviceContext) -> HRESULT
PFN_CREATE_DEVICE_AND_SWAP_CHAIN :: #type proc "c" (a0: ^dxgi.IAdapter, a1: DRIVER_TYPE, a2: HMODULE, a3: u32, a4: ^FEATURE_LEVEL, a5: u32, a6: u32, a7: ^dxgi.SWAP_CHAIN_DESC, a8: ^^dxgi.ISwapChain, a9: ^^IDevice, a10: ^FEATURE_LEVEL, a11: ^^IDeviceContext) -> HRESULT
SHADER_VERSION_TYPE :: enum i32 {
PIXEL_SHADER = 0,
VERTEX_SHADER = 1,
GEOMETRY_SHADER = 2,
HULL_SHADER = 3,
DOMAIN_SHADER = 4,
COMPUTE_SHADER = 5,
RESERVED0 = 65520,
}
SIGNATURE_PARAMETER_DESC :: struct {
SemanticName: LPCSTR,
SemanticIndex: u32,
Register: u32,
SystemValueType: NAME,
ComponentType: REGISTER_COMPONENT_TYPE,
Mask: u8,
ReadWriteMask: u8,
Stream: u32,
MinPrecision: MIN_PRECISION,
}
SHADER_BUFFER_DESC :: struct {
Name: LPCSTR,
Type: CBUFFER_TYPE,
Variables: u32,
Size: u32,
uFlags: SHADER_CBUFFER_FLAGS,
}
SHADER_VARIABLE_DESC :: struct {
Name: LPCSTR,
StartOffset: u32,
Size: u32,
uFlags: SHADER_VARIABLE_FLAGS,
DefaultValue: rawptr,
StartTexture: u32,
TextureSize: u32,
StartSampler: u32,
SamplerSize: u32,
}
SHADER_TYPE_DESC :: struct {
Class: SHADER_VARIABLE_CLASS,
Type: SHADER_VARIABLE_TYPE,
Rows: u32,
Columns: u32,
Elements: u32,
Members: u32,
Offset: u32,
Name: LPCSTR,
}
SHADER_DESC :: struct {
Version: u32,
Creator: LPCSTR,
Flags: u32,
ConstantBuffers: u32,
BoundResources: u32,
InputParameters: u32,
OutputParameters: u32,
InstructionCount: u32,
TempRegisterCount: u32,
TempArrayCount: u32,
DefCount: u32,
DclCount: u32,
TextureNormalInstructions: u32,
TextureLoadInstructions: u32,
TextureCompInstructions: u32,
TextureBiasInstructions: u32,
TextureGradientInstructions: u32,
FloatInstructionCount: u32,
IntInstructionCount: u32,
UintInstructionCount: u32,
StaticFlowControlCount: u32,
DynamicFlowControlCount: u32,
MacroInstructionCount: u32,
ArrayInstructionCount: u32,
CutInstructionCount: u32,
EmitInstructionCount: u32,
GSOutputTopology: PRIMITIVE_TOPOLOGY,
GSMaxOutputVertexCount: u32,
InputPrimitive: PRIMITIVE,
PatchConstantParameters: u32,
cGSInstanceCount: u32,
cControlPoints: u32,
HSOutputPrimitive: TESSELLATOR_OUTPUT_PRIMITIVE,
HSPartitioning: TESSELLATOR_PARTITIONING,
TessellatorDomain: TESSELLATOR_DOMAIN,
cBarrierInstructions: u32,
cInterlockedInstructions: u32,
cTextureStoreInstructions: u32,
}
SHADER_INPUT_BIND_DESC :: struct {
Name: LPCSTR,
Type: SHADER_INPUT_TYPE,
BindPoint: u32,
BindCount: u32,
uFlags: SHADER_INPUT_FLAGS,
ReturnType: RESOURCE_RETURN_TYPE,
Dimension: SRV_DIMENSION,
NumSamples: u32,
}
LIBRARY_DESC :: struct {
Creator: LPCSTR,
Flags: u32,
FunctionCount: u32,
}
FUNCTION_DESC :: struct {
Version: u32,
Creator: LPCSTR,
Flags: u32,
ConstantBuffers: u32,
BoundResources: u32,
InstructionCount: u32,
TempRegisterCount: u32,
TempArrayCount: u32,
DefCount: u32,
DclCount: u32,
TextureNormalInstructions: u32,
TextureLoadInstructions: u32,
TextureCompInstructions: u32,
TextureBiasInstructions: u32,
TextureGradientInstructions: u32,
FloatInstructionCount: u32,
IntInstructionCount: u32,
UintInstructionCount: u32,
StaticFlowControlCount: u32,
DynamicFlowControlCount: u32,
MacroInstructionCount: u32,
ArrayInstructionCount: u32,
MovInstructionCount: u32,
MovcInstructionCount: u32,
ConversionInstructionCount: u32,
BitwiseInstructionCount: u32,
MinFeatureLevel: FEATURE_LEVEL,
RequiredFeatureFlags: SHADER_REQUIRES_FLAGS,
Name: LPCSTR,
FunctionParameterCount: i32,
HasReturn: BOOL,
Has10Level9VertexShader: BOOL,
Has10Level9PixelShader: BOOL,
}
PARAMETER_DESC :: struct {
Name: LPCSTR,
SemanticName: LPCSTR,
Type: SHADER_VARIABLE_TYPE,
Class: SHADER_VARIABLE_CLASS,
Rows: u32,
Columns: u32,
InterpolationMode: INTERPOLATION_MODE,
Flags: PARAMETER_FLAGS,
FirstInRegister: u32,
FirstInComponent: u32,
FirstOutRegister: u32,
FirstOutComponent: u32,
}
IModule :: struct #raw_union {
#subtype iunknown: IUnknown,
using id3d11module_vtable: ^IModule_VTable,
}
IModule_VTable :: struct {
using iunknown_vtable: IUnknown_VTable,
CreateInstance: proc "system" (this: ^IModule, pNamespace: LPCSTR, ppModuleInstance: ^^IModuleInstance) -> HRESULT,
}
IModuleInstance :: struct #raw_union {
#subtype iunknown: IUnknown,
using id3d11moduleinstance_vtable: ^IModuleInstance_VTable,
}
IModuleInstance_VTable :: struct {
using iunknown_vtable: IUnknown_VTable,
BindConstantBuffer: proc "system" (this: ^IModuleInstance, uSrcSlot: u32, uDstSlot: u32, cbDstOffset: u32) -> HRESULT,
BindConstantBufferByName: proc "system" (this: ^IModuleInstance, pName: LPCSTR, uDstSlot: u32, cbDstOffset: u32) -> HRESULT,
BindResource: proc "system" (this: ^IModuleInstance, uSrcSlot: u32, uDstSlot: u32, uCount: u32) -> HRESULT,
BindResourceByName: proc "system" (this: ^IModuleInstance, pName: LPCSTR, uDstSlot: u32, uCount: u32) -> HRESULT,
BindSampler: proc "system" (this: ^IModuleInstance, uSrcSlot: u32, uDstSlot: u32, uCount: u32) -> HRESULT,
BindSamplerByName: proc "system" (this: ^IModuleInstance, pName: LPCSTR, uDstSlot: u32, uCount: u32) -> HRESULT,
BindUnorderedAccessView: proc "system" (this: ^IModuleInstance, uSrcSlot: u32, uDstSlot: u32, uCount: u32) -> HRESULT,
BindUnorderedAccessViewByName: proc "system" (this: ^IModuleInstance, pName: LPCSTR, uDstSlot: u32, uCount: u32) -> HRESULT,
BindResourceAsUnorderedAccessView: proc "system" (this: ^IModuleInstance, uSrcSrvSlot: u32, uDstUavSlot: u32, uCount: u32) -> HRESULT,
BindResourceAsUnorderedAccessViewByName: proc "system" (this: ^IModuleInstance, pSrvName: LPCSTR, uDstUavSlot: u32, uCount: u32) -> HRESULT,
}
ID3D11ShaderReflectionType_UUID_STRING :: "6E6FFA6A-9BAE-4613-A51E-91652D508C21"
ID3D11ShaderReflectionType_UUID := &IID{0x6E6FFA6A, 0x9BAE, 0x4613, {0xA5, 0x1E, 0x91, 0x65, 0x2D, 0x50, 0x8C, 0x21}}
IShaderReflectionType :: struct {
using vtable: ^IShaderReflectionType_VTable,
}
IShaderReflectionType_VTable :: struct {
GetDesc: proc "system" (this: ^IShaderReflectionType, pDesc: ^SHADER_TYPE_DESC) -> HRESULT,
GetMemberTypeByIndex: proc "system" (this: ^IShaderReflectionType, Index: u32) -> ^IShaderReflectionType,
GetMemberTypeByName: proc "system" (this: ^IShaderReflectionType, Name: LPCSTR) -> ^IShaderReflectionType,
GetMemberTypeName: proc "system" (this: ^IShaderReflectionType, Index: u32) -> LPCSTR,
IsEqual: proc "system" (this: ^IShaderReflectionType, pType: ^IShaderReflectionType) -> HRESULT,
GetSubType: proc "system" (this: ^IShaderReflectionType) -> ^IShaderReflectionType,
GetBaseClass: proc "system" (this: ^IShaderReflectionType) -> ^IShaderReflectionType,
GetNumInterfaces: proc "system" (this: ^IShaderReflectionType) -> u32,
GetInterfaceByIndex: proc "system" (this: ^IShaderReflectionType, uIndex: u32) -> ^IShaderReflectionType,
IsOfType: proc "system" (this: ^IShaderReflectionType, pType: ^IShaderReflectionType) -> HRESULT,
ImplementsInterface: proc "system" (this: ^IShaderReflectionType, pBase: ^IShaderReflectionType) -> HRESULT,
}
ID3D11ShaderReflectionVariable_UUID_STRING :: "51F23923-F3E5-4BD1-91CB-606177D8DB4C"
ID3D11ShaderReflectionVariable_UUID := &IID{0x51F23923, 0xF3E5, 0x4BD1, {0x91, 0xCB, 0x60, 0x61, 0x77, 0xD8, 0xDB, 0x4C}}
IShaderReflectionVariable :: struct {
using vtable: ^IShaderReflectionVariable_VTable,
}
IShaderReflectionVariable_VTable :: struct {
GetDesc: proc "system" (this: ^IShaderReflectionVariable, pDesc: ^SHADER_VARIABLE_DESC) -> HRESULT,
GetType: proc "system" (this: ^IShaderReflectionVariable) -> ^IShaderReflectionType,
GetBuffer: proc "system" (this: ^IShaderReflectionVariable) -> ^IShaderReflectionConstantBuffer,
GetInterfaceSlot: proc "system" (this: ^IShaderReflectionVariable, uArrayIndex: u32) -> u32,
}
ID3D11ShaderReflectionConstantBuffer_UUID_STRING :: "EB62D63D-93DD-4318-8AE8-C6F83AD371B8"
ID3D11ShaderReflectionConstantBuffer_UUID := &IID{0xEB62D63D, 0x93DD, 0x4318, {0x8A, 0xE8, 0xC6, 0xF8, 0x3A, 0xD3, 0x71, 0xB8}}
IShaderReflectionConstantBuffer :: struct {
using vtable: ^IShaderReflectionConstantBuffer_VTable,
}
IShaderReflectionConstantBuffer_VTable :: struct {
GetDesc: proc "system" (this: ^IShaderReflectionConstantBuffer, pDesc: ^SHADER_BUFFER_DESC) -> HRESULT,
GetVariableByIndex: proc "system" (this: ^IShaderReflectionConstantBuffer, Index: u32) -> ^IShaderReflectionVariable,
GetVariableByName: proc "system" (this: ^IShaderReflectionConstantBuffer, Name: LPCSTR) -> ^IShaderReflectionVariable,
}
ID3D11ShaderReflection_UUID_STRING :: "8D536CA1-0CCA-4956-A837-786963755584"
ID3D11ShaderReflection_UUID := &IID{0x8D536CA1, 0x0CCA, 0x4956, {0xA8, 0x37, 0x78, 0x69, 0x63, 0x75, 0x55, 0x84}}
IShaderReflection :: struct #raw_union {
#subtype iunknown: IUnknown,
using id3d11shaderreflection_vtable: ^IShaderReflection_VTable,
}
IShaderReflection_VTable :: struct {
using iunknown_vtable: IUnknown_VTable,
GetDesc: proc "system" (this: ^IShaderReflection, pDesc: ^SHADER_DESC) -> HRESULT,
GetConstantBufferByIndex: proc "system" (this: ^IShaderReflection, Index: u32) -> ^IShaderReflectionConstantBuffer,
GetConstantBufferByName: proc "system" (this: ^IShaderReflection, Name: LPCSTR) -> ^IShaderReflectionConstantBuffer,
GetResourceBindingDesc: proc "system" (this: ^IShaderReflection, ResourceIndex: u32, pDesc: ^SHADER_INPUT_BIND_DESC) -> HRESULT,
GetInputParameterDesc: proc "system" (this: ^IShaderReflection, ParameterIndex: u32, pDesc: ^SIGNATURE_PARAMETER_DESC) -> HRESULT,
GetOutputParameterDesc: proc "system" (this: ^IShaderReflection, ParameterIndex: u32, pDesc: ^SIGNATURE_PARAMETER_DESC) -> HRESULT,
GetPatchConstantParameterDesc: proc "system" (this: ^IShaderReflection, ParameterIndex: u32, pDesc: ^SIGNATURE_PARAMETER_DESC) -> HRESULT,
GetVariableByName: proc "system" (this: ^IShaderReflection, Name: LPCSTR) -> ^IShaderReflectionVariable,
GetResourceBindingDescByName: proc "system" (this: ^IShaderReflection, Name: LPCSTR, pDesc: ^SHADER_INPUT_BIND_DESC) -> HRESULT,
GetMovInstructionCount: proc "system" (this: ^IShaderReflection) -> u32,
GetMovcInstructionCount: proc "system" (this: ^IShaderReflection) -> u32,
GetConversionInstructionCount: proc "system" (this: ^IShaderReflection) -> u32,
GetBitwiseInstructionCount: proc "system" (this: ^IShaderReflection) -> u32,
GetGSInputPrimitive: proc "system" (this: ^IShaderReflection) -> PRIMITIVE,
IsSampleFrequencyShader: proc "system" (this: ^IShaderReflection) -> BOOL,
GetNumInterfaceSlots: proc "system" (this: ^IShaderReflection) -> u32,
GetMinFeatureLevel: proc "system" (this: ^IShaderReflection, pLevel: ^FEATURE_LEVEL) -> HRESULT,
GetThreadGroupSize: proc "system" (this: ^IShaderReflection, pSizeX: ^u32, pSizeY: ^u32, pSizeZ: ^u32) -> u32,
GetRequiresFlags: proc "system" (this: ^IShaderReflection) -> SHADER_REQUIRES_FLAGS,
}
ID3D11LibraryReflection_UUID_STRING :: "54384F1B-5B3E-4BB7-AE01-60BA3097CBB6"
ID3D11LibraryReflection_UUID := &IID{0x54384F1B, 0x5B3E, 0x4BB7, {0xAE, 0x1, 0x60, 0xBA, 0x30, 0x97, 0xCD, 0xB6}}
ILibraryReflection :: struct #raw_union {
#subtype iunknown: IUnknown,
using id3d11libraryreflection_vtable: ^ILibraryReflection_VTable,
}
ILibraryReflection_VTable :: struct {
using iunknown_vtable: IUnknown_VTable,
GetDesc: proc "system" (this: ^ILibraryReflection, pDesc: ^LIBRARY_DESC) -> HRESULT,
GetFunctionByIndex: proc "system" (this: ^ILibraryReflection, FunctionIndex: i32) -> ^IFunctionReflection,
}
ID3D11FunctionReflection_UUID_STRING :: "207BCECB-D683-4A06-A8A3-9B149B9F73A4"
ID3D11FunctionReflection_UUID := &IID{0x207BCECB, 0xD683, 0x4A06, {0xA8, 0xA3, 0x9B, 0x14, 0x9B, 0x9F, 0x73, 0xA4}}
IFunctionReflection :: struct {
using vtable: ^IFunctionReflection_VTable,
}
IFunctionReflection_VTable :: struct {
GetDesc: proc "system" (this: ^IFunctionReflection, pDesc: ^FUNCTION_DESC) -> HRESULT,
GetConstantBufferByIndex: proc "system" (this: ^IFunctionReflection, BufferIndex: u32) -> ^IShaderReflectionConstantBuffer,
GetConstantBufferByName: proc "system" (this: ^IFunctionReflection, Name: LPCSTR) -> ^IShaderReflectionConstantBuffer,
GetResourceBindingDesc: proc "system" (this: ^IFunctionReflection, ResourceIndex: u32, pDesc: ^SHADER_INPUT_BIND_DESC) -> HRESULT,
GetVariableByName: proc "system" (this: ^IFunctionReflection, Name: LPCSTR) -> ^IShaderReflectionVariable,
GetResourceBindingDescByName: proc "system" (this: ^IFunctionReflection, Name: LPCSTR, pDesc: ^SHADER_INPUT_BIND_DESC) -> HRESULT,
GetFunctionParameter: proc "system" (this: ^IFunctionReflection, ParameterIndex: i32) -> ^IFunctionParameterReflection,
}
ID3D11FunctionParameterReflection_UUID_STRING :: "42757488-334F-47FE-982E-1A65D08CC462"
ID3D11FunctionParameterReflection_UUID := &IID{0x42757488, 0x334f, 0x47FE, {0x98, 0x2E, 0x1A, 0x65, 0xD0, 0x8C, 0xC4, 0x62}}
IFunctionParameterReflection :: struct {
using vtable: ^IFunctionParameterReflection_VTable,
}
IFunctionParameterReflection_VTable :: struct {
GetDesc: proc "system" (this: ^IFunctionParameterReflection, pDesc: ^PARAMETER_DESC) -> HRESULT,
}
ILinkingNode :: struct {
using iunknown: IUnknown,
}
IFunctionLinkingGraph :: struct #raw_union {
#subtype iunknown: IUnknown,
using id3d11functionlinkinggraph_vtable: ^IFunctionLinkingGraph_VTable,
}
IFunctionLinkingGraph_VTable :: struct {
using iunknown_vtable: IUnknown_VTable,
CreateModuleInstance: proc "system" (this: ^IFunctionLinkingGraph, ppModuleInstance: ^^IModuleInstance, ppErrorBuffer: ^^IBlob) -> HRESULT,
SetInputSignature: proc "system" (this: ^IFunctionLinkingGraph, pInputParameters: [^]PARAMETER_DESC, cInputParameters: u32, ppInputNode: ^^ILinkingNode) -> HRESULT,
SetOutputSignature: proc "system" (this: ^IFunctionLinkingGraph, pOutputParameters: [^]PARAMETER_DESC, cOutputParameters: u32, ppOutputNode: ^^ILinkingNode) -> HRESULT,
CallFunction: proc "system" (this: ^IFunctionLinkingGraph, pModuleInstanceNamespace: LPCSTR, pModuleWithFunctionPrototype: ^IModule, pFunctionName: LPCSTR, ppCallNode: ^^ILinkingNode) -> HRESULT,
PassValue: proc "system" (this: ^IFunctionLinkingGraph, pSrcNode: ^ILinkingNode, SrcParameterIndex: i32, pDstNode: ^ILinkingNode, DstParameterIndex: i32) -> HRESULT,
PassValueWithSwizzle: proc "system" (this: ^IFunctionLinkingGraph, pSrcNode: ^ILinkingNode, SrcParameterIndex: i32, pSrcSwizzle: ^u8, pDstNode: ^ILinkingNode, DstParameterIndex: i32, pDstSwizzle: ^u8) -> HRESULT,
GetLastError: proc "system" (this: ^IFunctionLinkingGraph, ppErrorBuffer: ^^IBlob) -> HRESULT,
GenerateHlsl: proc "system" (this: ^IFunctionLinkingGraph, uFlags: u32, ppBuffer: ^^IBlob) -> HRESULT,
}
IDebug_UUID_STRING :: "79CF2233-7536-4948-9D36-1E4692DC5760"
IDebug_UUID := &IID{0x79CF2233, 0x7536, 0x4948, {0x9D, 0x36, 0x1E, 0x46, 0x92, 0xDC, 0x57, 0x60}}
IDebug :: struct #raw_union {
#subtype iunknown: IUnknown,
using id3d11debug_vtable: ^IDebug_VTable,
}
RLDO_FLAGS :: distinct bit_set[RLDO_FLAG; u32]
RLDO_FLAG :: enum u32 {
SUMMARY = 0,
DETAIL = 1,
IGNORE_INTERNAL = 2,
}
DEBUG_FEATURES :: distinct bit_set[DEBUG_FEATURE; u32]
DEBUG_FEATURE :: enum u32 {
FLUSH_PER_RENDER_OP = 0,
FINISH_PER_RENDER_OP = 1,
FEATURE_PRESENT_PER_RENDER_OP = 2,
}
IDebug_VTable :: struct {
using iunkown_vtable: IUnknown_VTable,
SetFeatureMask: proc "system" (this: ^IDebug, mask: DEBUG_FEATURES) -> HRESULT,
GetFeatureMask: proc "system" (this: ^IDebug) -> DEBUG_FEATURES,
SetPresentPerRenderOpDelay: proc "system" (this: ^IDebug, Milliseconds: u32) -> HRESULT,
GetPresentPerRenderOpDelay: proc "system" (this: ^IDebug) -> u32,
SetSwapChain: proc "system" (this: ^IDebug, pSwapChain: ^dxgi.ISwapChain) -> HRESULT,
GetSwapChain: proc "system" (this: ^IDebug, ppSwapChain: ^^dxgi.ISwapChain) -> HRESULT,
ValidateContext: proc "system" (this: ^IDebug, pContext: ^IDeviceContext) -> HRESULT,
ReportLiveDeviceObjects: proc "system" (this: ^IDebug, Flags: RLDO_FLAGS) -> HRESULT,
ValidateContextForDispatch: proc "system" (this: ^IDebug, pContext: ^IDeviceContext) -> HRESULT,
}
IInfoQueue_UUID_STRING :: "6543DBB6-1B48-42F5-AB82-E97EC74326F6"
IInfoQueue_UUID := &IID{0x6543DBB6, 0x1B48, 0x42F5, {0xAB, 0x82, 0xE9, 0x7E, 0xC7, 0x43, 0x26, 0xF6}}
IInfoQueue :: struct #raw_union {
#subtype iunknown: IUnknown,
using id3d11infoqueue_vtable: ^IInfoQueue_VTable,
}
MESSAGE_SEVERITY :: enum u32 {
CORRUPTION = 0,
ERROR,
WARNING,
INFO,
MESSAGE, // Not supported until D3D 11.1
}
MESSAGE_CATEGORY :: enum u32 {
APPLICATION_DEFINED = 0,
MISCELLANEOUS,
INITIALIZATION,
CLEANUP,
COMPILATION,
STATE_CREATION,
STATE_SETTING,
STATE_GETTING,
RESOURCE_MANIPULATION,
EXECUTION,
SHADER, // Not supported until D3D 11.1
}
INFO_QUEUE_FILTER_DESC :: struct {
NumCategories: u32,
pCategoryList: ^MESSAGE_CATEGORY,
NumSeverities: u32,
pSeverityList: ^MESSAGE_SEVERITY,
NumIDs: u32,
pIDList: ^MESSAGE_ID,
}
INFO_QUEUE_FILTER :: struct {
AllowList: INFO_QUEUE_FILTER_DESC,
DenyList: INFO_QUEUE_FILTER_DESC,
}
MESSAGE :: struct {
Category: MESSAGE_CATEGORY,
Severity: MESSAGE_SEVERITY,
ID: MESSAGE_ID,
pDescription: cstring,
DescriptionByteLength: SIZE_T,
}
IInfoQueue_VTable :: struct {
using iunkown_vtable: IUnknown_VTable,
SetMessageCountLimit: proc "system" (this: ^IInfoQueue, MessageCountLimit: u64) -> HRESULT,
ClearStoredMessages: proc "system" (this: ^IInfoQueue),
GetMessage: proc "system" (this: ^IInfoQueue, MessageIndex: u64, pMessage: ^MESSAGE, pMessageByteLength: ^SIZE_T) -> HRESULT,
GetNumMessagesAllowedByStorageFilter: proc "system" (this: ^IInfoQueue) -> u64,
GetNumMessagesDeniedByStorageFilter: proc "system" (this: ^IInfoQueue) -> u64,
GetNumStoredMessages: proc "system" (this: ^IInfoQueue) -> u64,
GetNumStoredMessagesAllowedByRetrievalFilter: proc "system" (this: ^IInfoQueue) -> u64,
GetNumMessagesDiscardedByMessageCountLimit: proc "system" (this: ^IInfoQueue) -> u64,
GetMessageCountLimit: proc "system" (this: ^IInfoQueue) -> u64,
AddStorageFilterEntries: proc "system" (this: ^IInfoQueue, pFilter: ^INFO_QUEUE_FILTER) -> HRESULT,
GetStorageFilter: proc "system" (this: ^IInfoQueue, pFilter: ^INFO_QUEUE_FILTER, pFilterByteLength: ^SIZE_T) -> HRESULT,
ClearStorageFilter: proc "system" (this: ^IInfoQueue),
PushEmptyStorageFilter: proc "system" (this: ^IInfoQueue) -> HRESULT,
PushCopyOfStorageFilter: proc "system" (this: ^IInfoQueue) -> HRESULT,
PushStorageFilter: proc "system" (this: ^IInfoQueue, pFilter: ^INFO_QUEUE_FILTER) -> HRESULT,
PopStorageFilter: proc "system" (this: ^IInfoQueue),
GetStorageFilterStackSize: proc "system" (this: ^IInfoQueue) -> u64,
AddRetrievalFilterEntries: proc "system" (this: ^IInfoQueue, pFilter: ^INFO_QUEUE_FILTER) -> HRESULT,
GetRetrievalFilter: proc "system" (this: ^IInfoQueue, pFilter: ^INFO_QUEUE_FILTER, pFilterByteLength: ^SIZE_T) -> HRESULT,
ClearRetrievalFilter: proc "system" (this: ^IInfoQueue),
PushEmptyRetrievalFilter: proc "system" (this: ^IInfoQueue) -> HRESULT,
PushCopyOfRetrievalFilter: proc "system" (this: ^IInfoQueue) -> HRESULT,
PushRetrievalFilter: proc "system" (this: ^IInfoQueue, pFilter: ^INFO_QUEUE_FILTER) -> HRESULT,
PopRetrievalFilter: proc "system" (this: ^IInfoQueue),
GetRetrievalFilterStackSize: proc "system" (this: ^IInfoQueue) -> u64,
AddMessage: proc "system" (this: ^IInfoQueue, Category: MESSAGE_CATEGORY, Severity: MESSAGE_SEVERITY, ID: MESSAGE_ID, pDescription: LPCSTR) -> HRESULT,
AddApplicationMessage: proc "system" (this: ^IInfoQueue, Severity: MESSAGE_SEVERITY, pDescription: LPCSTR) -> HRESULT,
SetBreakOnCategory: proc "system" (this: ^IInfoQueue, Category: MESSAGE_CATEGORY, bEnable: BOOL) -> HRESULT,
SetBreakOnSeverity: proc "system" (this: ^IInfoQueue, Severity: MESSAGE_SEVERITY, bEnable: BOOL) -> HRESULT,
SetBreakOnID: proc "system" (this: ^IInfoQueue, ID: MESSAGE_ID, bEnable: BOOL) -> HRESULT,
GetBreakOnCategory: proc "system" (this: ^IInfoQueue, Category: MESSAGE_CATEGORY) -> BOOL,
GetBreakOnSeverity: proc "system" (this: ^IInfoQueue, Severity: MESSAGE_SEVERITY) -> BOOL,
GetBreakOnID: proc "system" (this: ^IInfoQueue, ID: MESSAGE_ID) -> BOOL,
SetMuteDebugOutput: proc "system" (this: ^IInfoQueue, bMute: BOOL),
GetMuteDebugOutput: proc "system" (this: ^IInfoQueue) -> BOOL,
}
MESSAGE_ID :: enum u32 {
UNKNOWN = 0,
DEVICE_IASETVERTEXBUFFERS_HAZARD,
DEVICE_IASETINDEXBUFFER_HAZARD,
DEVICE_VSSETSHADERRESOURCES_HAZARD,
DEVICE_VSSETCONSTANTBUFFERS_HAZARD,
DEVICE_GSSETSHADERRESOURCES_HAZARD,
DEVICE_GSSETCONSTANTBUFFERS_HAZARD,
DEVICE_PSSETSHADERRESOURCES_HAZARD,
DEVICE_PSSETCONSTANTBUFFERS_HAZARD,
DEVICE_OMSETRENDERTARGETS_HAZARD,
DEVICE_SOSETTARGETS_HAZARD,
STRING_FROM_APPLICATION,
CORRUPTED_THIS,
CORRUPTED_PARAMETER1,
CORRUPTED_PARAMETER2,
CORRUPTED_PARAMETER3,
CORRUPTED_PARAMETER4,
CORRUPTED_PARAMETER5,
CORRUPTED_PARAMETER6,
CORRUPTED_PARAMETER7,
CORRUPTED_PARAMETER8,
CORRUPTED_PARAMETER9,
CORRUPTED_PARAMETER10,
CORRUPTED_PARAMETER11,
CORRUPTED_PARAMETER12,
CORRUPTED_PARAMETER13,
CORRUPTED_PARAMETER14,
CORRUPTED_PARAMETER15,
CORRUPTED_MULTITHREADING,
MESSAGE_REPORTING_OUTOFMEMORY,
IASETINPUTLAYOUT_UNBINDDELETINGOBJECT,
IASETVERTEXBUFFERS_UNBINDDELETINGOBJECT,
IASETINDEXBUFFER_UNBINDDELETINGOBJECT,
VSSETSHADER_UNBINDDELETINGOBJECT,
VSSETSHADERRESOURCES_UNBINDDELETINGOBJECT,
VSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT,
VSSETSAMPLERS_UNBINDDELETINGOBJECT,
GSSETSHADER_UNBINDDELETINGOBJECT,
GSSETSHADERRESOURCES_UNBINDDELETINGOBJECT,
GSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT,
GSSETSAMPLERS_UNBINDDELETINGOBJECT,
SOSETTARGETS_UNBINDDELETINGOBJECT,
PSSETSHADER_UNBINDDELETINGOBJECT,
PSSETSHADERRESOURCES_UNBINDDELETINGOBJECT,
PSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT,
PSSETSAMPLERS_UNBINDDELETINGOBJECT,
RSSETSTATE_UNBINDDELETINGOBJECT,
OMSETBLENDSTATE_UNBINDDELETINGOBJECT,
OMSETDEPTHSTENCILSTATE_UNBINDDELETINGOBJECT,
OMSETRENDERTARGETS_UNBINDDELETINGOBJECT,
SETPREDICATION_UNBINDDELETINGOBJECT,
GETPRIVATEDATA_MOREDATA,
SETPRIVATEDATA_INVALIDFREEDATA,
SETPRIVATEDATA_INVALIDIUNKNOWN,
SETPRIVATEDATA_INVALIDFLAGS,
SETPRIVATEDATA_CHANGINGPARAMS,
SETPRIVATEDATA_OUTOFMEMORY,
CREATEBUFFER_UNRECOGNIZEDFORMAT,
CREATEBUFFER_INVALIDSAMPLES,
CREATEBUFFER_UNRECOGNIZEDUSAGE,
CREATEBUFFER_UNRECOGNIZEDBINDFLAGS,
CREATEBUFFER_UNRECOGNIZEDCPUACCESSFLAGS,
CREATEBUFFER_UNRECOGNIZEDMISCFLAGS,
CREATEBUFFER_INVALIDCPUACCESSFLAGS,
CREATEBUFFER_INVALIDBINDFLAGS,
CREATEBUFFER_INVALIDINITIALDATA,
CREATEBUFFER_INVALIDDIMENSIONS,
CREATEBUFFER_INVALIDMIPLEVELS,
CREATEBUFFER_INVALIDMISCFLAGS,
CREATEBUFFER_INVALIDARG_RETURN,
CREATEBUFFER_OUTOFMEMORY_RETURN,
CREATEBUFFER_NULLDESC,
CREATEBUFFER_INVALIDCONSTANTBUFFERBINDINGS,
CREATEBUFFER_LARGEALLOCATION,
CREATETEXTURE1D_UNRECOGNIZEDFORMAT,
CREATETEXTURE1D_UNSUPPORTEDFORMAT,
CREATETEXTURE1D_INVALIDSAMPLES,
CREATETEXTURE1D_UNRECOGNIZEDUSAGE,
CREATETEXTURE1D_UNRECOGNIZEDBINDFLAGS,
CREATETEXTURE1D_UNRECOGNIZEDCPUACCESSFLAGS,
CREATETEXTURE1D_UNRECOGNIZEDMISCFLAGS,
CREATETEXTURE1D_INVALIDCPUACCESSFLAGS,
CREATETEXTURE1D_INVALIDBINDFLAGS,
CREATETEXTURE1D_INVALIDINITIALDATA,
CREATETEXTURE1D_INVALIDDIMENSIONS,
CREATETEXTURE1D_INVALIDMIPLEVELS,
CREATETEXTURE1D_INVALIDMISCFLAGS,
CREATETEXTURE1D_INVALIDARG_RETURN,
CREATETEXTURE1D_OUTOFMEMORY_RETURN,
CREATETEXTURE1D_NULLDESC,
CREATETEXTURE1D_LARGEALLOCATION,
CREATETEXTURE2D_UNRECOGNIZEDFORMAT,
CREATETEXTURE2D_UNSUPPORTEDFORMAT,
CREATETEXTURE2D_INVALIDSAMPLES,
CREATETEXTURE2D_UNRECOGNIZEDUSAGE,
CREATETEXTURE2D_UNRECOGNIZEDBINDFLAGS,
CREATETEXTURE2D_UNRECOGNIZEDCPUACCESSFLAGS,
CREATETEXTURE2D_UNRECOGNIZEDMISCFLAGS,
CREATETEXTURE2D_INVALIDCPUACCESSFLAGS,
CREATETEXTURE2D_INVALIDBINDFLAGS,
CREATETEXTURE2D_INVALIDINITIALDATA,
CREATETEXTURE2D_INVALIDDIMENSIONS,
CREATETEXTURE2D_INVALIDMIPLEVELS,
CREATETEXTURE2D_INVALIDMISCFLAGS,
CREATETEXTURE2D_INVALIDARG_RETURN,
CREATETEXTURE2D_OUTOFMEMORY_RETURN,
CREATETEXTURE2D_NULLDESC,
CREATETEXTURE2D_LARGEALLOCATION,
CREATETEXTURE3D_UNRECOGNIZEDFORMAT,
CREATETEXTURE3D_UNSUPPORTEDFORMAT,
CREATETEXTURE3D_INVALIDSAMPLES,
CREATETEXTURE3D_UNRECOGNIZEDUSAGE,
CREATETEXTURE3D_UNRECOGNIZEDBINDFLAGS,
CREATETEXTURE3D_UNRECOGNIZEDCPUACCESSFLAGS,
CREATETEXTURE3D_UNRECOGNIZEDMISCFLAGS,
CREATETEXTURE3D_INVALIDCPUACCESSFLAGS,
CREATETEXTURE3D_INVALIDBINDFLAGS,
CREATETEXTURE3D_INVALIDINITIALDATA,
CREATETEXTURE3D_INVALIDDIMENSIONS,
CREATETEXTURE3D_INVALIDMIPLEVELS,
CREATETEXTURE3D_INVALIDMISCFLAGS,
CREATETEXTURE3D_INVALIDARG_RETURN,
CREATETEXTURE3D_OUTOFMEMORY_RETURN,
CREATETEXTURE3D_NULLDESC,
CREATETEXTURE3D_LARGEALLOCATION,
CREATESHADERRESOURCEVIEW_UNRECOGNIZEDFORMAT,
CREATESHADERRESOURCEVIEW_INVALIDDESC,
CREATESHADERRESOURCEVIEW_INVALIDFORMAT,
CREATESHADERRESOURCEVIEW_INVALIDDIMENSIONS,
CREATESHADERRESOURCEVIEW_INVALIDRESOURCE,
CREATESHADERRESOURCEVIEW_TOOMANYOBJECTS,
CREATESHADERRESOURCEVIEW_INVALIDARG_RETURN,
CREATESHADERRESOURCEVIEW_OUTOFMEMORY_RETURN,
CREATERENDERTARGETVIEW_UNRECOGNIZEDFORMAT,
CREATERENDERTARGETVIEW_UNSUPPORTEDFORMAT,
CREATERENDERTARGETVIEW_INVALIDDESC,
CREATERENDERTARGETVIEW_INVALIDFORMAT,
CREATERENDERTARGETVIEW_INVALIDDIMENSIONS,
CREATERENDERTARGETVIEW_INVALIDRESOURCE,
CREATERENDERTARGETVIEW_TOOMANYOBJECTS,
CREATERENDERTARGETVIEW_INVALIDARG_RETURN,
CREATERENDERTARGETVIEW_OUTOFMEMORY_RETURN,
CREATEDEPTHSTENCILVIEW_UNRECOGNIZEDFORMAT,
CREATEDEPTHSTENCILVIEW_INVALIDDESC,
CREATEDEPTHSTENCILVIEW_INVALIDFORMAT,
CREATEDEPTHSTENCILVIEW_INVALIDDIMENSIONS,
CREATEDEPTHSTENCILVIEW_INVALIDRESOURCE,
CREATEDEPTHSTENCILVIEW_TOOMANYOBJECTS,
CREATEDEPTHSTENCILVIEW_INVALIDARG_RETURN,
CREATEDEPTHSTENCILVIEW_OUTOFMEMORY_RETURN,
CREATEINPUTLAYOUT_OUTOFMEMORY,
CREATEINPUTLAYOUT_TOOMANYELEMENTS,
CREATEINPUTLAYOUT_INVALIDFORMAT,
CREATEINPUTLAYOUT_INCOMPATIBLEFORMAT,
CREATEINPUTLAYOUT_INVALIDSLOT,
CREATEINPUTLAYOUT_INVALIDINPUTSLOTCLASS,
CREATEINPUTLAYOUT_STEPRATESLOTCLASSMISMATCH,
CREATEINPUTLAYOUT_INVALIDSLOTCLASSCHANGE,
CREATEINPUTLAYOUT_INVALIDSTEPRATECHANGE,
CREATEINPUTLAYOUT_INVALIDALIGNMENT,
CREATEINPUTLAYOUT_DUPLICATESEMANTIC,
CREATEINPUTLAYOUT_UNPARSEABLEINPUTSIGNATURE,
CREATEINPUTLAYOUT_NULLSEMANTIC,
CREATEINPUTLAYOUT_MISSINGELEMENT,
CREATEINPUTLAYOUT_NULLDESC,
CREATEVERTEXSHADER_OUTOFMEMORY,
CREATEVERTEXSHADER_INVALIDSHADERBYTECODE,
CREATEVERTEXSHADER_INVALIDSHADERTYPE,
CREATEGEOMETRYSHADER_OUTOFMEMORY,
CREATEGEOMETRYSHADER_INVALIDSHADERBYTECODE,
CREATEGEOMETRYSHADER_INVALIDSHADERTYPE,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTOFMEMORY,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERBYTECODE,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERTYPE,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMENTRIES,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSTREAMSTRIDEUNUSED,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDDECL,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_EXPECTEDDECL,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSLOT0EXPECTED,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSLOT,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_ONLYONEELEMENTPERSLOT,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCOMPONENTCOUNT,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTARTCOMPONENTANDCOMPONENTCOUNT,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDGAPDEFINITION,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_REPEATEDOUTPUT,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSTREAMSTRIDE,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGSEMANTIC,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MASKMISMATCH,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_CANTHAVEONLYGAPS,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DECLTOOCOMPLEX,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGOUTPUTSIGNATURE,
CREATEPIXELSHADER_OUTOFMEMORY,
CREATEPIXELSHADER_INVALIDSHADERBYTECODE,
CREATEPIXELSHADER_INVALIDSHADERTYPE,
CREATERASTERIZERSTATE_INVALIDFILLMODE,
CREATERASTERIZERSTATE_INVALIDCULLMODE,
CREATERASTERIZERSTATE_INVALIDDEPTHBIASCLAMP,
CREATERASTERIZERSTATE_INVALIDSLOPESCALEDDEPTHBIAS,
CREATERASTERIZERSTATE_TOOMANYOBJECTS,
CREATERASTERIZERSTATE_NULLDESC,
CREATEDEPTHSTENCILSTATE_INVALIDDEPTHWRITEMASK,
CREATEDEPTHSTENCILSTATE_INVALIDDEPTHFUNC,
CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFAILOP,
CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILZFAILOP,
CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILPASSOP,
CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFUNC,
CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFAILOP,
CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILZFAILOP,
CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILPASSOP,
CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFUNC,
CREATEDEPTHSTENCILSTATE_TOOMANYOBJECTS,
CREATEDEPTHSTENCILSTATE_NULLDESC,
CREATEBLENDSTATE_INVALIDSRCBLEND,
CREATEBLENDSTATE_INVALIDDESTBLEND,
CREATEBLENDSTATE_INVALIDBLENDOP,
CREATEBLENDSTATE_INVALIDSRCBLENDALPHA,
CREATEBLENDSTATE_INVALIDDESTBLENDALPHA,
CREATEBLENDSTATE_INVALIDBLENDOPALPHA,
CREATEBLENDSTATE_INVALIDRENDERTARGETWRITEMASK,
CREATEBLENDSTATE_TOOMANYOBJECTS,
CREATEBLENDSTATE_NULLDESC,
CREATESAMPLERSTATE_INVALIDFILTER,
CREATESAMPLERSTATE_INVALIDADDRESSU,
CREATESAMPLERSTATE_INVALIDADDRESSV,
CREATESAMPLERSTATE_INVALIDADDRESSW,
CREATESAMPLERSTATE_INVALIDMIPLODBIAS,
CREATESAMPLERSTATE_INVALIDMAXANISOTROPY,
CREATESAMPLERSTATE_INVALIDCOMPARISONFUNC,
CREATESAMPLERSTATE_INVALIDMINLOD,
CREATESAMPLERSTATE_INVALIDMAXLOD,
CREATESAMPLERSTATE_TOOMANYOBJECTS,
CREATESAMPLERSTATE_NULLDESC,
CREATEQUERYORPREDICATE_INVALIDQUERY,
CREATEQUERYORPREDICATE_INVALIDMISCFLAGS,
CREATEQUERYORPREDICATE_UNEXPECTEDMISCFLAG,
CREATEQUERYORPREDICATE_NULLDESC,
DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNRECOGNIZED,
DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNDEFINED,
IASETVERTEXBUFFERS_INVALIDBUFFER,
DEVICE_IASETVERTEXBUFFERS_OFFSET_TOO_LARGE,
DEVICE_IASETVERTEXBUFFERS_BUFFERS_EMPTY,
IASETINDEXBUFFER_INVALIDBUFFER,
DEVICE_IASETINDEXBUFFER_FORMAT_INVALID,
DEVICE_IASETINDEXBUFFER_OFFSET_TOO_LARGE,
DEVICE_IASETINDEXBUFFER_OFFSET_UNALIGNED,
DEVICE_VSSETSHADERRESOURCES_VIEWS_EMPTY,
VSSETCONSTANTBUFFERS_INVALIDBUFFER,
DEVICE_VSSETCONSTANTBUFFERS_BUFFERS_EMPTY,
DEVICE_VSSETSAMPLERS_SAMPLERS_EMPTY,
DEVICE_GSSETSHADERRESOURCES_VIEWS_EMPTY,
GSSETCONSTANTBUFFERS_INVALIDBUFFER,
DEVICE_GSSETCONSTANTBUFFERS_BUFFERS_EMPTY,
DEVICE_GSSETSAMPLERS_SAMPLERS_EMPTY,
SOSETTARGETS_INVALIDBUFFER,
DEVICE_SOSETTARGETS_OFFSET_UNALIGNED,
DEVICE_PSSETSHADERRESOURCES_VIEWS_EMPTY,
PSSETCONSTANTBUFFERS_INVALIDBUFFER,
DEVICE_PSSETCONSTANTBUFFERS_BUFFERS_EMPTY,
DEVICE_PSSETSAMPLERS_SAMPLERS_EMPTY,
DEVICE_RSSETVIEWPORTS_INVALIDVIEWPORT,
DEVICE_RSSETSCISSORRECTS_INVALIDSCISSOR,
CLEARRENDERTARGETVIEW_DENORMFLUSH,
CLEARDEPTHSTENCILVIEW_DENORMFLUSH,
CLEARDEPTHSTENCILVIEW_INVALID,
DEVICE_IAGETVERTEXBUFFERS_BUFFERS_EMPTY,
DEVICE_VSGETSHADERRESOURCES_VIEWS_EMPTY,
DEVICE_VSGETCONSTANTBUFFERS_BUFFERS_EMPTY,
DEVICE_VSGETSAMPLERS_SAMPLERS_EMPTY,
DEVICE_GSGETSHADERRESOURCES_VIEWS_EMPTY,
DEVICE_GSGETCONSTANTBUFFERS_BUFFERS_EMPTY,
DEVICE_GSGETSAMPLERS_SAMPLERS_EMPTY,
DEVICE_SOGETTARGETS_BUFFERS_EMPTY,
DEVICE_PSGETSHADERRESOURCES_VIEWS_EMPTY,
DEVICE_PSGETCONSTANTBUFFERS_BUFFERS_EMPTY,
DEVICE_PSGETSAMPLERS_SAMPLERS_EMPTY,
DEVICE_RSGETVIEWPORTS_VIEWPORTS_EMPTY,
DEVICE_RSGETSCISSORRECTS_RECTS_EMPTY,
DEVICE_GENERATEMIPS_RESOURCE_INVALID,
COPYSUBRESOURCEREGION_INVALIDDESTINATIONSUBRESOURCE,
COPYSUBRESOURCEREGION_INVALIDSOURCESUBRESOURCE,
COPYSUBRESOURCEREGION_INVALIDSOURCEBOX,
COPYSUBRESOURCEREGION_INVALIDSOURCE,
COPYSUBRESOURCEREGION_INVALIDDESTINATIONSTATE,
COPYSUBRESOURCEREGION_INVALIDSOURCESTATE,
COPYRESOURCE_INVALIDSOURCE,
COPYRESOURCE_INVALIDDESTINATIONSTATE,
COPYRESOURCE_INVALIDSOURCESTATE,
UPDATESUBRESOURCE_INVALIDDESTINATIONSUBRESOURCE,
UPDATESUBRESOURCE_INVALIDDESTINATIONBOX,
UPDATESUBRESOURCE_INVALIDDESTINATIONSTATE,
DEVICE_RESOLVESUBRESOURCE_DESTINATION_INVALID,
DEVICE_RESOLVESUBRESOURCE_DESTINATION_SUBRESOURCE_INVALID,
DEVICE_RESOLVESUBRESOURCE_SOURCE_INVALID,
DEVICE_RESOLVESUBRESOURCE_SOURCE_SUBRESOURCE_INVALID,
DEVICE_RESOLVESUBRESOURCE_FORMAT_INVALID,
BUFFER_MAP_INVALIDMAPTYPE,
BUFFER_MAP_INVALIDFLAGS,
BUFFER_MAP_ALREADYMAPPED,
BUFFER_MAP_DEVICEREMOVED_RETURN,
BUFFER_UNMAP_NOTMAPPED,
TEXTURE1D_MAP_INVALIDMAPTYPE,
TEXTURE1D_MAP_INVALIDSUBRESOURCE,
TEXTURE1D_MAP_INVALIDFLAGS,
TEXTURE1D_MAP_ALREADYMAPPED,
TEXTURE1D_MAP_DEVICEREMOVED_RETURN,
TEXTURE1D_UNMAP_INVALIDSUBRESOURCE,
TEXTURE1D_UNMAP_NOTMAPPED,
TEXTURE2D_MAP_INVALIDMAPTYPE,
TEXTURE2D_MAP_INVALIDSUBRESOURCE,
TEXTURE2D_MAP_INVALIDFLAGS,
TEXTURE2D_MAP_ALREADYMAPPED,
TEXTURE2D_MAP_DEVICEREMOVED_RETURN,
TEXTURE2D_UNMAP_INVALIDSUBRESOURCE,
TEXTURE2D_UNMAP_NOTMAPPED,
TEXTURE3D_MAP_INVALIDMAPTYPE,
TEXTURE3D_MAP_INVALIDSUBRESOURCE,
TEXTURE3D_MAP_INVALIDFLAGS,
TEXTURE3D_MAP_ALREADYMAPPED,
TEXTURE3D_MAP_DEVICEREMOVED_RETURN,
TEXTURE3D_UNMAP_INVALIDSUBRESOURCE,
TEXTURE3D_UNMAP_NOTMAPPED,
CHECKFORMATSUPPORT_FORMAT_DEPRECATED,
CHECKMULTISAMPLEQUALITYLEVELS_FORMAT_DEPRECATED,
SETEXCEPTIONMODE_UNRECOGNIZEDFLAGS,
SETEXCEPTIONMODE_INVALIDARG_RETURN,
SETEXCEPTIONMODE_DEVICEREMOVED_RETURN,
REF_SIMULATING_INFINITELY_FAST_HARDWARE,
REF_THREADING_MODE,
REF_UMDRIVER_EXCEPTION,
REF_KMDRIVER_EXCEPTION,
REF_HARDWARE_EXCEPTION,
REF_ACCESSING_INDEXABLE_TEMP_OUT_OF_RANGE,
REF_PROBLEM_PARSING_SHADER,
REF_OUT_OF_MEMORY,
REF_INFO,
DEVICE_DRAW_VERTEXPOS_OVERFLOW,
DEVICE_DRAWINDEXED_INDEXPOS_OVERFLOW,
DEVICE_DRAWINSTANCED_VERTEXPOS_OVERFLOW,
DEVICE_DRAWINSTANCED_INSTANCEPOS_OVERFLOW,
DEVICE_DRAWINDEXEDINSTANCED_INSTANCEPOS_OVERFLOW,
DEVICE_DRAWINDEXEDINSTANCED_INDEXPOS_OVERFLOW,
DEVICE_DRAW_VERTEX_SHADER_NOT_SET,
DEVICE_SHADER_LINKAGE_SEMANTICNAME_NOT_FOUND,
DEVICE_SHADER_LINKAGE_REGISTERINDEX,
DEVICE_SHADER_LINKAGE_COMPONENTTYPE,
DEVICE_SHADER_LINKAGE_REGISTERMASK,
DEVICE_SHADER_LINKAGE_SYSTEMVALUE,
DEVICE_SHADER_LINKAGE_NEVERWRITTEN_ALWAYSREADS,
DEVICE_DRAW_VERTEX_BUFFER_NOT_SET,
DEVICE_DRAW_INPUTLAYOUT_NOT_SET,
DEVICE_DRAW_CONSTANT_BUFFER_NOT_SET,
DEVICE_DRAW_CONSTANT_BUFFER_TOO_SMALL,
DEVICE_DRAW_SAMPLER_NOT_SET,
DEVICE_DRAW_SHADERRESOURCEVIEW_NOT_SET,
DEVICE_DRAW_VIEW_DIMENSION_MISMATCH,
DEVICE_DRAW_VERTEX_BUFFER_STRIDE_TOO_SMALL,
DEVICE_DRAW_VERTEX_BUFFER_TOO_SMALL,
DEVICE_DRAW_INDEX_BUFFER_NOT_SET,
DEVICE_DRAW_INDEX_BUFFER_FORMAT_INVALID,
DEVICE_DRAW_INDEX_BUFFER_TOO_SMALL,
DEVICE_DRAW_GS_INPUT_PRIMITIVE_MISMATCH,
DEVICE_DRAW_RESOURCE_RETURN_TYPE_MISMATCH,
DEVICE_DRAW_POSITION_NOT_PRESENT,
DEVICE_DRAW_OUTPUT_STREAM_NOT_SET,
DEVICE_DRAW_BOUND_RESOURCE_MAPPED,
DEVICE_DRAW_INVALID_PRIMITIVETOPOLOGY,
DEVICE_DRAW_VERTEX_OFFSET_UNALIGNED,
DEVICE_DRAW_VERTEX_STRIDE_UNALIGNED,
DEVICE_DRAW_INDEX_OFFSET_UNALIGNED,
DEVICE_DRAW_OUTPUT_STREAM_OFFSET_UNALIGNED,
DEVICE_DRAW_RESOURCE_FORMAT_LD_UNSUPPORTED,
DEVICE_DRAW_RESOURCE_FORMAT_SAMPLE_UNSUPPORTED,
DEVICE_DRAW_RESOURCE_FORMAT_SAMPLE_C_UNSUPPORTED,
DEVICE_DRAW_RESOURCE_MULTISAMPLE_UNSUPPORTED,
DEVICE_DRAW_SO_TARGETS_BOUND_WITHOUT_SOURCE,
DEVICE_DRAW_SO_STRIDE_LARGER_THAN_BUFFER,
DEVICE_DRAW_OM_RENDER_TARGET_DOES_NOT_SUPPORT_BLENDING,
DEVICE_DRAW_OM_DUAL_SOURCE_BLENDING_CAN_ONLY_HAVE_RENDER_TARGET_0,
DEVICE_REMOVAL_PROCESS_AT_FAULT,
DEVICE_REMOVAL_PROCESS_POSSIBLY_AT_FAULT,
DEVICE_REMOVAL_PROCESS_NOT_AT_FAULT,
DEVICE_OPEN_SHARED_RESOURCE_INVALIDARG_RETURN,
DEVICE_OPEN_SHARED_RESOURCE_OUTOFMEMORY_RETURN,
DEVICE_OPEN_SHARED_RESOURCE_BADINTERFACE_RETURN,
DEVICE_DRAW_VIEWPORT_NOT_SET,
CREATEINPUTLAYOUT_TRAILING_DIGIT_IN_SEMANTIC,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_TRAILING_DIGIT_IN_SEMANTIC,
DEVICE_RSSETVIEWPORTS_DENORMFLUSH,
OMSETRENDERTARGETS_INVALIDVIEW,
DEVICE_SETTEXTFILTERSIZE_INVALIDDIMENSIONS,
DEVICE_DRAW_SAMPLER_MISMATCH,
CREATEINPUTLAYOUT_TYPE_MISMATCH,
BLENDSTATE_GETDESC_LEGACY,
SHADERRESOURCEVIEW_GETDESC_LEGACY,
CREATEQUERY_OUTOFMEMORY_RETURN,
CREATEPREDICATE_OUTOFMEMORY_RETURN,
CREATECOUNTER_OUTOFRANGE_COUNTER,
CREATECOUNTER_SIMULTANEOUS_ACTIVE_COUNTERS_EXHAUSTED,
CREATECOUNTER_UNSUPPORTED_WELLKNOWN_COUNTER,
CREATECOUNTER_OUTOFMEMORY_RETURN,
CREATECOUNTER_NONEXCLUSIVE_RETURN,
CREATECOUNTER_NULLDESC,
CHECKCOUNTER_OUTOFRANGE_COUNTER,
CHECKCOUNTER_UNSUPPORTED_WELLKNOWN_COUNTER,
SETPREDICATION_INVALID_PREDICATE_STATE,
QUERY_BEGIN_UNSUPPORTED,
PREDICATE_BEGIN_DURING_PREDICATION,
QUERY_BEGIN_DUPLICATE,
QUERY_BEGIN_ABANDONING_PREVIOUS_RESULTS,
PREDICATE_END_DURING_PREDICATION,
QUERY_END_ABANDONING_PREVIOUS_RESULTS,
QUERY_END_WITHOUT_BEGIN,
QUERY_GETDATA_INVALID_DATASIZE,
QUERY_GETDATA_INVALID_FLAGS,
QUERY_GETDATA_INVALID_CALL,
DEVICE_DRAW_PS_OUTPUT_TYPE_MISMATCH,
DEVICE_DRAW_RESOURCE_FORMAT_GATHER_UNSUPPORTED,
DEVICE_DRAW_INVALID_USE_OF_CENTER_MULTISAMPLE_PATTERN,
DEVICE_IASETVERTEXBUFFERS_STRIDE_TOO_LARGE,
DEVICE_IASETVERTEXBUFFERS_INVALIDRANGE,
CREATEINPUTLAYOUT_EMPTY_LAYOUT,
DEVICE_DRAW_RESOURCE_SAMPLE_COUNT_MISMATCH,
LIVE_OBJECT_SUMMARY,
LIVE_BUFFER,
LIVE_TEXTURE1D,
LIVE_TEXTURE2D,
LIVE_TEXTURE3D,
LIVE_SHADERRESOURCEVIEW,
LIVE_RENDERTARGETVIEW,
LIVE_DEPTHSTENCILVIEW,
LIVE_VERTEXSHADER,
LIVE_GEOMETRYSHADER,
LIVE_PIXELSHADER,
LIVE_INPUTLAYOUT,
LIVE_SAMPLER,
LIVE_BLENDSTATE,
LIVE_DEPTHSTENCILSTATE,
LIVE_RASTERIZERSTATE,
LIVE_QUERY,
LIVE_PREDICATE,
LIVE_COUNTER,
LIVE_DEVICE,
LIVE_SWAPCHAIN,
D3D10_MESSAGES_END,
D3D10L9_MESSAGES_START = 0x100000,
CREATEDEPTHSTENCILSTATE_STENCIL_NO_TWO_SIDED,
CREATERASTERIZERSTATE_DepthBiasClamp_NOT_SUPPORTED,
CREATESAMPLERSTATE_NO_COMPARISON_SUPPORT,
CREATESAMPLERSTATE_EXCESSIVE_ANISOTROPY,
CREATESAMPLERSTATE_BORDER_OUT_OF_RANGE,
VSSETSAMPLERS_NOT_SUPPORTED,
VSSETSAMPLERS_TOO_MANY_SAMPLERS,
PSSETSAMPLERS_TOO_MANY_SAMPLERS,
CREATERESOURCE_NO_ARRAYS,
CREATERESOURCE_NO_VB_AND_IB_BIND,
CREATERESOURCE_NO_TEXTURE_1D,
CREATERESOURCE_DIMENSION_OUT_OF_RANGE,
CREATERESOURCE_NOT_BINDABLE_AS_SHADER_RESOURCE,
OMSETRENDERTARGETS_TOO_MANY_RENDER_TARGETS,
OMSETRENDERTARGETS_NO_DIFFERING_BIT_DEPTHS,
IASETVERTEXBUFFERS_BAD_BUFFER_INDEX,
DEVICE_RSSETVIEWPORTS_TOO_MANY_VIEWPORTS,
DEVICE_IASETPRIMITIVETOPOLOGY_ADJACENCY_UNSUPPORTED,
DEVICE_RSSETSCISSORRECTS_TOO_MANY_SCISSORS,
COPYRESOURCE_ONLY_TEXTURE_2D_WITHIN_GPU_MEMORY,
COPYRESOURCE_NO_TEXTURE_3D_READBACK,
COPYRESOURCE_NO_TEXTURE_ONLY_READBACK,
CREATEINPUTLAYOUT_UNSUPPORTED_FORMAT,
CREATEBLENDSTATE_NO_ALPHA_TO_COVERAGE,
CREATERASTERIZERSTATE_DepthClipEnable_MUST_BE_TRUE,
DRAWINDEXED_STARTINDEXLOCATION_MUST_BE_POSITIVE,
CREATESHADERRESOURCEVIEW_MUST_USE_LOWEST_LOD,
CREATESAMPLERSTATE_MINLOD_MUST_NOT_BE_FRACTIONAL,
CREATESAMPLERSTATE_MAXLOD_MUST_BE_FLT_MAX,
CREATESHADERRESOURCEVIEW_FIRSTARRAYSLICE_MUST_BE_ZERO,
CREATESHADERRESOURCEVIEW_CUBES_MUST_HAVE_6_SIDES,
CREATERESOURCE_NOT_BINDABLE_AS_RENDER_TARGET,
CREATERESOURCE_NO_DWORD_INDEX_BUFFER,
CREATERESOURCE_MSAA_PRECLUDES_SHADER_RESOURCE,
CREATERESOURCE_PRESENTATION_PRECLUDES_SHADER_RESOURCE,
CREATEBLENDSTATE_NO_INDEPENDENT_BLEND_ENABLE,
CREATEBLENDSTATE_NO_INDEPENDENT_WRITE_MASKS,
CREATERESOURCE_NO_STREAM_OUT,
CREATERESOURCE_ONLY_VB_IB_FOR_BUFFERS,
CREATERESOURCE_NO_AUTOGEN_FOR_VOLUMES,
CREATERESOURCE_DXGI_FORMAT_R8G8B8A8_CANNOT_BE_SHARED,
VSSHADERRESOURCES_NOT_SUPPORTED,
GEOMETRY_SHADER_NOT_SUPPORTED,
STREAM_OUT_NOT_SUPPORTED,
TEXT_FILTER_NOT_SUPPORTED,
CREATEBLENDSTATE_NO_SEPARATE_ALPHA_BLEND,
CREATEBLENDSTATE_NO_MRT_BLEND,
CREATEBLENDSTATE_OPERATION_NOT_SUPPORTED,
CREATESAMPLERSTATE_NO_MIRRORONCE,
DRAWINSTANCED_NOT_SUPPORTED,
DRAWINDEXEDINSTANCED_NOT_SUPPORTED_BELOW_9_3,
DRAWINDEXED_POINTLIST_UNSUPPORTED,
SETBLENDSTATE_SAMPLE_MASK_CANNOT_BE_ZERO,
CREATERESOURCE_DIMENSION_EXCEEDS_FEATURE_LEVEL_DEFINITION,
CREATERESOURCE_ONLY_SINGLE_MIP_LEVEL_DEPTH_STENCIL_SUPPORTED,
DEVICE_RSSETSCISSORRECTS_NEGATIVESCISSOR,
SLOT_ZERO_MUST_BE_D3D10_INPUT_PER_VERTEX_DATA,
CREATERESOURCE_NON_POW_2_MIPMAP,
CREATESAMPLERSTATE_BORDER_NOT_SUPPORTED,
OMSETRENDERTARGETS_NO_SRGB_MRT,
COPYRESOURCE_NO_3D_MISMATCHED_UPDATES,
D3D10L9_MESSAGES_END,
D3D11_MESSAGES_START = 0x200000,
CREATEDEPTHSTENCILVIEW_INVALIDFLAGS,
CREATEVERTEXSHADER_INVALIDCLASSLINKAGE,
CREATEGEOMETRYSHADER_INVALIDCLASSLINKAGE,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTREAMS,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAMTORASTERIZER,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTREAMS,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCLASSLINKAGE,
CREATEPIXELSHADER_INVALIDCLASSLINKAGE,
CREATEDEFERREDCONTEXT_INVALID_COMMANDLISTFLAGS,
CREATEDEFERREDCONTEXT_SINGLETHREADED,
CREATEDEFERREDCONTEXT_INVALIDARG_RETURN,
CREATEDEFERREDCONTEXT_INVALID_CALL_RETURN,
CREATEDEFERREDCONTEXT_OUTOFMEMORY_RETURN,
FINISHDISPLAYLIST_ONIMMEDIATECONTEXT,
FINISHDISPLAYLIST_OUTOFMEMORY_RETURN,
FINISHDISPLAYLIST_INVALID_CALL_RETURN,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAM,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDENTRIES,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTRIDES,
CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTRIDES,
DEVICE_HSSETSHADERRESOURCES_HAZARD,
DEVICE_HSSETCONSTANTBUFFERS_HAZARD,
HSSETSHADERRESOURCES_UNBINDDELETINGOBJECT,
HSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT,
CREATEHULLSHADER_INVALIDCALL,
CREATEHULLSHADER_OUTOFMEMORY,
CREATEHULLSHADER_INVALIDSHADERBYTECODE,
CREATEHULLSHADER_INVALIDSHADERTYPE,
CREATEHULLSHADER_INVALIDCLASSLINKAGE,
DEVICE_HSSETSHADERRESOURCES_VIEWS_EMPTY,
HSSETCONSTANTBUFFERS_INVALIDBUFFER,
DEVICE_HSSETCONSTANTBUFFERS_BUFFERS_EMPTY,
DEVICE_HSSETSAMPLERS_SAMPLERS_EMPTY,
DEVICE_HSGETSHADERRESOURCES_VIEWS_EMPTY,
DEVICE_HSGETCONSTANTBUFFERS_BUFFERS_EMPTY,
DEVICE_HSGETSAMPLERS_SAMPLERS_EMPTY,
DEVICE_DSSETSHADERRESOURCES_HAZARD,
DEVICE_DSSETCONSTANTBUFFERS_HAZARD,
DSSETSHADERRESOURCES_UNBINDDELETINGOBJECT,
DSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT,
CREATEDOMAINSHADER_INVALIDCALL,
CREATEDOMAINSHADER_OUTOFMEMORY,
CREATEDOMAINSHADER_INVALIDSHADERBYTECODE,
CREATEDOMAINSHADER_INVALIDSHADERTYPE,
CREATEDOMAINSHADER_INVALIDCLASSLINKAGE,
DEVICE_DSSETSHADERRESOURCES_VIEWS_EMPTY,
DSSETCONSTANTBUFFERS_INVALIDBUFFER,
DEVICE_DSSETCONSTANTBUFFERS_BUFFERS_EMPTY,
DEVICE_DSSETSAMPLERS_SAMPLERS_EMPTY,
DEVICE_DSGETSHADERRESOURCES_VIEWS_EMPTY,
DEVICE_DSGETCONSTANTBUFFERS_BUFFERS_EMPTY,
DEVICE_DSGETSAMPLERS_SAMPLERS_EMPTY,
DEVICE_DRAW_HS_XOR_DS_MISMATCH,
DEFERRED_CONTEXT_REMOVAL_PROCESS_AT_FAULT,
DEVICE_DRAWINDIRECT_INVALID_ARG_BUFFER,
DEVICE_DRAWINDIRECT_OFFSET_UNALIGNED,
DEVICE_DRAWINDIRECT_OFFSET_OVERFLOW,
RESOURCE_MAP_INVALIDMAPTYPE,
RESOURCE_MAP_INVALIDSUBRESOURCE,
RESOURCE_MAP_INVALIDFLAGS,
RESOURCE_MAP_ALREADYMAPPED,
RESOURCE_MAP_DEVICEREMOVED_RETURN,
RESOURCE_MAP_OUTOFMEMORY_RETURN,
RESOURCE_MAP_WITHOUT_INITIAL_DISCARD,
RESOURCE_UNMAP_INVALIDSUBRESOURCE,
RESOURCE_UNMAP_NOTMAPPED,
DEVICE_DRAW_RASTERIZING_CONTROL_POINTS,
DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNSUPPORTED,
DEVICE_DRAW_HS_DS_SIGNATURE_MISMATCH,
DEVICE_DRAW_HULL_SHADER_INPUT_TOPOLOGY_MISMATCH,
DEVICE_DRAW_HS_DS_CONTROL_POINT_COUNT_MISMATCH,
DEVICE_DRAW_HS_DS_TESSELLATOR_DOMAIN_MISMATCH,
CREATE_CONTEXT,
LIVE_CONTEXT,
DESTROY_CONTEXT,
CREATE_BUFFER,
LIVE_BUFFER_WIN7,
DESTROY_BUFFER,
CREATE_TEXTURE1D,
LIVE_TEXTURE1D_WIN7,
DESTROY_TEXTURE1D,
CREATE_TEXTURE2D,
LIVE_TEXTURE2D_WIN7,
DESTROY_TEXTURE2D,
CREATE_TEXTURE3D,
LIVE_TEXTURE3D_WIN7,
DESTROY_TEXTURE3D,
CREATE_SHADERRESOURCEVIEW,
LIVE_SHADERRESOURCEVIEW_WIN7,
DESTROY_SHADERRESOURCEVIEW,
CREATE_RENDERTARGETVIEW,
LIVE_RENDERTARGETVIEW_WIN7,
DESTROY_RENDERTARGETVIEW,
CREATE_DEPTHSTENCILVIEW,
LIVE_DEPTHSTENCILVIEW_WIN7,
DESTROY_DEPTHSTENCILVIEW,
CREATE_VERTEXSHADER,
LIVE_VERTEXSHADER_WIN7,
DESTROY_VERTEXSHADER,
CREATE_HULLSHADER,
LIVE_HULLSHADER,
DESTROY_HULLSHADER,
CREATE_DOMAINSHADER,
LIVE_DOMAINSHADER,
DESTROY_DOMAINSHADER,
CREATE_GEOMETRYSHADER,
LIVE_GEOMETRYSHADER_WIN7,
DESTROY_GEOMETRYSHADER,
CREATE_PIXELSHADER,
LIVE_PIXELSHADER_WIN7,
DESTROY_PIXELSHADER,
CREATE_INPUTLAYOUT,
LIVE_INPUTLAYOUT_WIN7,
DESTROY_INPUTLAYOUT,
CREATE_SAMPLER,
LIVE_SAMPLER_WIN7,
DESTROY_SAMPLER,
CREATE_BLENDSTATE,
LIVE_BLENDSTATE_WIN7,
DESTROY_BLENDSTATE,
CREATE_DEPTHSTENCILSTATE,
LIVE_DEPTHSTENCILSTATE_WIN7,
DESTROY_DEPTHSTENCILSTATE,
CREATE_RASTERIZERSTATE,
LIVE_RASTERIZERSTATE_WIN7,
DESTROY_RASTERIZERSTATE,
CREATE_QUERY,
LIVE_QUERY_WIN7,
DESTROY_QUERY,
CREATE_PREDICATE,
LIVE_PREDICATE_WIN7,
DESTROY_PREDICATE,
CREATE_COUNTER,
DESTROY_COUNTER,
CREATE_COMMANDLIST,
LIVE_COMMANDLIST,
DESTROY_COMMANDLIST,
CREATE_CLASSINSTANCE,
LIVE_CLASSINSTANCE,
DESTROY_CLASSINSTANCE,
CREATE_CLASSLINKAGE,
LIVE_CLASSLINKAGE,
DESTROY_CLASSLINKAGE,
LIVE_DEVICE_WIN7,
LIVE_OBJECT_SUMMARY_WIN7,
CREATE_COMPUTESHADER,
LIVE_COMPUTESHADER,
DESTROY_COMPUTESHADER,
CREATE_UNORDEREDACCESSVIEW,
LIVE_UNORDEREDACCESSVIEW,
DESTROY_UNORDEREDACCESSVIEW,
DEVICE_SETSHADER_INTERFACES_FEATURELEVEL,
DEVICE_SETSHADER_INTERFACE_COUNT_MISMATCH,
DEVICE_SETSHADER_INVALID_INSTANCE,
DEVICE_SETSHADER_INVALID_INSTANCE_INDEX,
DEVICE_SETSHADER_INVALID_INSTANCE_TYPE,
DEVICE_SETSHADER_INVALID_INSTANCE_DATA,
DEVICE_SETSHADER_UNBOUND_INSTANCE_DATA,
DEVICE_SETSHADER_INSTANCE_DATA_BINDINGS,
DEVICE_CREATESHADER_CLASSLINKAGE_FULL,
DEVICE_CHECKFEATURESUPPORT_UNRECOGNIZED_FEATURE,
DEVICE_CHECKFEATURESUPPORT_MISMATCHED_DATA_SIZE,
DEVICE_CHECKFEATURESUPPORT_INVALIDARG_RETURN,
DEVICE_CSSETSHADERRESOURCES_HAZARD,
DEVICE_CSSETCONSTANTBUFFERS_HAZARD,
CSSETSHADERRESOURCES_UNBINDDELETINGOBJECT,
CSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT,
CREATECOMPUTESHADER_INVALIDCALL,
CREATECOMPUTESHADER_OUTOFMEMORY,
CREATECOMPUTESHADER_INVALIDSHADERBYTECODE,
CREATECOMPUTESHADER_INVALIDSHADERTYPE,
CREATECOMPUTESHADER_INVALIDCLASSLINKAGE,
DEVICE_CSSETSHADERRESOURCES_VIEWS_EMPTY,
CSSETCONSTANTBUFFERS_INVALIDBUFFER,
DEVICE_CSSETCONSTANTBUFFERS_BUFFERS_EMPTY,
DEVICE_CSSETSAMPLERS_SAMPLERS_EMPTY,
DEVICE_CSGETSHADERRESOURCES_VIEWS_EMPTY,
DEVICE_CSGETCONSTANTBUFFERS_BUFFERS_EMPTY,
DEVICE_CSGETSAMPLERS_SAMPLERS_EMPTY,
DEVICE_CREATEVERTEXSHADER_DOUBLEFLOATOPSNOTSUPPORTED,
DEVICE_CREATEHULLSHADER_DOUBLEFLOATOPSNOTSUPPORTED,
DEVICE_CREATEDOMAINSHADER_DOUBLEFLOATOPSNOTSUPPORTED,
DEVICE_CREATEGEOMETRYSHADER_DOUBLEFLOATOPSNOTSUPPORTED,
DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEFLOATOPSNOTSUPPORTED,
DEVICE_CREATEPIXELSHADER_DOUBLEFLOATOPSNOTSUPPORTED,
DEVICE_CREATECOMPUTESHADER_DOUBLEFLOATOPSNOTSUPPORTED,
CREATEBUFFER_INVALIDSTRUCTURESTRIDE,
CREATESHADERRESOURCEVIEW_INVALIDFLAGS,
CREATEUNORDEREDACCESSVIEW_INVALIDRESOURCE,
CREATEUNORDEREDACCESSVIEW_INVALIDDESC,
CREATEUNORDEREDACCESSVIEW_INVALIDFORMAT,
CREATEUNORDEREDACCESSVIEW_INVALIDDIMENSIONS,
CREATEUNORDEREDACCESSVIEW_UNRECOGNIZEDFORMAT,
DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_HAZARD,
DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_OVERLAPPING_OLD_SLOTS,
DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_NO_OP,
CSSETUNORDEREDACCESSVIEWS_UNBINDDELETINGOBJECT,
PSSETUNORDEREDACCESSVIEWS_UNBINDDELETINGOBJECT,
CREATEUNORDEREDACCESSVIEW_INVALIDARG_RETURN,
CREATEUNORDEREDACCESSVIEW_OUTOFMEMORY_RETURN,
CREATEUNORDEREDACCESSVIEW_TOOMANYOBJECTS,
DEVICE_CSSETUNORDEREDACCESSVIEWS_HAZARD,
CLEARUNORDEREDACCESSVIEW_DENORMFLUSH,
DEVICE_CSSETUNORDEREDACCESSS_VIEWS_EMPTY,
DEVICE_CSGETUNORDEREDACCESSS_VIEWS_EMPTY,
CREATEUNORDEREDACCESSVIEW_INVALIDFLAGS,
CREATESHADERRESESOURCEVIEW_TOOMANYOBJECTS,
DEVICE_DISPATCHINDIRECT_INVALID_ARG_BUFFER,
DEVICE_DISPATCHINDIRECT_OFFSET_UNALIGNED,
DEVICE_DISPATCHINDIRECT_OFFSET_OVERFLOW,
DEVICE_SETRESOURCEMINLOD_INVALIDCONTEXT,
DEVICE_SETRESOURCEMINLOD_INVALIDRESOURCE,
DEVICE_SETRESOURCEMINLOD_INVALIDMINLOD,
DEVICE_GETRESOURCEMINLOD_INVALIDCONTEXT,
DEVICE_GETRESOURCEMINLOD_INVALIDRESOURCE,
OMSETDEPTHSTENCIL_UNBINDDELETINGOBJECT,
CLEARDEPTHSTENCILVIEW_DEPTH_READONLY,
CLEARDEPTHSTENCILVIEW_STENCIL_READONLY,
CHECKFEATURESUPPORT_FORMAT_DEPRECATED,
DEVICE_UNORDEREDACCESSVIEW_RETURN_TYPE_MISMATCH,
DEVICE_UNORDEREDACCESSVIEW_NOT_SET,
DEVICE_DRAW_UNORDEREDACCESSVIEW_RENDERTARGETVIEW_OVERLAP,
DEVICE_UNORDEREDACCESSVIEW_DIMENSION_MISMATCH,
DEVICE_UNORDEREDACCESSVIEW_APPEND_UNSUPPORTED,
DEVICE_UNORDEREDACCESSVIEW_ATOMICS_UNSUPPORTED,
DEVICE_UNORDEREDACCESSVIEW_STRUCTURE_STRIDE_MISMATCH,
DEVICE_UNORDEREDACCESSVIEW_BUFFER_TYPE_MISMATCH,
DEVICE_UNORDEREDACCESSVIEW_RAW_UNSUPPORTED,
DEVICE_UNORDEREDACCESSVIEW_FORMAT_LD_UNSUPPORTED,
DEVICE_UNORDEREDACCESSVIEW_FORMAT_STORE_UNSUPPORTED,
DEVICE_UNORDEREDACCESSVIEW_ATOMIC_ADD_UNSUPPORTED,
DEVICE_UNORDEREDACCESSVIEW_ATOMIC_BITWISE_OPS_UNSUPPORTED,
DEVICE_UNORDEREDACCESSVIEW_ATOMIC_CMPSTORE_CMPEXCHANGE_UNSUPPORTED,
DEVICE_UNORDEREDACCESSVIEW_ATOMIC_EXCHANGE_UNSUPPORTED,
DEVICE_UNORDEREDACCESSVIEW_ATOMIC_SIGNED_MINMAX_UNSUPPORTED,
DEVICE_UNORDEREDACCESSVIEW_ATOMIC_UNSIGNED_MINMAX_UNSUPPORTED,
DEVICE_DISPATCH_BOUND_RESOURCE_MAPPED,
DEVICE_DISPATCH_THREADGROUPCOUNT_OVERFLOW,
DEVICE_DISPATCH_THREADGROUPCOUNT_ZERO,
DEVICE_SHADERRESOURCEVIEW_STRUCTURE_STRIDE_MISMATCH,
DEVICE_SHADERRESOURCEVIEW_BUFFER_TYPE_MISMATCH,
DEVICE_SHADERRESOURCEVIEW_RAW_UNSUPPORTED,
DEVICE_DISPATCH_UNSUPPORTED,
DEVICE_DISPATCHINDIRECT_UNSUPPORTED,
COPYSTRUCTURECOUNT_INVALIDOFFSET,
COPYSTRUCTURECOUNT_LARGEOFFSET,
COPYSTRUCTURECOUNT_INVALIDDESTINATIONSTATE,
COPYSTRUCTURECOUNT_INVALIDSOURCESTATE,
CHECKFORMATSUPPORT_FORMAT_NOT_SUPPORTED,
DEVICE_CSSETUNORDEREDACCESSVIEWS_INVALIDVIEW,
DEVICE_CSSETUNORDEREDACCESSVIEWS_INVALIDOFFSET,
DEVICE_CSSETUNORDEREDACCESSVIEWS_TOOMANYVIEWS,
CLEARUNORDEREDACCESSVIEWFLOAT_INVALIDFORMAT,
DEVICE_UNORDEREDACCESSVIEW_COUNTER_UNSUPPORTED,
REF_WARNING,
DEVICE_DRAW_PIXEL_SHADER_WITHOUT_RTV_OR_DSV,
SHADER_ABORT,
SHADER_MESSAGE,
SHADER_ERROR,
OFFERRESOURCES_INVALIDRESOURCE,
HSSETSAMPLERS_UNBINDDELETINGOBJECT,
DSSETSAMPLERS_UNBINDDELETINGOBJECT,
CSSETSAMPLERS_UNBINDDELETINGOBJECT,
HSSETSHADER_UNBINDDELETINGOBJECT,
DSSETSHADER_UNBINDDELETINGOBJECT,
CSSETSHADER_UNBINDDELETINGOBJECT,
ENQUEUESETEVENT_INVALIDARG_RETURN,
ENQUEUESETEVENT_OUTOFMEMORY_RETURN,
ENQUEUESETEVENT_ACCESSDENIED_RETURN,
DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_NUMUAVS_INVALIDRANGE,
USE_OF_ZERO_REFCOUNT_OBJECT,
D3D11_MESSAGES_END,
D3D11_1_MESSAGES_START = 0x300000,
CREATE_VIDEODECODER,
CREATE_VIDEOPROCESSORENUM,
CREATE_VIDEOPROCESSOR,
CREATE_DECODEROUTPUTVIEW,
CREATE_PROCESSORINPUTVIEW,
CREATE_PROCESSOROUTPUTVIEW,
CREATE_DEVICECONTEXTSTATE,
LIVE_VIDEODECODER,
LIVE_VIDEOPROCESSORENUM,
LIVE_VIDEOPROCESSOR,
LIVE_DECODEROUTPUTVIEW,
LIVE_PROCESSORINPUTVIEW,
LIVE_PROCESSOROUTPUTVIEW,
LIVE_DEVICECONTEXTSTATE,
DESTROY_VIDEODECODER,
DESTROY_VIDEOPROCESSORENUM,
DESTROY_VIDEOPROCESSOR,
DESTROY_DECODEROUTPUTVIEW,
DESTROY_PROCESSORINPUTVIEW,
DESTROY_PROCESSOROUTPUTVIEW,
DESTROY_DEVICECONTEXTSTATE,
CREATEDEVICECONTEXTSTATE_INVALIDFLAGS,
CREATEDEVICECONTEXTSTATE_INVALIDFEATURELEVEL,
CREATEDEVICECONTEXTSTATE_FEATURELEVELS_NOT_SUPPORTED,
CREATEDEVICECONTEXTSTATE_INVALIDREFIID,
DEVICE_DISCARDVIEW_INVALIDVIEW,
COPYSUBRESOURCEREGION1_INVALIDCOPYFLAGS,
UPDATESUBRESOURCE1_INVALIDCOPYFLAGS,
CREATERASTERIZERSTATE_INVALIDFORCEDSAMPLECOUNT,
CREATEVIDEODECODER_OUTOFMEMORY_RETURN,
CREATEVIDEODECODER_NULLPARAM,
CREATEVIDEODECODER_INVALIDFORMAT,
CREATEVIDEODECODER_ZEROWIDTHHEIGHT,
CREATEVIDEODECODER_DRIVER_INVALIDBUFFERSIZE,
CREATEVIDEODECODER_DRIVER_INVALIDBUFFERUSAGE,
GETVIDEODECODERPROFILECOUNT_OUTOFMEMORY,
GETVIDEODECODERPROFILE_NULLPARAM,
GETVIDEODECODERPROFILE_INVALIDINDEX,
GETVIDEODECODERPROFILE_OUTOFMEMORY_RETURN,
CHECKVIDEODECODERFORMAT_NULLPARAM,
CHECKVIDEODECODERFORMAT_OUTOFMEMORY_RETURN,
GETVIDEODECODERCONFIGCOUNT_NULLPARAM,
GETVIDEODECODERCONFIGCOUNT_OUTOFMEMORY_RETURN,
GETVIDEODECODERCONFIG_NULLPARAM,
GETVIDEODECODERCONFIG_INVALIDINDEX,
GETVIDEODECODERCONFIG_OUTOFMEMORY_RETURN,
GETDECODERCREATIONPARAMS_NULLPARAM,
GETDECODERDRIVERHANDLE_NULLPARAM,
GETDECODERBUFFER_NULLPARAM,
GETDECODERBUFFER_INVALIDBUFFER,
GETDECODERBUFFER_INVALIDTYPE,
GETDECODERBUFFER_LOCKED,
RELEASEDECODERBUFFER_NULLPARAM,
RELEASEDECODERBUFFER_INVALIDTYPE,
RELEASEDECODERBUFFER_NOTLOCKED,
DECODERBEGINFRAME_NULLPARAM,
DECODERBEGINFRAME_HAZARD,
DECODERENDFRAME_NULLPARAM,
SUBMITDECODERBUFFERS_NULLPARAM,
SUBMITDECODERBUFFERS_INVALIDTYPE,
DECODEREXTENSION_NULLPARAM,
DECODEREXTENSION_INVALIDRESOURCE,
CREATEVIDEOPROCESSORENUMERATOR_OUTOFMEMORY_RETURN,
CREATEVIDEOPROCESSORENUMERATOR_NULLPARAM,
CREATEVIDEOPROCESSORENUMERATOR_INVALIDFRAMEFORMAT,
CREATEVIDEOPROCESSORENUMERATOR_INVALIDUSAGE,
CREATEVIDEOPROCESSORENUMERATOR_INVALIDINPUTFRAMERATE,
CREATEVIDEOPROCESSORENUMERATOR_INVALIDOUTPUTFRAMERATE,
CREATEVIDEOPROCESSORENUMERATOR_INVALIDWIDTHHEIGHT,
GETVIDEOPROCESSORCONTENTDESC_NULLPARAM,
CHECKVIDEOPROCESSORFORMAT_NULLPARAM,
GETVIDEOPROCESSORCAPS_NULLPARAM,
GETVIDEOPROCESSORRATECONVERSIONCAPS_NULLPARAM,
GETVIDEOPROCESSORRATECONVERSIONCAPS_INVALIDINDEX,
GETVIDEOPROCESSORCUSTOMRATE_NULLPARAM,
GETVIDEOPROCESSORCUSTOMRATE_INVALIDINDEX,
GETVIDEOPROCESSORFILTERRANGE_NULLPARAM,
GETVIDEOPROCESSORFILTERRANGE_UNSUPPORTED,
CREATEVIDEOPROCESSOR_OUTOFMEMORY_RETURN,
CREATEVIDEOPROCESSOR_NULLPARAM,
VIDEOPROCESSORSETOUTPUTTARGETRECT_NULLPARAM,
VIDEOPROCESSORSETOUTPUTBACKGROUNDCOLOR_NULLPARAM,
VIDEOPROCESSORSETOUTPUTBACKGROUNDCOLOR_INVALIDALPHA,
VIDEOPROCESSORSETOUTPUTCOLORSPACE_NULLPARAM,
VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_NULLPARAM,
VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_UNSUPPORTED,
VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_INVALIDSTREAM,
VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_INVALIDFILLMODE,
VIDEOPROCESSORSETOUTPUTCONSTRICTION_NULLPARAM,
VIDEOPROCESSORSETOUTPUTSTEREOMODE_NULLPARAM,
VIDEOPROCESSORSETOUTPUTSTEREOMODE_UNSUPPORTED,
VIDEOPROCESSORSETOUTPUTEXTENSION_NULLPARAM,
VIDEOPROCESSORGETOUTPUTTARGETRECT_NULLPARAM,
VIDEOPROCESSORGETOUTPUTBACKGROUNDCOLOR_NULLPARAM,
VIDEOPROCESSORGETOUTPUTCOLORSPACE_NULLPARAM,
VIDEOPROCESSORGETOUTPUTALPHAFILLMODE_NULLPARAM,
VIDEOPROCESSORGETOUTPUTCONSTRICTION_NULLPARAM,
VIDEOPROCESSORSETOUTPUTCONSTRICTION_UNSUPPORTED,
VIDEOPROCESSORSETOUTPUTCONSTRICTION_INVALIDSIZE,
VIDEOPROCESSORGETOUTPUTSTEREOMODE_NULLPARAM,
VIDEOPROCESSORGETOUTPUTEXTENSION_NULLPARAM,
VIDEOPROCESSORSETSTREAMFRAMEFORMAT_NULLPARAM,
VIDEOPROCESSORSETSTREAMFRAMEFORMAT_INVALIDFORMAT,
VIDEOPROCESSORSETSTREAMFRAMEFORMAT_INVALIDSTREAM,
VIDEOPROCESSORSETSTREAMCOLORSPACE_NULLPARAM,
VIDEOPROCESSORSETSTREAMCOLORSPACE_INVALIDSTREAM,
VIDEOPROCESSORSETSTREAMOUTPUTRATE_NULLPARAM,
VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDRATE,
VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDFLAG,
VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDSTREAM,
VIDEOPROCESSORSETSTREAMSOURCERECT_NULLPARAM,
VIDEOPROCESSORSETSTREAMSOURCERECT_INVALIDSTREAM,
VIDEOPROCESSORSETSTREAMSOURCERECT_INVALIDRECT,
VIDEOPROCESSORSETSTREAMDESTRECT_NULLPARAM,
VIDEOPROCESSORSETSTREAMDESTRECT_INVALIDSTREAM,
VIDEOPROCESSORSETSTREAMDESTRECT_INVALIDRECT,
VIDEOPROCESSORSETSTREAMALPHA_NULLPARAM,
VIDEOPROCESSORSETSTREAMALPHA_INVALIDSTREAM,
VIDEOPROCESSORSETSTREAMALPHA_INVALIDALPHA,
VIDEOPROCESSORSETSTREAMPALETTE_NULLPARAM,
VIDEOPROCESSORSETSTREAMPALETTE_INVALIDSTREAM,
VIDEOPROCESSORSETSTREAMPALETTE_INVALIDCOUNT,
VIDEOPROCESSORSETSTREAMPALETTE_INVALIDALPHA,
VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_NULLPARAM,
VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_INVALIDSTREAM,
VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_INVALIDRATIO,
VIDEOPROCESSORSETSTREAMLUMAKEY_NULLPARAM,
VIDEOPROCESSORSETSTREAMLUMAKEY_INVALIDSTREAM,
VIDEOPROCESSORSETSTREAMLUMAKEY_INVALIDRANGE,
VIDEOPROCESSORSETSTREAMLUMAKEY_UNSUPPORTED,
VIDEOPROCESSORSETSTREAMSTEREOFORMAT_NULLPARAM,
VIDEOPROCESSORSETSTREAMSTEREOFORMAT_INVALIDSTREAM,
VIDEOPROCESSORSETSTREAMSTEREOFORMAT_UNSUPPORTED,
VIDEOPROCESSORSETSTREAMSTEREOFORMAT_FLIPUNSUPPORTED,
VIDEOPROCESSORSETSTREAMSTEREOFORMAT_MONOOFFSETUNSUPPORTED,
VIDEOPROCESSORSETSTREAMSTEREOFORMAT_FORMATUNSUPPORTED,
VIDEOPROCESSORSETSTREAMSTEREOFORMAT_INVALIDFORMAT,
VIDEOPROCESSORSETSTREAMAUTOPROCESSINGMODE_NULLPARAM,
VIDEOPROCESSORSETSTREAMAUTOPROCESSINGMODE_INVALIDSTREAM,
VIDEOPROCESSORSETSTREAMFILTER_NULLPARAM,
VIDEOPROCESSORSETSTREAMFILTER_INVALIDSTREAM,
VIDEOPROCESSORSETSTREAMFILTER_INVALIDFILTER,
VIDEOPROCESSORSETSTREAMFILTER_UNSUPPORTED,
VIDEOPROCESSORSETSTREAMFILTER_INVALIDLEVEL,
VIDEOPROCESSORSETSTREAMEXTENSION_NULLPARAM,
VIDEOPROCESSORSETSTREAMEXTENSION_INVALIDSTREAM,
VIDEOPROCESSORGETSTREAMFRAMEFORMAT_NULLPARAM,
VIDEOPROCESSORGETSTREAMCOLORSPACE_NULLPARAM,
VIDEOPROCESSORGETSTREAMOUTPUTRATE_NULLPARAM,
VIDEOPROCESSORGETSTREAMSOURCERECT_NULLPARAM,
VIDEOPROCESSORGETSTREAMDESTRECT_NULLPARAM,
VIDEOPROCESSORGETSTREAMALPHA_NULLPARAM,
VIDEOPROCESSORGETSTREAMPALETTE_NULLPARAM,
VIDEOPROCESSORGETSTREAMPIXELASPECTRATIO_NULLPARAM,
VIDEOPROCESSORGETSTREAMLUMAKEY_NULLPARAM,
VIDEOPROCESSORGETSTREAMSTEREOFORMAT_NULLPARAM,
VIDEOPROCESSORGETSTREAMAUTOPROCESSINGMODE_NULLPARAM,
VIDEOPROCESSORGETSTREAMFILTER_NULLPARAM,
VIDEOPROCESSORGETSTREAMEXTENSION_NULLPARAM,
VIDEOPROCESSORGETSTREAMEXTENSION_INVALIDSTREAM,
VIDEOPROCESSORBLT_NULLPARAM,
VIDEOPROCESSORBLT_INVALIDSTREAMCOUNT,
VIDEOPROCESSORBLT_TARGETRECT,
VIDEOPROCESSORBLT_INVALIDOUTPUT,
VIDEOPROCESSORBLT_INVALIDPASTFRAMES,
VIDEOPROCESSORBLT_INVALIDFUTUREFRAMES,
VIDEOPROCESSORBLT_INVALIDSOURCERECT,
VIDEOPROCESSORBLT_INVALIDDESTRECT,
VIDEOPROCESSORBLT_INVALIDINPUTRESOURCE,
VIDEOPROCESSORBLT_INVALIDARRAYSIZE,
VIDEOPROCESSORBLT_INVALIDARRAY,
VIDEOPROCESSORBLT_RIGHTEXPECTED,
VIDEOPROCESSORBLT_RIGHTNOTEXPECTED,
VIDEOPROCESSORBLT_STEREONOTENABLED,
VIDEOPROCESSORBLT_INVALIDRIGHTRESOURCE,
VIDEOPROCESSORBLT_NOSTEREOSTREAMS,
VIDEOPROCESSORBLT_INPUTHAZARD,
VIDEOPROCESSORBLT_OUTPUTHAZARD,
CREATEVIDEODECODEROUTPUTVIEW_OUTOFMEMORY_RETURN,
CREATEVIDEODECODEROUTPUTVIEW_NULLPARAM,
CREATEVIDEODECODEROUTPUTVIEW_INVALIDTYPE,
CREATEVIDEODECODEROUTPUTVIEW_INVALIDBIND,
CREATEVIDEODECODEROUTPUTVIEW_UNSUPPORTEDFORMAT,
CREATEVIDEODECODEROUTPUTVIEW_INVALIDMIP,
CREATEVIDEODECODEROUTPUTVIEW_UNSUPPORTEMIP,
CREATEVIDEODECODEROUTPUTVIEW_INVALIDARRAYSIZE,
CREATEVIDEODECODEROUTPUTVIEW_INVALIDARRAY,
CREATEVIDEODECODEROUTPUTVIEW_INVALIDDIMENSION,
CREATEVIDEOPROCESSORINPUTVIEW_OUTOFMEMORY_RETURN,
CREATEVIDEOPROCESSORINPUTVIEW_NULLPARAM,
CREATEVIDEOPROCESSORINPUTVIEW_INVALIDTYPE,
CREATEVIDEOPROCESSORINPUTVIEW_INVALIDBIND,
CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMISC,
CREATEVIDEOPROCESSORINPUTVIEW_INVALIDUSAGE,
CREATEVIDEOPROCESSORINPUTVIEW_INVALIDFORMAT,
CREATEVIDEOPROCESSORINPUTVIEW_INVALIDFOURCC,
CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMIP,
CREATEVIDEOPROCESSORINPUTVIEW_UNSUPPORTEDMIP,
CREATEVIDEOPROCESSORINPUTVIEW_INVALIDARRAYSIZE,
CREATEVIDEOPROCESSORINPUTVIEW_INVALIDARRAY,
CREATEVIDEOPROCESSORINPUTVIEW_INVALIDDIMENSION,
CREATEVIDEOPROCESSOROUTPUTVIEW_OUTOFMEMORY_RETURN,
CREATEVIDEOPROCESSOROUTPUTVIEW_NULLPARAM,
CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDTYPE,
CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDBIND,
CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDFORMAT,
CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDMIP,
CREATEVIDEOPROCESSOROUTPUTVIEW_UNSUPPORTEDMIP,
CREATEVIDEOPROCESSOROUTPUTVIEW_UNSUPPORTEDARRAY,
CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDARRAY,
CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDDIMENSION,
DEVICE_DRAW_INVALID_USE_OF_FORCED_SAMPLE_COUNT,
CREATEBLENDSTATE_INVALIDLOGICOPS,
CREATESHADERRESOURCEVIEW_INVALIDDARRAYWITHDECODER,
CREATEUNORDEREDACCESSVIEW_INVALIDDARRAYWITHDECODER,
CREATERENDERTARGETVIEW_INVALIDDARRAYWITHDECODER,
DEVICE_LOCKEDOUT_INTERFACE,
REF_WARNING_ATOMIC_INCONSISTENT,
REF_WARNING_READING_UNINITIALIZED_RESOURCE,
REF_WARNING_RAW_HAZARD,
REF_WARNING_WAR_HAZARD,
REF_WARNING_WAW_HAZARD,
CREATECRYPTOSESSION_NULLPARAM,
CREATECRYPTOSESSION_OUTOFMEMORY_RETURN,
GETCRYPTOTYPE_NULLPARAM,
GETDECODERPROFILE_NULLPARAM,
GETCRYPTOSESSIONCERTIFICATESIZE_NULLPARAM,
GETCRYPTOSESSIONCERTIFICATE_NULLPARAM,
GETCRYPTOSESSIONCERTIFICATE_WRONGSIZE,
GETCRYPTOSESSIONHANDLE_WRONGSIZE,
NEGOTIATECRPYTOSESSIONKEYEXCHANGE_NULLPARAM,
ENCRYPTIONBLT_UNSUPPORTED,
ENCRYPTIONBLT_NULLPARAM,
ENCRYPTIONBLT_SRC_WRONGDEVICE,
ENCRYPTIONBLT_DST_WRONGDEVICE,
ENCRYPTIONBLT_FORMAT_MISMATCH,
ENCRYPTIONBLT_SIZE_MISMATCH,
ENCRYPTIONBLT_SRC_MULTISAMPLED,
ENCRYPTIONBLT_DST_NOT_STAGING,
ENCRYPTIONBLT_SRC_MAPPED,
ENCRYPTIONBLT_DST_MAPPED,
ENCRYPTIONBLT_SRC_OFFERED,
ENCRYPTIONBLT_DST_OFFERED,
ENCRYPTIONBLT_SRC_CONTENT_UNDEFINED,
DECRYPTIONBLT_UNSUPPORTED,
DECRYPTIONBLT_NULLPARAM,
DECRYPTIONBLT_SRC_WRONGDEVICE,
DECRYPTIONBLT_DST_WRONGDEVICE,
DECRYPTIONBLT_FORMAT_MISMATCH,
DECRYPTIONBLT_SIZE_MISMATCH,
DECRYPTIONBLT_DST_MULTISAMPLED,
DECRYPTIONBLT_SRC_NOT_STAGING,
DECRYPTIONBLT_DST_NOT_RENDER_TARGET,
DECRYPTIONBLT_SRC_MAPPED,
DECRYPTIONBLT_DST_MAPPED,
DECRYPTIONBLT_SRC_OFFERED,
DECRYPTIONBLT_DST_OFFERED,
DECRYPTIONBLT_SRC_CONTENT_UNDEFINED,
STARTSESSIONKEYREFRESH_NULLPARAM,
STARTSESSIONKEYREFRESH_INVALIDSIZE,
FINISHSESSIONKEYREFRESH_NULLPARAM,
GETENCRYPTIONBLTKEY_NULLPARAM,
GETENCRYPTIONBLTKEY_INVALIDSIZE,
GETCONTENTPROTECTIONCAPS_NULLPARAM,
CHECKCRYPTOKEYEXCHANGE_NULLPARAM,
CHECKCRYPTOKEYEXCHANGE_INVALIDINDEX,
CREATEAUTHENTICATEDCHANNEL_NULLPARAM,
CREATEAUTHENTICATEDCHANNEL_UNSUPPORTED,
CREATEAUTHENTICATEDCHANNEL_INVALIDTYPE,
CREATEAUTHENTICATEDCHANNEL_OUTOFMEMORY_RETURN,
GETAUTHENTICATEDCHANNELCERTIFICATESIZE_INVALIDCHANNEL,
GETAUTHENTICATEDCHANNELCERTIFICATESIZE_NULLPARAM,
GETAUTHENTICATEDCHANNELCERTIFICATE_INVALIDCHANNEL,
GETAUTHENTICATEDCHANNELCERTIFICATE_NULLPARAM,
GETAUTHENTICATEDCHANNELCERTIFICATE_WRONGSIZE,
NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_INVALIDCHANNEL,
NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_NULLPARAM,
QUERYAUTHENTICATEDCHANNEL_NULLPARAM,
QUERYAUTHENTICATEDCHANNEL_WRONGCHANNEL,
QUERYAUTHENTICATEDCHANNEL_UNSUPPORTEDQUERY,
QUERYAUTHENTICATEDCHANNEL_WRONGSIZE,
QUERYAUTHENTICATEDCHANNEL_INVALIDPROCESSINDEX,
CONFIGUREAUTHENTICATEDCHANNEL_NULLPARAM,
CONFIGUREAUTHENTICATEDCHANNEL_WRONGCHANNEL,
CONFIGUREAUTHENTICATEDCHANNEL_UNSUPPORTEDCONFIGURE,
CONFIGUREAUTHENTICATEDCHANNEL_WRONGSIZE,
CONFIGUREAUTHENTICATEDCHANNEL_INVALIDPROCESSIDTYPE,
VSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT,
DSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT,
HSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT,
GSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT,
PSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT,
CSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT,
NEGOTIATECRPYTOSESSIONKEYEXCHANGE_INVALIDSIZE,
NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_INVALIDSIZE,
OFFERRESOURCES_INVALIDPRIORITY,
GETCRYPTOSESSIONHANDLE_OUTOFMEMORY,
ACQUIREHANDLEFORCAPTURE_NULLPARAM,
ACQUIREHANDLEFORCAPTURE_INVALIDTYPE,
ACQUIREHANDLEFORCAPTURE_INVALIDBIND,
ACQUIREHANDLEFORCAPTURE_INVALIDARRAY,
VIDEOPROCESSORSETSTREAMROTATION_NULLPARAM,
VIDEOPROCESSORSETSTREAMROTATION_INVALIDSTREAM,
VIDEOPROCESSORSETSTREAMROTATION_INVALID,
VIDEOPROCESSORSETSTREAMROTATION_UNSUPPORTED,
VIDEOPROCESSORGETSTREAMROTATION_NULLPARAM,
DEVICE_CLEARVIEW_INVALIDVIEW,
DEVICE_CREATEVERTEXSHADER_DOUBLEEXTENSIONSNOTSUPPORTED,
DEVICE_CREATEVERTEXSHADER_SHADEREXTENSIONSNOTSUPPORTED,
DEVICE_CREATEHULLSHADER_DOUBLEEXTENSIONSNOTSUPPORTED,
DEVICE_CREATEHULLSHADER_SHADEREXTENSIONSNOTSUPPORTED,
DEVICE_CREATEDOMAINSHADER_DOUBLEEXTENSIONSNOTSUPPORTED,
DEVICE_CREATEDOMAINSHADER_SHADEREXTENSIONSNOTSUPPORTED,
DEVICE_CREATEGEOMETRYSHADER_DOUBLEEXTENSIONSNOTSUPPORTED,
DEVICE_CREATEGEOMETRYSHADER_SHADEREXTENSIONSNOTSUPPORTED,
DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEEXTENSIONSNOTSUPPORTED,
DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_SHADEREXTENSIONSNOTSUPPORTED,
DEVICE_CREATEPIXELSHADER_DOUBLEEXTENSIONSNOTSUPPORTED,
DEVICE_CREATEPIXELSHADER_SHADEREXTENSIONSNOTSUPPORTED,
DEVICE_CREATECOMPUTESHADER_DOUBLEEXTENSIONSNOTSUPPORTED,
DEVICE_CREATECOMPUTESHADER_SHADEREXTENSIONSNOTSUPPORTED,
DEVICE_SHADER_LINKAGE_MINPRECISION,
VIDEOPROCESSORSETSTREAMALPHA_UNSUPPORTED,
VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_UNSUPPORTED,
DEVICE_CREATEVERTEXSHADER_UAVSNOTSUPPORTED,
DEVICE_CREATEHULLSHADER_UAVSNOTSUPPORTED,
DEVICE_CREATEDOMAINSHADER_UAVSNOTSUPPORTED,
DEVICE_CREATEGEOMETRYSHADER_UAVSNOTSUPPORTED,
DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UAVSNOTSUPPORTED,
DEVICE_CREATEPIXELSHADER_UAVSNOTSUPPORTED,
DEVICE_CREATECOMPUTESHADER_UAVSNOTSUPPORTED,
DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_INVALIDOFFSET,
DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_TOOMANYVIEWS,
DEVICE_CLEARVIEW_NOTSUPPORTED,
SWAPDEVICECONTEXTSTATE_NOTSUPPORTED,
UPDATESUBRESOURCE_PREFERUPDATESUBRESOURCE1,
GETDC_INACCESSIBLE,
DEVICE_CLEARVIEW_INVALIDRECT,
DEVICE_DRAW_SAMPLE_MASK_IGNORED_ON_FL9,
DEVICE_OPEN_SHARED_RESOURCE1_NOT_SUPPORTED,
DEVICE_OPEN_SHARED_RESOURCE_BY_NAME_NOT_SUPPORTED,
ENQUEUESETEVENT_NOT_SUPPORTED,
OFFERRELEASE_NOT_SUPPORTED,
OFFERRESOURCES_INACCESSIBLE,
CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMSAA,
CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDMSAA,
DEVICE_CLEARVIEW_INVALIDSOURCERECT,
DEVICE_CLEARVIEW_EMPTYRECT,
UPDATESUBRESOURCE_EMPTYDESTBOX,
COPYSUBRESOURCEREGION_EMPTYSOURCEBOX,
DEVICE_DRAW_OM_RENDER_TARGET_DOES_NOT_SUPPORT_LOGIC_OPS,
DEVICE_DRAW_DEPTHSTENCILVIEW_NOT_SET,
DEVICE_DRAW_RENDERTARGETVIEW_NOT_SET,
DEVICE_DRAW_RENDERTARGETVIEW_NOT_SET_DUE_TO_FLIP_PRESENT,
DEVICE_UNORDEREDACCESSVIEW_NOT_SET_DUE_TO_FLIP_PRESENT,
GETDATAFORNEWHARDWAREKEY_NULLPARAM,
CHECKCRYPTOSESSIONSTATUS_NULLPARAM,
GETCRYPTOSESSIONPRIVATEDATASIZE_NULLPARAM,
GETVIDEODECODERCAPS_NULLPARAM,
GETVIDEODECODERCAPS_ZEROWIDTHHEIGHT,
CHECKVIDEODECODERDOWNSAMPLING_NULLPARAM,
CHECKVIDEODECODERDOWNSAMPLING_INVALIDCOLORSPACE,
CHECKVIDEODECODERDOWNSAMPLING_ZEROWIDTHHEIGHT,
VIDEODECODERENABLEDOWNSAMPLING_NULLPARAM,
VIDEODECODERENABLEDOWNSAMPLING_UNSUPPORTED,
VIDEODECODERUPDATEDOWNSAMPLING_NULLPARAM,
VIDEODECODERUPDATEDOWNSAMPLING_UNSUPPORTED,
CHECKVIDEOPROCESSORFORMATCONVERSION_NULLPARAM,
VIDEOPROCESSORSETOUTPUTCOLORSPACE1_NULLPARAM,
VIDEOPROCESSORGETOUTPUTCOLORSPACE1_NULLPARAM,
VIDEOPROCESSORSETSTREAMCOLORSPACE1_NULLPARAM,
VIDEOPROCESSORSETSTREAMCOLORSPACE1_INVALIDSTREAM,
VIDEOPROCESSORSETSTREAMMIRROR_NULLPARAM,
VIDEOPROCESSORSETSTREAMMIRROR_INVALIDSTREAM,
VIDEOPROCESSORSETSTREAMMIRROR_UNSUPPORTED,
VIDEOPROCESSORGETSTREAMCOLORSPACE1_NULLPARAM,
VIDEOPROCESSORGETSTREAMMIRROR_NULLPARAM,
RECOMMENDVIDEODECODERDOWNSAMPLING_NULLPARAM,
RECOMMENDVIDEODECODERDOWNSAMPLING_INVALIDCOLORSPACE,
RECOMMENDVIDEODECODERDOWNSAMPLING_ZEROWIDTHHEIGHT,
VIDEOPROCESSORSETOUTPUTSHADERUSAGE_NULLPARAM,
VIDEOPROCESSORGETOUTPUTSHADERUSAGE_NULLPARAM,
VIDEOPROCESSORGETBEHAVIORHINTS_NULLPARAM,
VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDSTREAMCOUNT,
VIDEOPROCESSORGETBEHAVIORHINTS_TARGETRECT,
VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDSOURCERECT,
VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDDESTRECT,
GETCRYPTOSESSIONPRIVATEDATASIZE_INVALID_KEY_EXCHANGE_TYPE,
DEVICE_OPEN_SHARED_RESOURCE1_ACCESS_DENIED,
D3D11_1_MESSAGES_END,
D3D11_2_MESSAGES_START,
CREATEBUFFER_INVALIDUSAGE,
CREATETEXTURE1D_INVALIDUSAGE,
CREATETEXTURE2D_INVALIDUSAGE,
CREATEINPUTLAYOUT_LEVEL9_STEPRATE_NOT_1,
CREATEINPUTLAYOUT_LEVEL9_INSTANCING_NOT_SUPPORTED,
UPDATETILEMAPPINGS_INVALID_PARAMETER,
COPYTILEMAPPINGS_INVALID_PARAMETER,
COPYTILES_INVALID_PARAMETER,
UPDATETILES_INVALID_PARAMETER,
RESIZETILEPOOL_INVALID_PARAMETER,
TILEDRESOURCEBARRIER_INVALID_PARAMETER,
NULL_TILE_MAPPING_ACCESS_WARNING,
NULL_TILE_MAPPING_ACCESS_ERROR,
DIRTY_TILE_MAPPING_ACCESS,
DUPLICATE_TILE_MAPPINGS_IN_COVERED_AREA,
TILE_MAPPINGS_IN_COVERED_AREA_DUPLICATED_OUTSIDE,
TILE_MAPPINGS_SHARED_BETWEEN_INCOMPATIBLE_RESOURCES,
TILE_MAPPINGS_SHARED_BETWEEN_INPUT_AND_OUTPUT,
CHECKMULTISAMPLEQUALITYLEVELS_INVALIDFLAGS,
GETRESOURCETILING_NONTILED_RESOURCE,
RESIZETILEPOOL_SHRINK_WITH_MAPPINGS_STILL_DEFINED_PAST_END,
NEED_TO_CALL_TILEDRESOURCEBARRIER,
CREATEDEVICE_INVALIDARGS,
CREATEDEVICE_WARNING,
CLEARUNORDEREDACCESSVIEWUINT_HAZARD,
CLEARUNORDEREDACCESSVIEWFLOAT_HAZARD,
TILED_RESOURCE_TIER_1_BUFFER_TEXTURE_MISMATCH,
CREATE_CRYPTOSESSION,
CREATE_AUTHENTICATEDCHANNEL,
LIVE_CRYPTOSESSION,
LIVE_AUTHENTICATEDCHANNEL,
DESTROY_CRYPTOSESSION,
DESTROY_AUTHENTICATEDCHANNEL,
D3D11_2_MESSAGES_END,
D3D11_3_MESSAGES_START,
CREATERASTERIZERSTATE_INVALID_CONSERVATIVERASTERMODE,
DEVICE_DRAW_INVALID_SYSTEMVALUE,
CREATEQUERYORPREDICATE_INVALIDCONTEXTTYPE,
CREATEQUERYORPREDICATE_DECODENOTSUPPORTED,
CREATEQUERYORPREDICATE_ENCODENOTSUPPORTED,
CREATESHADERRESOURCEVIEW_INVALIDPLANEINDEX,
CREATESHADERRESOURCEVIEW_INVALIDVIDEOPLANEINDEX,
CREATESHADERRESOURCEVIEW_AMBIGUOUSVIDEOPLANEINDEX,
CREATERENDERTARGETVIEW_INVALIDPLANEINDEX,
CREATERENDERTARGETVIEW_INVALIDVIDEOPLANEINDEX,
CREATERENDERTARGETVIEW_AMBIGUOUSVIDEOPLANEINDEX,
CREATEUNORDEREDACCESSVIEW_INVALIDPLANEINDEX,
CREATEUNORDEREDACCESSVIEW_INVALIDVIDEOPLANEINDEX,
CREATEUNORDEREDACCESSVIEW_AMBIGUOUSVIDEOPLANEINDEX,
JPEGDECODE_INVALIDSCANDATAOFFSET,
JPEGDECODE_NOTSUPPORTED,
JPEGDECODE_DIMENSIONSTOOLARGE,
JPEGDECODE_INVALIDCOMPONENTS,
JPEGDECODE_DESTINATIONNOT2D,
JPEGDECODE_TILEDRESOURCESUNSUPPORTED,
JPEGDECODE_GUARDRECTSUNSUPPORTED,
JPEGDECODE_FORMATUNSUPPORTED,
JPEGDECODE_INVALIDSUBRESOURCE,
JPEGDECODE_INVALIDMIPLEVEL,
JPEGDECODE_EMPTYDESTBOX,
JPEGDECODE_DESTBOXNOT2D,
JPEGDECODE_DESTBOXNOTSUB,
JPEGDECODE_DESTBOXESINTERSECT,
JPEGDECODE_XSUBSAMPLEMISMATCH,
JPEGDECODE_YSUBSAMPLEMISMATCH,
JPEGDECODE_XSUBSAMPLEODD,
JPEGDECODE_YSUBSAMPLEODD,
JPEGDECODE_OUTPUTDIMENSIONSTOOLARGE,
JPEGDECODE_NONPOW2SCALEUNSUPPORTED,
JPEGDECODE_FRACTIONALDOWNSCALETOLARGE,
JPEGDECODE_CHROMASIZEMISMATCH,
JPEGDECODE_LUMACHROMASIZEMISMATCH,
JPEGDECODE_INVALIDNUMDESTINATIONS,
JPEGDECODE_SUBBOXUNSUPPORTED,
JPEGDECODE_1DESTUNSUPPORTEDFORMAT,
JPEGDECODE_3DESTUNSUPPORTEDFORMAT,
JPEGDECODE_SCALEUNSUPPORTED,
JPEGDECODE_INVALIDSOURCESIZE,
JPEGDECODE_INVALIDCOPYFLAGS,
JPEGDECODE_HAZARD,
JPEGDECODE_UNSUPPORTEDSRCBUFFERUSAGE,
JPEGDECODE_UNSUPPORTEDSRCBUFFERMISCFLAGS,
JPEGDECODE_UNSUPPORTEDDSTTEXTUREUSAGE,
JPEGDECODE_BACKBUFFERNOTSUPPORTED,
JPEGDECODE_UNSUPPRTEDCOPYFLAGS,
JPEGENCODE_NOTSUPPORTED,
JPEGENCODE_INVALIDSCANDATAOFFSET,
JPEGENCODE_INVALIDCOMPONENTS,
JPEGENCODE_SOURCENOT2D,
JPEGENCODE_TILEDRESOURCESUNSUPPORTED,
JPEGENCODE_GUARDRECTSUNSUPPORTED,
JPEGENCODE_XSUBSAMPLEMISMATCH,
JPEGENCODE_YSUBSAMPLEMISMATCH,
JPEGENCODE_FORMATUNSUPPORTED,
JPEGENCODE_INVALIDSUBRESOURCE,
JPEGENCODE_INVALIDMIPLEVEL,
JPEGENCODE_DIMENSIONSTOOLARGE,
JPEGENCODE_HAZARD,
JPEGENCODE_UNSUPPORTEDDSTBUFFERUSAGE,
JPEGENCODE_UNSUPPORTEDDSTBUFFERMISCFLAGS,
JPEGENCODE_UNSUPPORTEDSRCTEXTUREUSAGE,
JPEGENCODE_BACKBUFFERNOTSUPPORTED,
CREATEQUERYORPREDICATE_UNSUPPORTEDCONTEXTTTYPEFORQUERY,
FLUSH1_INVALIDCONTEXTTYPE,
DEVICE_SETHARDWAREPROTECTION_INVALIDCONTEXT,
VIDEOPROCESSORSETOUTPUTHDRMETADATA_NULLPARAM,
VIDEOPROCESSORSETOUTPUTHDRMETADATA_INVALIDSIZE,
VIDEOPROCESSORGETOUTPUTHDRMETADATA_NULLPARAM,
VIDEOPROCESSORGETOUTPUTHDRMETADATA_INVALIDSIZE,
VIDEOPROCESSORSETSTREAMHDRMETADATA_NULLPARAM,
VIDEOPROCESSORSETSTREAMHDRMETADATA_INVALIDSTREAM,
VIDEOPROCESSORSETSTREAMHDRMETADATA_INVALIDSIZE,
VIDEOPROCESSORGETSTREAMHDRMETADATA_NULLPARAM,
VIDEOPROCESSORGETSTREAMHDRMETADATA_INVALIDSTREAM,
VIDEOPROCESSORGETSTREAMHDRMETADATA_INVALIDSIZE,
VIDEOPROCESSORGETSTREAMFRAMEFORMAT_INVALIDSTREAM,
VIDEOPROCESSORGETSTREAMCOLORSPACE_INVALIDSTREAM,
VIDEOPROCESSORGETSTREAMOUTPUTRATE_INVALIDSTREAM,
VIDEOPROCESSORGETSTREAMSOURCERECT_INVALIDSTREAM,
VIDEOPROCESSORGETSTREAMDESTRECT_INVALIDSTREAM,
VIDEOPROCESSORGETSTREAMALPHA_INVALIDSTREAM,
VIDEOPROCESSORGETSTREAMPALETTE_INVALIDSTREAM,
VIDEOPROCESSORGETSTREAMPIXELASPECTRATIO_INVALIDSTREAM,
VIDEOPROCESSORGETSTREAMLUMAKEY_INVALIDSTREAM,
VIDEOPROCESSORGETSTREAMSTEREOFORMAT_INVALIDSTREAM,
VIDEOPROCESSORGETSTREAMAUTOPROCESSINGMODE_INVALIDSTREAM,
VIDEOPROCESSORGETSTREAMFILTER_INVALIDSTREAM,
VIDEOPROCESSORGETSTREAMROTATION_INVALIDSTREAM,
VIDEOPROCESSORGETSTREAMCOLORSPACE1_INVALIDSTREAM,
VIDEOPROCESSORGETSTREAMMIRROR_INVALIDSTREAM,
CREATE_FENCE,
LIVE_FENCE,
DESTROY_FENCE,
CREATE_SYNCHRONIZEDCHANNEL,
LIVE_SYNCHRONIZEDCHANNEL,
DESTROY_SYNCHRONIZEDCHANNEL,
CREATEFENCE_INVALIDFLAGS,
D3D11_3_MESSAGES_END,
D3D11_5_MESSAGES_START,
NEGOTIATECRYPTOSESSIONKEYEXCHANGEMT_INVALIDKEYEXCHANGETYPE,
NEGOTIATECRYPTOSESSIONKEYEXCHANGEMT_NOT_SUPPORTED,
DECODERBEGINFRAME_INVALID_HISTOGRAM_COMPONENT_COUNT,
DECODERBEGINFRAME_INVALID_HISTOGRAM_COMPONENT,
DECODERBEGINFRAME_INVALID_HISTOGRAM_BUFFER_SIZE,
DECODERBEGINFRAME_INVALID_HISTOGRAM_BUFFER_USAGE,
DECODERBEGINFRAME_INVALID_HISTOGRAM_BUFFER_MISC_FLAGS,
DECODERBEGINFRAME_INVALID_HISTOGRAM_BUFFER_OFFSET,
CREATE_TRACKEDWORKLOAD,
LIVE_TRACKEDWORKLOAD,
DESTROY_TRACKEDWORKLOAD,
CREATE_TRACKED_WORKLOAD_NULLPARAM,
CREATE_TRACKED_WORKLOAD_INVALID_MAX_INSTANCES,
CREATE_TRACKED_WORKLOAD_INVALID_DEADLINE_TYPE,
CREATE_TRACKED_WORKLOAD_INVALID_ENGINE_TYPE,
MULTIPLE_TRACKED_WORKLOADS,
MULTIPLE_TRACKED_WORKLOAD_PAIRS,
INCOMPLETE_TRACKED_WORKLOAD_PAIR,
OUT_OF_ORDER_TRACKED_WORKLOAD_PAIR,
CANNOT_ADD_TRACKED_WORKLOAD,
TRACKED_WORKLOAD_NOT_SUPPORTED,
TRACKED_WORKLOAD_ENGINE_TYPE_NOT_FOUND,
NO_TRACKED_WORKLOAD_SLOT_AVAILABLE,
END_TRACKED_WORKLOAD_INVALID_ARG,
TRACKED_WORKLOAD_DISJOINT_FAILURE,
D3D11_5_MESSAGES_END,
}
CalcSubresource :: #force_inline proc "contextless" (MipSlice: UINT, ArraySlice: UINT, MipLevels: UINT) -> UINT {
return MipSlice + ArraySlice * MipLevels
}
ID3DUserDefinedAnnotation_UUID_STRING :: "B2DAAD8B-03D4-4DBF-95EB-32AB4B63D0AB"
ID3DUserDefinedAnnotation_UUID := &IID{0xB2DAAD8B, 0x03D4, 0x4DBF, {0x95, 0xEB, 0x32, 0xAB, 0x4B, 0x63, 0xD0, 0xAB}}
ID3DUserDefinedAnnotation :: struct #raw_union {
#subtype iunknown: IUnknown,
using vtable: ^ID3DUserDefinedAnnotation_VTable,
}
ID3DUserDefinedAnnotation_VTable :: struct {
using iunknown_vtable: IUnknown_VTable,
BeginEvent: proc "system" (this: ^ID3DUserDefinedAnnotation, Name: windows.LPCWSTR) -> INT,
EndEvent: proc "system" (this: ^ID3DUserDefinedAnnotation) -> INT,
SetMarker: proc "system" (this: ^ID3DUserDefinedAnnotation, Name: windows.LPCWSTR),
GetStatus: proc "system" (this: ^ID3DUserDefinedAnnotation) -> BOOL,
}