[PATCH] include: Add DEFINE_ENUM_FLAG_OPERATORS macro for enumerations in d3d12.idl.

Biswapriyo Nath nathbappai at gmail.com
Thu Nov 5 14:40:24 CST 2020


-------------- next part --------------
From f7fda3e04631bea2df5cdc55c691166ceb846056 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath <nathbappai at gmail.com>
Date: Fri, 6 Nov 2020 12:09:31 +0530
Subject: [PATCH] include: Add DEFINE_ENUM_FLAG_OPERATORS macro for enumerations in d3d12.idl.

This prevent g++ error: invalid conversion from 'int' to 'XYZ' [-fpermissive]

Signed-off-by: Biswapriyo Nath <nathbappai at gmail.com>
---
 include/d3d12.idl | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/include/d3d12.idl b/include/d3d12.idl
index 9cb546b..293c027 100644
--- a/include/d3d12.idl
+++ b/include/d3d12.idl
@@ -88,6 +88,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
 {
@@ -159,6 +160,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
 {
@@ -175,6 +177,7 @@ typedef enum D3D12_FORMAT_SUPPORT2
     D3D12_FORMAT_SUPPORT2_TILED = 0x00000200,
     D3D12_FORMAT_SUPPORT2_MULTIPLANE_OVERLAY = 0x00004000,
 } D3D12_FORMAT_SUPPORT2;
+cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_FORMAT_SUPPORT2);")
 
 typedef enum D3D12_WRITEBUFFERIMMEDIATE_MODE
 {
@@ -198,6 +201,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 enum D3D12_COMMAND_LIST_SUPPORT_FLAGS
 {
@@ -210,6 +214,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_VIEW_INSTANCING_TIER
 {
@@ -412,6 +417,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
 {
@@ -519,6 +525,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
 {
@@ -665,6 +672,7 @@ typedef enum D3D12_DESCRIPTOR_RANGE_FLAGS
     D3D12_DESCRIPTOR_RANGE_FLAG_DATA_STATIC_WHILE_SET_AT_EXECUTE = 0x4,
     D3D12_DESCRIPTOR_RANGE_FLAG_DATA_STATIC = 0x8,
 } D3D12_DESCRIPTOR_RANGE_FLAGS;
+cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_DESCRIPTOR_RANGE_FLAGS);")
 
 typedef struct D3D12_DESCRIPTOR_RANGE1
 {
@@ -708,6 +716,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
 {
@@ -901,6 +910,7 @@ typedef enum D3D12_ROOT_SIGNATURE_FLAGS
     D3D12_ROOT_SIGNATURE_FLAG_DENY_PIXEL_SHADER_ROOT_ACCESS = 0x20,
     D3D12_ROOT_SIGNATURE_FLAG_ALLOW_STREAM_OUTPUT = 0x40,
 } D3D12_ROOT_SIGNATURE_FLAGS;
+cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_ROOT_SIGNATURE_FLAGS);")
 
 typedef struct D3D12_ROOT_SIGNATURE_DESC
 {
@@ -951,6 +961,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
 {
@@ -988,6 +999,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
 {
@@ -1123,6 +1135,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
 {
@@ -1569,6 +1582,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
 {
@@ -1624,6 +1638,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 struct D3D12_COMMAND_QUEUE_DESC
 {
@@ -1907,6 +1922,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
 {
@@ -2193,6 +2209,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),
@@ -2240,6 +2257,7 @@ typedef enum D3D12_FENCE_FLAGS
     D3D12_FENCE_FLAG_SHARED = 0x1,
     D3D12_FENCE_FLAG_SHARED_CROSS_ADAPTER = 0x2,
 } D3D12_FENCE_FLAGS;
+cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_FENCE_FLAGS);")
 
 typedef enum D3D12_QUERY_HEAP_TYPE
 {
-- 
2.29.2



More information about the wine-devel mailing list