diff --git a/include/vkd3d_d3d12.idl b/include/vkd3d_d3d12.idl index a7f2a440..70d49b3c 100644 --- a/include/vkd3d_d3d12.idl +++ b/include/vkd3d_d3d12.idl @@ -109,6 +109,7 @@ typedef enum D3D12_SHADER_MIN_PRECISION_SUPPORT D3D12_SHADER_MIN_PRECISION_SUPPORT_10_BIT = 0x1, D3D12_SHADER_MIN_PRECISION_SUPPORT_16_BIT = 0x2, } D3D12_SHADER_MIN_PRECISION_SUPPORT; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_SHADER_MIN_PRECISION_SUPPORT);") typedef enum D3D12_TILED_RESOURCES_TIER { @@ -222,6 +223,7 @@ typedef enum D3D12_COMMAND_LIST_SUPPORT_FLAGS D3D12_COMMAND_LIST_SUPPORT_FLAG_VIDEO_PROCESS = 0x20, D3D12_COMMAND_LIST_SUPPORT_FLAG_VIDEO_ENCODE = 0x40, } D3D12_COMMAND_LIST_SUPPORT_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_COMMAND_LIST_SUPPORT_FLAGS);") typedef enum D3D12_FORMAT_SUPPORT1 { @@ -256,6 +258,7 @@ typedef enum D3D12_FORMAT_SUPPORT1 D3D12_FORMAT_SUPPORT1_VIDEO_PROCESSOR_INPUT = 0x20000000, D3D12_FORMAT_SUPPORT1_VIDEO_ENCODER = 0x40000000, } D3D12_FORMAT_SUPPORT1; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_FORMAT_SUPPORT1);") typedef enum D3D12_FORMAT_SUPPORT2 { @@ -273,6 +276,7 @@ typedef enum D3D12_FORMAT_SUPPORT2 D3D12_FORMAT_SUPPORT2_MULTIPLANE_OVERLAY = 0x00004000, D3D12_FORMAT_SUPPORT2_SAMPLER_FEEDBACK = 0x00008000, } D3D12_FORMAT_SUPPORT2; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_FORMAT_SUPPORT2);") typedef enum D3D12_WRITEBUFFERIMMEDIATE_MODE { @@ -461,6 +465,7 @@ typedef enum D3D12_MULTISAMPLE_QUALITY_LEVEL_FLAGS D3D12_MULTISAMPLE_QUALITY_LEVELS_FLAG_NONE = 0x00000000, D3D12_MULTISAMPLE_QUALITY_LEVELS_FLAG_TILED_RESOURCE = 0x00000001, } D3D12_MULTISAMPLE_QUALITY_LEVEL_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_MULTISAMPLE_QUALITY_LEVEL_FLAGS);") typedef struct D3D12_FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS { @@ -548,6 +553,7 @@ typedef enum D3D12_HEAP_FLAGS D3D12_HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES = 0x44, D3D12_HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES = 0x84, } D3D12_HEAP_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_HEAP_FLAGS);") typedef struct D3D12_HEAP_DESC { @@ -663,6 +669,7 @@ typedef enum D3D12_RESOURCE_BARRIER_FLAGS D3D12_RESOURCE_BARRIER_FLAG_BEGIN_ONLY = 0x1, D3D12_RESOURCE_BARRIER_FLAG_END_ONLY = 0x2, } D3D12_RESOURCE_BARRIER_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_RESOURCE_BARRIER_FLAGS);") typedef struct D3D12_RESOURCE_TRANSITION_BARRIER { @@ -782,6 +789,7 @@ typedef enum D3D12_VIEW_INSTANCING_FLAGS D3D12_VIEW_INSTANCING_FLAG_NONE = 0, D3D12_VIEW_INSTANCING_FLAG_ENABLE_VIEW_INSTANCE_MASKING = 0x1, } D3D12_VIEW_INSTANCING_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIEW_INSTANCING_FLAGS);") typedef struct D3D12_VIEW_INSTANCE_LOCATION { @@ -854,6 +862,7 @@ typedef enum D3D12_DESCRIPTOR_RANGE_FLAGS D3D12_DESCRIPTOR_RANGE_FLAG_DATA_STATIC = 0x8, D3D12_DESCRIPTOR_RANGE_FLAG_DESCRIPTORS_STATIC_KEEPING_BUFFER_BOUNDS_CHECKS = 0x10000, } D3D12_DESCRIPTOR_RANGE_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_DESCRIPTOR_RANGE_FLAGS);") typedef struct D3D12_DESCRIPTOR_RANGE1 { @@ -897,6 +906,7 @@ typedef enum D3D12_ROOT_DESCRIPTOR_FLAGS D3D12_ROOT_DESCRIPTOR_FLAG_DATA_STATIC_WHILE_SET_AT_EXECUTE = 0x4, D3D12_ROOT_DESCRIPTOR_FLAG_DATA_STATIC = 0x8, } D3D12_ROOT_DESCRIPTOR_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_ROOT_DESCRIPTOR_FLAGS);") typedef struct D3D12_ROOT_DESCRIPTOR1 { @@ -1095,6 +1105,7 @@ typedef enum D3D12_ROOT_SIGNATURE_FLAGS D3D12_ROOT_SIGNATURE_FLAG_DENY_AMPLIFICATION_SHADER_ROOT_ACCESS = 0x100, D3D12_ROOT_SIGNATURE_FLAG_DENY_MESH_SHADER_ROOT_ACCESS = 0x200, } D3D12_ROOT_SIGNATURE_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_ROOT_SIGNATURE_FLAGS);") typedef struct D3D12_ROOT_SIGNATURE_DESC { @@ -1145,6 +1156,7 @@ typedef enum D3D12_DESCRIPTOR_HEAP_FLAGS D3D12_DESCRIPTOR_HEAP_FLAG_NONE = 0x0, D3D12_DESCRIPTOR_HEAP_FLAG_SHADER_VISIBLE = 0x1, } D3D12_DESCRIPTOR_HEAP_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_DESCRIPTOR_HEAP_FLAGS);") typedef struct D3D12_DESCRIPTOR_HEAP_DESC { @@ -1183,6 +1195,7 @@ typedef enum D3D12_BUFFER_SRV_FLAGS D3D12_BUFFER_SRV_FLAG_NONE = 0x0, D3D12_BUFFER_SRV_FLAG_RAW = 0x1, } D3D12_BUFFER_SRV_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_BUFFER_SRV_FLAGS);") typedef enum D3D12_SHADER_COMPONENT_MAPPING { @@ -1324,6 +1337,7 @@ typedef enum D3D12_BUFFER_UAV_FLAGS D3D12_BUFFER_UAV_FLAG_NONE = 0x0, D3D12_BUFFER_UAV_FLAG_RAW = 0x1, } D3D12_BUFFER_UAV_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_BUFFER_UAV_FLAGS);") typedef struct D3D12_BUFFER_UAV { @@ -1794,6 +1808,7 @@ typedef enum D3D12_PIPELINE_STATE_FLAGS D3D12_PIPELINE_STATE_FLAG_NONE = 0x0, D3D12_PIPELINE_STATE_FLAG_DEBUG = 0x1, } D3D12_PIPELINE_STATE_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_PIPELINE_STATE_FLAGS);") typedef struct D3D12_GRAPHICS_PIPELINE_STATE_DESC { @@ -1858,6 +1873,7 @@ typedef enum D3D12_COMMAND_QUEUE_FLAGS D3D12_COMMAND_QUEUE_FLAG_NONE = 0x0, D3D12_COMMAND_QUEUE_FLAG_DISABLE_GPU_TIMEOUT = 0x1, } D3D12_COMMAND_QUEUE_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_COMMAND_QUEUE_FLAGS);") typedef enum D3D12_SHADER_CACHE_SUPPORT_FLAGS { @@ -1867,6 +1883,7 @@ typedef enum D3D12_SHADER_CACHE_SUPPORT_FLAGS D3D12_SHADER_CACHE_SUPPORT_AUTOMATIC_INPROC_CACHE = 0x4, D3D12_SHADER_CACHE_SUPPORT_AUTOMATIC_DISK_CACHE = 0x8, } D3D12_SHADER_CACHE_SUPPORT_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_SHADER_CACHE_SUPPORT_FLAGS);") typedef struct D3D12_COMMAND_QUEUE_DESC { @@ -2122,6 +2139,7 @@ typedef enum D3D12_TILE_COPY_FLAGS D3D12_TILE_COPY_FLAG_LINEAR_BUFFER_TO_SWIZZLED_TILED_RESOURCE = 0x2, D3D12_TILE_COPY_FLAG_SWIZZLED_TILED_RESOURCE_TO_LINEAR_BUFFER = 0x4, } D3D12_TILE_COPY_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_TILE_COPY_FLAGS);") typedef struct D3D12_INDEX_BUFFER_VIEW { @@ -2238,11 +2256,13 @@ typedef enum D3D12_PROTECTED_RESOURCE_SESSION_SUPPORT_FLAGS D3D12_PROTECTED_RESOURCE_SESSION_SUPPORT_FLAG_NONE = 0, D3D12_PROTECTED_RESOURCE_SESSION_SUPPORT_FLAG_SUPPORTED = 0x1, } D3D12_PROTECTED_RESOURCE_SESSION_SUPPORT_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_PROTECTED_RESOURCE_SESSION_SUPPORT_FLAGS);") typedef enum D3D12_PROTECTED_RESOURCE_SESSION_FLAGS { D3D12_PROTECTED_RESOURCE_SESSION_FLAG_NONE = 0, } D3D12_PROTECTED_RESOURCE_SESSION_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_PROTECTED_RESOURCE_SESSION_FLAGS);") typedef enum D3D12_PROTECTED_SESSION_STATUS { @@ -2413,6 +2433,7 @@ typedef enum D3D12_META_COMMAND_PARAMETER_FLAGS D3D12_META_COMMAND_PARAMETER_FLAG_INPUT = 0x1, D3D12_META_COMMAND_PARAMETER_FLAG_OUTPUT = 0x2, } D3D12_META_COMMAND_PARAMETER_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_META_COMMAND_PARAMETER_FLAGS);") typedef enum D3D12_META_COMMAND_PARAMETER_STAGE { @@ -2451,6 +2472,7 @@ typedef enum D3D12_GRAPHICS_STATES D3D12_GRAPHICS_STATE_SAMPLE_POSITIONS = 0x8000, D3D12_GRAPHICS_STATE_VIEW_INSTANCE_MASK = 0x10000, } D3D12_GRAPHICS_STATES; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_GRAPHICS_STATES);") typedef struct D3D12_META_COMMAND_DESC { @@ -2518,6 +2540,7 @@ typedef enum D3D12_STATE_OBJECT_FLAGS D3D12_STATE_OBJECT_FLAG_ALLOW_EXTERNAL_DEPENDENCIES_ON_LOCAL_DEFINITIONS = 0x2, D3D12_STATE_OBJECT_FLAG_ALLOW_STATE_OBJECT_ADDITIONS = 0x4, } D3D12_STATE_OBJECT_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_STATE_OBJECT_FLAGS);") typedef struct D3D12_STATE_OBJECT_CONFIG { @@ -2543,6 +2566,7 @@ typedef enum D3D12_EXPORT_FLAGS { D3D12_EXPORT_FLAG_NONE = 0, } D3D12_EXPORT_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_EXPORT_FLAGS);") typedef struct D3D12_EXPORT_DESC { @@ -2606,6 +2630,7 @@ typedef enum D3D12_RAYTRACING_PIPELINE_FLAGS D3D12_RAYTRACING_PIPELINE_FLAG_SKIP_TRIANGLES = 0x100, D3D12_RAYTRACING_PIPELINE_FLAG_SKIP_PROCEDURAL_PRIMITIVES = 0x200, } D3D12_RAYTRACING_PIPELINE_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_RAYTRACING_PIPELINE_FLAGS);") typedef struct D3D12_RAYTRACING_PIPELINE_CONFIG1 { @@ -2637,6 +2662,7 @@ typedef enum D3D12_RAYTRACING_GEOMETRY_FLAGS D3D12_RAYTRACING_GEOMETRY_FLAG_OPAQUE = 0x1, D3D12_RAYTRACING_GEOMETRY_FLAG_NO_DUPLICATE_ANYHIT_INVOCATION = 0x2, } D3D12_RAYTRACING_GEOMETRY_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_RAYTRACING_GEOMETRY_FLAGS);") typedef enum D3D12_RAYTRACING_GEOMETRY_TYPE { @@ -2652,6 +2678,7 @@ typedef enum D3D12_RAYTRACING_INSTANCE_FLAGS D3D12_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE = 0x4, D3D12_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE = 0x8, } D3D12_RAYTRACING_INSTANCE_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_RAYTRACING_INSTANCE_FLAGS);") typedef struct D3D12_GPU_VIRTUAL_ADDRESS_AND_STRIDE { @@ -2709,6 +2736,7 @@ typedef enum D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAG_MINIMIZE_MEMORY = 0x10, D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAG_PERFORM_UPDATE = 0x20, } D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS);") typedef enum D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE { @@ -2864,6 +2892,7 @@ typedef enum D3D12_RAY_FLAGS D3D12_RAY_FLAG_SKIP_TRIANGLES = 0x100, D3D12_RAY_FLAG_SKIP_PROCEDURAL_PRIMITIVES = 0x200, } D3D12_RAY_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_RAY_FLAGS);") typedef enum D3D12_HIT_KIND { @@ -2886,16 +2915,19 @@ typedef enum D3D12_COMMAND_LIST_FLAGS { D3D12_COMMAND_LIST_FLAG_NONE = 0, } D3D12_COMMAND_LIST_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_COMMAND_LIST_FLAGS);") typedef enum D3D12_COMMAND_POOL_FLAGS { D3D12_COMMAND_POOL_FLAG_NONE = 0, } D3D12_COMMAND_POOL_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_COMMAND_POOL_FLAGS);") typedef enum D3D12_COMMAND_RECORDER_FLAGS { D3D12_COMMAND_RECORDER_FLAG_NONE = 0, } D3D12_COMMAND_RECORDER_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_COMMAND_RECORDER_FLAGS);") typedef enum D3D12_AUTO_BREADCRUMB_OP { @@ -2993,6 +3025,7 @@ typedef enum D3D12_DRED_FLAGS D3D12_DRED_FLAG_FORCE_ENABLE = 0x1, D3D12_DRED_FLAG_AUTOBREADCRUMBS = 0x2, } D3D12_DRED_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_DRED_FLAGS);") typedef enum D3D12_DRED_ENABLEMENT { @@ -3125,6 +3158,7 @@ typedef enum D3D12_RENDER_PASS_FLAGS D3D12_RENDER_PASS_FLAG_SUSPENDING_PASS = 0x2, D3D12_RENDER_PASS_FLAG_RESUMING_PASS = 0x4, } D3D12_RENDER_PASS_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_RENDER_PASS_FLAGS);") typedef enum D3D12_AXIS_SHADING_RATE { @@ -3497,6 +3531,7 @@ typedef enum D3D12_TILE_MAPPING_FLAGS D3D12_TILE_MAPPING_FLAG_NONE = 0x0, D3D12_TILE_MAPPING_FLAG_NO_HAZARD = 0x1, } D3D12_TILE_MAPPING_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_TILE_MAPPING_FLAGS);") [ uuid(0ec870a6-5d7e-4c22-8cfc-5baae07616ed), @@ -3546,6 +3581,7 @@ typedef enum D3D12_FENCE_FLAGS D3D12_FENCE_FLAG_SHARED_CROSS_ADAPTER = 0x2, D3D12_FENCE_FLAG_NON_MONITORED = 0x4, } D3D12_FENCE_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_FENCE_FLAGS);") typedef enum D3D12_QUERY_HEAP_TYPE { @@ -3562,6 +3598,7 @@ typedef enum D3D12_RESIDENCY_FLAGS D3D12_RESIDENCY_FLAG_NONE = 0, D3D12_RESIDENCY_FLAG_DENY_OVERBUDGET = 0, } D3D12_RESIDENCY_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_RESIDENCY_FLAGS);") typedef struct D3D12_QUERY_HEAP_DESC {