1 2 #ifndef __NV50_IR_FROM_SM4_H__ 3 #define __NV50_IR_FROM_SM4_H__ 4 5 typedef enum D3D_PRIMITIVE_TOPOLOGY { 6 D3D_PRIMITIVE_TOPOLOGY_UNDEFINED = 0, 7 D3D_PRIMITIVE_TOPOLOGY_POINTLIST = 1, 8 D3D_PRIMITIVE_TOPOLOGY_LINELIST = 2, 9 D3D_PRIMITIVE_TOPOLOGY_LINESTRIP = 3, 10 D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST = 4, 11 D3D_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP = 5, 12 D3D_PRIMITIVE_TOPOLOGY_LINELIST_ADJ = 10, 13 D3D_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ = 11, 14 D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ = 12, 15 D3D_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ = 13, 16 D3D_PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST = 33, 17 D3D_PRIMITIVE_TOPOLOGY_2_CONTROL_POINT_PATCHLIST = 34, 18 D3D_PRIMITIVE_TOPOLOGY_3_CONTROL_POINT_PATCHLIST = 35, 19 D3D_PRIMITIVE_TOPOLOGY_4_CONTROL_POINT_PATCHLIST = 36, 20 D3D_PRIMITIVE_TOPOLOGY_5_CONTROL_POINT_PATCHLIST = 37, 21 D3D_PRIMITIVE_TOPOLOGY_6_CONTROL_POINT_PATCHLIST = 38, 22 D3D_PRIMITIVE_TOPOLOGY_7_CONTROL_POINT_PATCHLIST = 39, 23 D3D_PRIMITIVE_TOPOLOGY_8_CONTROL_POINT_PATCHLIST = 40, 24 D3D_PRIMITIVE_TOPOLOGY_9_CONTROL_POINT_PATCHLIST = 41, 25 D3D_PRIMITIVE_TOPOLOGY_10_CONTROL_POINT_PATCHLIST = 42, 26 D3D_PRIMITIVE_TOPOLOGY_11_CONTROL_POINT_PATCHLIST = 43, 27 D3D_PRIMITIVE_TOPOLOGY_12_CONTROL_POINT_PATCHLIST = 44, 28 D3D_PRIMITIVE_TOPOLOGY_13_CONTROL_POINT_PATCHLIST = 45, 29 D3D_PRIMITIVE_TOPOLOGY_14_CONTROL_POINT_PATCHLIST = 46, 30 D3D_PRIMITIVE_TOPOLOGY_15_CONTROL_POINT_PATCHLIST = 47, 31 D3D_PRIMITIVE_TOPOLOGY_16_CONTROL_POINT_PATCHLIST = 48, 32 D3D_PRIMITIVE_TOPOLOGY_17_CONTROL_POINT_PATCHLIST = 49, 33 D3D_PRIMITIVE_TOPOLOGY_18_CONTROL_POINT_PATCHLIST = 50, 34 D3D_PRIMITIVE_TOPOLOGY_19_CONTROL_POINT_PATCHLIST = 51, 35 D3D_PRIMITIVE_TOPOLOGY_20_CONTROL_POINT_PATCHLIST = 52, 36 D3D_PRIMITIVE_TOPOLOGY_21_CONTROL_POINT_PATCHLIST = 53, 37 D3D_PRIMITIVE_TOPOLOGY_22_CONTROL_POINT_PATCHLIST = 54, 38 D3D_PRIMITIVE_TOPOLOGY_23_CONTROL_POINT_PATCHLIST = 55, 39 D3D_PRIMITIVE_TOPOLOGY_24_CONTROL_POINT_PATCHLIST = 56, 40 D3D_PRIMITIVE_TOPOLOGY_25_CONTROL_POINT_PATCHLIST = 57, 41 D3D_PRIMITIVE_TOPOLOGY_26_CONTROL_POINT_PATCHLIST = 58, 42 D3D_PRIMITIVE_TOPOLOGY_27_CONTROL_POINT_PATCHLIST = 59, 43 D3D_PRIMITIVE_TOPOLOGY_28_CONTROL_POINT_PATCHLIST = 60, 44 D3D_PRIMITIVE_TOPOLOGY_29_CONTROL_POINT_PATCHLIST = 61, 45 D3D_PRIMITIVE_TOPOLOGY_30_CONTROL_POINT_PATCHLIST = 62, 46 D3D_PRIMITIVE_TOPOLOGY_31_CONTROL_POINT_PATCHLIST = 63, 47 D3D_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST = 64, 48 } D3D_PRIMITIVE_TOPOLOGY; 49 50 typedef enum D3D_RESOURCE_RETURN_TYPE { 51 D3D_RETURN_TYPE_UNORM = 1, 52 D3D_RETURN_TYPE_SNORM = 2, 53 D3D_RETURN_TYPE_SINT = 3, 54 D3D_RETURN_TYPE_UINT = 4, 55 D3D_RETURN_TYPE_FLOAT = 5, 56 D3D_RETURN_TYPE_MIXED = 6, 57 D3D_RETURN_TYPE_DOUBLE = 7, 58 D3D_RETURN_TYPE_CONTINUED = 8, 59 D3D10_RETURN_TYPE_UNORM = 1, 60 D3D10_RETURN_TYPE_SNORM = 2, 61 D3D10_RETURN_TYPE_SINT = 3, 62 D3D10_RETURN_TYPE_UINT = 4, 63 D3D10_RETURN_TYPE_FLOAT = 5, 64 D3D10_RETURN_TYPE_MIXED = 6, 65 D3D11_RETURN_TYPE_UNORM = 1, 66 D3D11_RETURN_TYPE_SNORM = 2, 67 D3D11_RETURN_TYPE_SINT = 3, 68 D3D11_RETURN_TYPE_UINT = 4, 69 D3D11_RETURN_TYPE_FLOAT = 5, 70 D3D11_RETURN_TYPE_MIXED = 6, 71 D3D11_RETURN_TYPE_DOUBLE = 7, 72 D3D11_RETURN_TYPE_CONTINUED = 8 73 } D3D_RESOURCE_RETURN_TYPE; 74 75 typedef enum D3D_REGISTER_COMPONENT_TYPE { 76 D3D_REGISTER_COMPONENT_UNKNOWN = 0, 77 D3D_REGISTER_COMPONENT_UINT32 = 1, 78 D3D_REGISTER_COMPONENT_SINT32 = 2, 79 D3D_REGISTER_COMPONENT_FLOAT32 = 3, 80 D3D10_REGISTER_COMPONENT_UNKNOWN = 0, 81 D3D10_REGISTER_COMPONENT_UINT32 = 1, 82 D3D10_REGISTER_COMPONENT_SINT32 = 2, 83 D3D10_REGISTER_COMPONENT_FLOAT32 = 3 84 } D3D_REGISTER_COMPONENT_TYPE; 85 86 typedef enum D3D_TESSELLATOR_DOMAIN { 87 D3D_TESSELLATOR_DOMAIN_UNDEFINED = 0, 88 D3D_TESSELLATOR_DOMAIN_ISOLINE = 1, 89 D3D_TESSELLATOR_DOMAIN_TRI = 2, 90 D3D_TESSELLATOR_DOMAIN_QUAD = 3, 91 D3D11_TESSELLATOR_DOMAIN_UNDEFINED = 0, 92 D3D11_TESSELLATOR_DOMAIN_ISOLINE = 1, 93 D3D11_TESSELLATOR_DOMAIN_TRI = 2, 94 D3D11_TESSELLATOR_DOMAIN_QUAD = 3 95 } D3D_TESSELLATOR_DOMAIN; 96 97 typedef enum D3D_TESSELLATOR_PARTITIONING { 98 D3D_TESSELLATOR_PARTITIONING_UNDEFINED = 0, 99 D3D_TESSELLATOR_PARTITIONING_INTEGER = 1, 100 D3D_TESSELLATOR_PARTITIONING_POW2 = 2, 101 D3D_TESSELLATOR_PARTITIONING_FRACTIONAL_ODD = 3, 102 D3D_TESSELLATOR_PARTITIONING_FRACTIONAL_EVEN = 4, 103 D3D11_TESSELLATOR_PARTITIONING_UNDEFINED = 0, 104 D3D11_TESSELLATOR_PARTITIONING_INTEGER = 1, 105 D3D11_TESSELLATOR_PARTITIONING_POW2 = 2, 106 D3D11_TESSELLATOR_PARTITIONING_FRACTIONAL_ODD = 3, 107 D3D11_TESSELLATOR_PARTITIONING_FRACTIONAL_EVEN = 4 108 } D3D_TESSELLATOR_PARTITIONING; 109 110 typedef enum D3D_TESSELLATOR_OUTPUT_PRIMITIVE { 111 D3D_TESSELLATOR_OUTPUT_UNDEFINED = 0, 112 D3D_TESSELLATOR_OUTPUT_POINT = 1, 113 D3D_TESSELLATOR_OUTPUT_LINE = 2, 114 D3D_TESSELLATOR_OUTPUT_TRIANGLE_CW = 3, 115 D3D_TESSELLATOR_OUTPUT_TRIANGLE_CCW = 4, 116 D3D11_TESSELLATOR_OUTPUT_UNDEFINED = 0, 117 D3D11_TESSELLATOR_OUTPUT_POINT = 1, 118 D3D11_TESSELLATOR_OUTPUT_LINE = 2, 119 D3D11_TESSELLATOR_OUTPUT_TRIANGLE_CW = 3, 120 D3D11_TESSELLATOR_OUTPUT_TRIANGLE_CCW = 4 121 } D3D_TESSELLATOR_OUTPUT_PRIMITIVE; 122 123 typedef enum D3D_NAME { 124 D3D_NAME_UNDEFINED = 0, 125 D3D_NAME_POSITION = 1, 126 D3D_NAME_CLIP_DISTANCE = 2, 127 D3D_NAME_CULL_DISTANCE = 3, 128 D3D_NAME_RENDER_TARGET_ARRAY_INDEX = 4, 129 D3D_NAME_VIEWPORT_ARRAY_INDEX = 5, 130 D3D_NAME_VERTEX_ID = 6, 131 D3D_NAME_PRIMITIVE_ID = 7, 132 D3D_NAME_INSTANCE_ID = 8, 133 D3D_NAME_IS_FRONT_FACE = 9, 134 D3D_NAME_SAMPLE_INDEX = 10, 135 D3D_NAME_FINAL_QUAD_EDGE_TESSFACTOR = 11, 136 D3D_NAME_FINAL_QUAD_INSIDE_TESSFACTOR = 12, 137 D3D_NAME_FINAL_TRI_EDGE_TESSFACTOR = 13, 138 D3D_NAME_FINAL_TRI_INSIDE_TESSFACTOR = 14, 139 D3D_NAME_FINAL_LINE_DETAIL_TESSFACTOR = 15, 140 D3D_NAME_FINAL_LINE_DENSITY_TESSFACTOR = 16, 141 D3D_NAME_TARGET = 64, 142 D3D_NAME_DEPTH = 65, 143 D3D_NAME_COVERAGE = 66, 144 D3D_NAME_DEPTH_GREATER_EQUAL = 67, 145 D3D_NAME_DEPTH_LESS_EQUAL = 68, 146 D3D10_NAME_UNDEFINED = 0, 147 D3D10_NAME_POSITION = 1, 148 D3D10_NAME_CLIP_DISTANCE = 2, 149 D3D10_NAME_CULL_DISTANCE = 3, 150 D3D10_NAME_RENDER_TARGET_ARRAY_INDEX = 4, 151 D3D10_NAME_VIEWPORT_ARRAY_INDEX = 5, 152 D3D10_NAME_VERTEX_ID = 6, 153 D3D10_NAME_PRIMITIVE_ID = 7, 154 D3D10_NAME_INSTANCE_ID = 8, 155 D3D10_NAME_IS_FRONT_FACE = 9, 156 D3D10_NAME_SAMPLE_INDEX = 10, 157 D3D11_NAME_FINAL_QUAD_EDGE_TESSFACTOR = 11, 158 D3D11_NAME_FINAL_QUAD_INSIDE_TESSFACTOR = 12, 159 D3D11_NAME_FINAL_TRI_EDGE_TESSFACTOR = 13, 160 D3D11_NAME_FINAL_TRI_INSIDE_TESSFACTOR = 14, 161 D3D11_NAME_FINAL_LINE_DETAIL_TESSFACTOR = 15, 162 D3D11_NAME_FINAL_LINE_DENSITY_TESSFACTOR = 16, 163 D3D10_NAME_TARGET = 64, 164 D3D10_NAME_DEPTH = 65, 165 D3D10_NAME_COVERAGE = 66, 166 D3D11_NAME_DEPTH_GREATER_EQUAL = 67, 167 D3D11_NAME_DEPTH_LESS_EQUAL = 68 168 } D3D_NAME; 169 170 typedef struct _D3D11_SIGNATURE_PARAMETER_DESC { 171 const char* SemanticName; 172 unsigned int SemanticIndex; 173 unsigned int Register; 174 D3D_NAME SystemValueType; 175 D3D_REGISTER_COMPONENT_TYPE ComponentType; 176 unsigned char Mask; 177 unsigned char ReadWriteMask; 178 unsigned int Stream; 179 } D3D11_SIGNATURE_PARAMETER_DESC; 180 181 #include "../../../state_trackers/d3d1x/d3d1xshader/include/sm4.h" 182 183 #endif // __NV50_IR_FROM_SM4_H__ 184