22import "d3dcommon.idl";
26const float D3D10_DEFAULT_BLEND_FACTOR_ALPHA = 1.0;
27const float D3D10_DEFAULT_BLEND_FACTOR_BLUE = 1.0;
28const float D3D10_DEFAULT_BLEND_FACTOR_GREEN = 1.0;
29const float D3D10_DEFAULT_BLEND_FACTOR_RED = 1.0;
30const float D3D10_DEFAULT_BORDER_COLOR_COMPONENT = 0.0;
31const float D3D10_DEFAULT_SLOPE_SCALED_DEPTH_BIAS = 0.0;
32const float D3D10_DEFAULT_DEPTH_BIAS_CLAMP = 0.0;
33const float D3D10_DEFAULT_MAX_ANISOTROPY = 16.0;
34const float D3D10_DEFAULT_MIP_LOD_BIAS = 0.0;
35const float D3D10_DEFAULT_VIEWPORT_MAX_DEPTH = 0.0;
36const float D3D10_DEFAULT_VIEWPORT_MIN_DEPTH = 0.0;
37const float D3D10_FLOAT16_FUSED_TOLERANCE_IN_ULP = 0.6;
38const float D3D10_FLOAT32_MAX = 3.402823466e+38;
39const float D3D10_FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP = 0.6;
40const float D3D10_FLOAT_TO_SRGB_EXPONENT_DENOMINATOR = 2.4;
41const float D3D10_FLOAT_TO_SRGB_EXPONENT_NUMERATOR = 1.0;
42const float D3D10_FLOAT_TO_SRGB_OFFSET = 0.055;
43const float D3D10_FLOAT_TO_SRGB_SCALE_1 = 12.92;
44const float D3D10_FLOAT_TO_SRGB_SCALE_2 = 1.055;
45const float D3D10_FLOAT_TO_SRGB_THRESHOLD = 0.0031308;
46const float D3D10_FTOI_INSTRUCTION_MAX_INPUT = 2147483647.999;
47const float D3D10_FTOI_INSTRUCTION_MIN_INPUT = -2147483648.999;
48const float D3D10_FTOU_INSTRUCTION_MAX_INPUT = 4294967295.999;
49const float D3D10_FTOU_INSTRUCTION_MIN_INPUT = 0.0;
50const float D3D10_LINEAR_GAMMA = 1.0;
51const float D3D10_MAX_BORDER_COLOR_COMPONENT = 1.0;
52const float D3D10_MAX_DEPTH = 1.0;
53const float D3D10_MAX_POSITION_VALUE = 3.402823466e+34;
54const float D3D10_MIN_BORDER_COLOR_COMPONENT = 0.0;
55const float D3D10_MIN_DEPTH = 0.0;
56const float D3D10_MIP_LOD_BIAS_MAX = 15.99;
57const float D3D10_MIP_LOD_BIAS_MIN = -16.0;
58const float D3D10_PS_PIXEL_CENTER_FRACTIONAL_COMPONENT = 0.5;
59const float D3D10_MULTISAMPLE_ANTIALIAS_LINE_WIDTH = 1.4;
60const float D3D10_SRGB_GAMMA = 2.2;
61const float D3D10_SRGB_TO_FLOAT_DENOMINATOR_1 = 12.92;
62const float D3D10_SRGB_TO_FLOAT_DENOMINATOR_2 = 1.055;
63const float D3D10_SRGB_TO_FLOAT_EXPONENT = 2.4;
64const float D3D10_SRGB_TO_FLOAT_OFFSET = 0.055;
65const float D3D10_SRGB_TO_FLOAT_THRESHOLD = 0.04045;
66const float D3D10_SRGB_TO_FLOAT_TOLERANCE_IN_ULP = 0.5;
67const float D3D10_PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT = 0.0;
68const float D3D_SPEC_VERSION = 1.050005;
69const unsigned int D3D10_16BIT_INDEX_STRIP_CUT_VALUE = 0xffff;
70const unsigned int D3D10_32BIT_INDEX_STRIP_CUT_VALUE = 0xffffffff;
71const unsigned int D3D10_8BIT_INDEX_STRIP_CUT_VALUE = 0xff;
72const unsigned int D3D10_ARRAY_AXIS_ADDRESS_RANGE_BIT_COUNT = 9;
73const unsigned int D3D10_CLIP_OR_CULL_DISTANCE_COUNT = 8;
74const unsigned int D3D10_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT = 2;
75const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT = 14;
76const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_COMPONENTS = 4;
77const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT = 32;
78const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT = 15;
79const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS = 4;
80const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT = 15;
81const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST = 1;
82const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS = 1;
83const unsigned int D3D10_COMMONSHADER_FLOWCONTROL_NESTING_LIMIT = 64;
84const unsigned int D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS = 4;
85const unsigned int D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT = 1;
86const unsigned int D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST = 1;
87const unsigned int D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS = 1;
88const unsigned int D3D10_COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT = 32;
89const unsigned int D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS = 1;
90const unsigned int D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT = 128;
91const unsigned int D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST = 1;
92const unsigned int D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS = 1;
93const unsigned int D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT = 128;
94const unsigned int D3D10_COMMONSHADER_SAMPLER_REGISTER_COMPONENTS = 1;
95const unsigned int D3D10_COMMONSHADER_SAMPLER_REGISTER_COUNT = 16;
96const unsigned int D3D10_COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST = 1;
97const unsigned int D3D10_COMMONSHADER_SAMPLER_REGISTER_READ_PORTS = 1;
98const unsigned int D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT = 16;
99const unsigned int D3D10_COMMONSHADER_SUBROUTINE_NESTING_LIMIT = 32;
100const unsigned int D3D10_COMMONSHADER_TEMP_REGISTER_COMPONENTS = 4;
101const unsigned int D3D10_COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT = 32;
102const unsigned int D3D10_COMMONSHADER_TEMP_REGISTER_COUNT = 4096;
103const unsigned int D3D10_COMMONSHADER_TEMP_REGISTER_READS_PER_INST = 3;
104const unsigned int D3D10_COMMONSHADER_TEMP_REGISTER_READ_PORTS = 3;
105const unsigned int D3D10_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX = 10;
106const int D3D10_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN = -10;
107const int D3D10_COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE = -8;
108const unsigned int D3D10_COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE = 7;
109const unsigned int D3D10_DEFAULT_DEPTH_BIAS = 0;
110const unsigned int D3D10_DEFAULT_RENDER_TARGET_ARRAY_INDEX = 0;
111const unsigned int D3D10_DEFAULT_SAMPLE_MASK = 0xffffffff;
112const unsigned int D3D10_DEFAULT_SCISSOR_ENDX = 0;
113const unsigned int D3D10_DEFAULT_SCISSOR_ENDY = 0;
114const unsigned int D3D10_DEFAULT_SCISSOR_STARTX = 0;
115const unsigned int D3D10_DEFAULT_SCISSOR_STARTY = 0;
116const unsigned int D3D10_DEFAULT_STENCIL_READ_MASK = 0xff;
117const unsigned int D3D10_DEFAULT_STENCIL_REFERENCE = 0;
118const unsigned int D3D10_DEFAULT_STENCIL_WRITE_MASK = 0xff;
119const unsigned int D3D10_DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX = 0;
120const unsigned int D3D10_DEFAULT_VIEWPORT_HEIGHT = 0;
121const unsigned int D3D10_DEFAULT_VIEWPORT_TOPLEFTX = 0;
122const unsigned int D3D10_DEFAULT_VIEWPORT_TOPLEFTY = 0;
123const unsigned int D3D10_DEFAULT_VIEWPORT_WIDTH = 0;
124const unsigned int D3D10_GS_INPUT_PRIM_CONST_REGISTER_COMPONENTS = 1;
125const unsigned int D3D10_GS_INPUT_PRIM_CONST_REGISTER_COMPONENT_BIT_COUNT = 32;
126const unsigned int D3D10_GS_INPUT_PRIM_CONST_REGISTER_COUNT = 1;
127const unsigned int D3D10_GS_INPUT_PRIM_CONST_REGISTER_READS_PER_INST = 2;
128const unsigned int D3D10_GS_INPUT_PRIM_CONST_REGISTER_READ_PORTS = 1;
129const unsigned int D3D10_GS_INPUT_REGISTER_COMPONENTS = 4;
130const unsigned int D3D10_GS_INPUT_REGISTER_COMPONENT_BIT_COUNT =32;
131const unsigned int D3D10_GS_INPUT_REGISTER_COUNT = 16;
132const unsigned int D3D10_GS_INPUT_REGISTER_READS_PER_INST = 2;
133const unsigned int D3D10_GS_INPUT_REGISTER_READ_PORTS = 1;
134const unsigned int D3D10_GS_INPUT_REGISTER_VERTICES = 6;
135const unsigned int D3D10_GS_OUTPUT_ELEMENTS = 32;
136const unsigned int D3D10_GS_OUTPUT_REGISTER_COMPONENTS = 4;
137const unsigned int D3D10_GS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
138const unsigned int D3D10_GS_OUTPUT_REGISTER_COUNT = 32;
139const unsigned int D3D10_IA_DEFAULT_INDEX_BUFFER_OFFSET_IN_BYTES = 0;
140const unsigned int D3D10_IA_DEFAULT_PRIMITIVE_TOPOLOGY = 0;
141const unsigned int D3D10_IA_DEFAULT_VERTEX_BUFFER_OFFSET_IN_BYTES = 0;
142const unsigned int D3D10_IA_INDEX_INPUT_RESOURCE_SLOT_COUNT = 1;
143const unsigned int D3D10_IA_INSTANCE_ID_BIT_COUNT = 32;
144const unsigned int D3D10_IA_INTEGER_ARITHMETIC_BIT_COUNT = 32;
145const unsigned int D3D10_IA_PRIMITIVE_ID_BIT_COUNT = 32;
146const unsigned int D3D10_IA_VERTEX_ID_BIT_COUNT = 32;
147const unsigned int D3D10_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT = 16;
148const unsigned int D3D10_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS = 64;
149const unsigned int D3D10_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT = 16;
150const unsigned int D3D10_INTEGER_DIVIDE_BY_ZERO_QUOTIENT = 0xffffffff;
151const unsigned int D3D10_INTEGER_DIVIDE_BY_ZERO_REMAINDER = 0xffffffff;
152const unsigned int D3D10_MAX_MAXANISOTROPY = 16;
153const unsigned int D3D10_MAX_MULTISAMPLE_SAMPLE_COUNT = 32;
154const unsigned int D3D10_MAX_TEXTURE_DIMENSION_2_TO_EXP = 17;
155const unsigned int D3D10_MIN_MAXANISOTROPY = 0;
156const unsigned int D3D10_MIP_LOD_FRACTIONAL_BIT_COUNT = 6;
157const unsigned int D3D10_MIP_LOD_RANGE_BIT_COUNT = 8;
158const unsigned int D3D10_NONSAMPLE_FETCH_OUT_OF_RANGE_ACCESS_RESULT = 0;
159const unsigned int D3D10_PIXEL_ADDRESS_RANGE_BIT_COUNT = 13;
160const unsigned int D3D10_PRE_SCISSOR_PIXEL_ADDRESS_RANGE_BIT_COUNT = 15;
161const unsigned int D3D10_PS_FRONTFACING_DEFAULT_VALUE = 0xffffffff;
162const unsigned int D3D10_PS_FRONTFACING_FALSE_VALUE = 0;
163const unsigned int D3D10_PS_FRONTFACING_TRUE_VALUE = 0xffffffff;
164const unsigned int D3D10_PS_INPUT_REGISTER_COMPONENTS = 4;
165const unsigned int D3D10_PS_INPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
166const unsigned int D3D10_PS_INPUT_REGISTER_COUNT = 32;
167const unsigned int D3D10_PS_INPUT_REGISTER_READS_PER_INST = 2;
168const unsigned int D3D10_PS_INPUT_REGISTER_READ_PORTS = 1;
169const unsigned int D3D10_PS_OUTPUT_DEPTH_REGISTER_COMPONENTS = 1;
170const unsigned int D3D10_PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT = 32;
171const unsigned int D3D10_PS_OUTPUT_DEPTH_REGISTER_COUNT = 1;
172const unsigned int D3D10_PS_OUTPUT_REGISTER_COMPONENTS = 4;
173const unsigned int D3D10_PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
174const unsigned int D3D10_PS_OUTPUT_REGISTER_COUNT = 8;
175const unsigned int D3D10_REQ_BLEND_OBJECT_COUNT_PER_CONTEXT = 4096;
176const unsigned int D3D10_REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP = 27;
177const unsigned int D3D10_REQ_CONSTANT_BUFFER_ELEMENT_COUNT = 4096;
178const unsigned int D3D10_REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_CONTEXT = 4096;
179const unsigned int D3D10_REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP = 32;
180const unsigned int D3D10_REQ_DRAW_VERTEX_COUNT_2_TO_EXP = 32;
181const unsigned int D3D10_REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION = 8192;
182const unsigned int D3D10_REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT = 1024;
183const unsigned int D3D10_REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT = 4096;
184const unsigned int D3D10_REQ_MAXANISOTROPY = 16;
185const unsigned int D3D10_REQ_MIP_LEVELS = 14;
186const unsigned int D3D10_REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES = 2048;
187const unsigned int D3D10_REQ_RASTERIZER_OBJECT_COUNT_PER_CONTEXT = 4096;
188const unsigned int D3D10_REQ_RENDER_TO_BUFFER_WINDOW_WIDTH = 8192;
189const unsigned int D3D10_REQ_RESOURCE_SIZE_IN_MEGABYTES = 128;
190const unsigned int D3D10_REQ_RESOURCE_VIEW_COUNT_PER_CONTEXT_2_TO_EXP = 20;
191const unsigned int D3D10_REQ_SAMPLER_OBJECT_COUNT_PER_CONTEXT = 4096;
192const unsigned int D3D10_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION = 512;
193const unsigned int D3D10_REQ_TEXTURE1D_U_DIMENSION = 8192;
194const unsigned int D3D10_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION = 512;
195const unsigned int D3D10_REQ_TEXTURE2D_U_OR_V_DIMENSION = 8192;
196const unsigned int D3D10_REQ_TEXTURE3D_U_V_OR_W_DIMENSION = 2048;
197const unsigned int D3D10_REQ_TEXTURECUBE_DIMENSION = 8192;
198const unsigned int D3D10_RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL = 0;
199const unsigned int D3D10_SHADER_MAJOR_VERSION = 4;
200const unsigned int D3D10_SHADER_MINOR_VERSION = 0;
201const unsigned int D3D10_SHIFT_INSTRUCTION_PAD_VALUE = 0;
202const unsigned int D3D10_SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT = 5;
203const unsigned int D3D10_SIMULTANEOUS_RENDER_TARGET_COUNT = 8;
204const unsigned int D3D10_SO_BUFFER_MAX_STRIDE_IN_BYTES = 2048;
205const unsigned int D3D10_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES = 256;
206const unsigned int D3D10_SO_BUFFER_SLOT_COUNT = 4;
207const unsigned int D3D10_SO_DDI_REGISTER_INDEX_DENOTING_GAP = 0xffffffff;
208const unsigned int D3D10_SO_MULTIPLE_BUFFER_ELEMENTS_PER_BUFFER = 1;
209const unsigned int D3D10_SO_SINGLE_BUFFER_COMPONENT_LIMIT = 64;
210const unsigned int D3D10_STANDARD_COMPONENT_BIT_COUNT = 32;
211const unsigned int D3D10_STANDARD_COMPONENT_BIT_COUNT_DOUBLED = 64;
212const unsigned int D3D10_STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE = 4;
213const unsigned int D3D10_STANDARD_PIXEL_COMPONENT_COUNT = 128;
214const unsigned int D3D10_STANDARD_PIXEL_ELEMENT_COUNT = 32;
215const unsigned int D3D10_STANDARD_VECTOR_SIZE = 4;
216const unsigned int D3D10_STANDARD_VERTEX_ELEMENT_COUNT = 16;
217const unsigned int D3D10_STANDARD_VERTEX_TOTAL_COMPONENT_COUNT = 64;
218const unsigned int D3D10_SUBPIXEL_FRACTIONAL_BIT_COUNT = 8;
219const unsigned int D3D10_SUBTEXEL_FRACTIONAL_BIT_COUNT = 6;
220const unsigned int D3D10_TEXEL_ADDRESS_RANGE_BIT_COUNT = 18;
221const unsigned int D3D10_UNBOUND_MEMORY_ACCESS_RESULT = 0;
222const unsigned int D3D10_VIEWPORT_AND_SCISSORRECT_MAX_INDEX = 15;
223const unsigned int D3D10_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE = 16;
224const unsigned int D3D10_VIEWPORT_BOUNDS_MAX = 16383;
225const int D3D10_VIEWPORT_BOUNDS_MIN = -16384;
226const unsigned int D3D10_VS_INPUT_REGISTER_COMPONENTS = 4;
227const unsigned int D3D10_VS_INPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
228const unsigned int D3D10_VS_INPUT_REGISTER_COUNT = 16;
229const unsigned int D3D10_VS_INPUT_REGISTER_READS_PER_INST = 2;
230const unsigned int D3D10_VS_INPUT_REGISTER_READ_PORTS = 1;
231const unsigned int D3D10_VS_OUTPUT_REGISTER_COMPONENTS = 4;
232const unsigned int D3D10_VS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
233const unsigned int D3D10_VS_OUTPUT_REGISTER_COUNT = 16;
234const unsigned int D3D10_WHQL_CONTEXT_COUNT_FOR_RESOURCE_LIMIT = 10;
235const unsigned int D3D10_WHQL_DRAWINDEXED_INDEX_COUNT_2_TO_EXP = 25;
236const unsigned int D3D10_WHQL_DRAW_VERTEX_COUNT_2_TO_EXP = 25;
237const unsigned int D3D_MAJOR_VERSION = 10;
238const unsigned int D3D_MINOR_VERSION = 0;
239const unsigned int D3D_SPEC_DATE_DAY = 8;
240const unsigned int D3D_SPEC_DATE_MONTH = 8;
241const unsigned int D3D_SPEC_DATE_YEAR = 2006;
244const unsigned int D3D10_APPEND_ALIGNED_ELEMENT = 0xffffffff;
245const unsigned int _FACD3D10 = 0x87;
246const unsigned int _FACD3D10DEBUG = _FACD3D10 + 1;
247const unsigned int D3D10_FILTER_TYPE_MASK = 0x3;
248const unsigned int D3D10_SDK_VERSION = 29;
250cpp_quote("#define MAKE_D3D10_HRESULT(code) MAKE_HRESULT( 1, _FACD3D10, code)")
251cpp_quote("#define MAKE_D3D10_STATUS(code) MAKE_HRESULT( 0, _FACD3D10, code)")
252cpp_quote("#define D3D10_ERROR_TOO_MANY_UNIQUE_STATE_OBJECTS MAKE_D3D10_HRESULT(1)")
253cpp_quote("#define D3D10_ERROR_FILE_NOT_FOUND MAKE_D3D10_HRESULT(2)")
255typedef enum D3D10_BLEND {
256 D3D10_BLEND_ZERO = 1,
258 D3D10_BLEND_SRC_COLOR = 3,
259 D3D10_BLEND_INV_SRC_COLOR = 4,
260 D3D10_BLEND_SRC_ALPHA = 5,
261 D3D10_BLEND_INV_SRC_ALPHA = 6,
262 D3D10_BLEND_DEST_ALPHA = 7,
263 D3D10_BLEND_INV_DEST_ALPHA = 8,
264 D3D10_BLEND_DEST_COLOR = 9,
265 D3D10_BLEND_INV_DEST_COLOR = 10,
266 D3D10_BLEND_SRC_ALPHA_SAT = 11,
267 D3D10_BLEND_BLEND_FACTOR = 14,
268 D3D10_BLEND_INV_BLEND_FACTOR = 15,
269 D3D10_BLEND_SRC1_COLOR = 16,
270 D3D10_BLEND_INV_SRC1_COLOR = 17,
271 D3D10_BLEND_SRC1_ALPHA = 18,
272 D3D10_BLEND_INV_SRC1_ALPHA = 19
275typedef enum D3D10_BLEND_OP {
276 D3D10_BLEND_OP_ADD = 1,
277 D3D10_BLEND_OP_SUBTRACT,
278 D3D10_BLEND_OP_REV_SUBTRACT,
283typedef struct D3D10_BLEND_DESC {
284 BOOL AlphaToCoverageEnable;
286 D3D10_BLEND SrcBlend;
287 D3D10_BLEND DestBlend;
288 D3D10_BLEND_OP BlendOp;
289 D3D10_BLEND SrcBlendAlpha;
290 D3D10_BLEND DestBlendAlpha;
291 D3D10_BLEND_OP BlendOpAlpha;
292 UINT8 RenderTargetWriteMask[8];
295typedef enum D3D10_DEPTH_WRITE_MASK {
296 D3D10_DEPTH_WRITE_MASK_ZERO,
297 D3D10_DEPTH_WRITE_MASK_ALL,
298} D3D10_DEPTH_WRITE_MASK;
300typedef enum D3D10_COMPARISON_FUNC {
301 D3D10_COMPARISON_NEVER = 1,
302 D3D10_COMPARISON_LESS,
303 D3D10_COMPARISON_EQUAL,
304 D3D10_COMPARISON_LESS_EQUAL,
305 D3D10_COMPARISON_GREATER,
306 D3D10_COMPARISON_NOT_EQUAL,
307 D3D10_COMPARISON_GREATER_EQUAL,
308 D3D10_COMPARISON_ALWAYS,
309} D3D10_COMPARISON_FUNC;
311typedef enum D3D10_STENCIL_OP {
312 D3D10_STENCIL_OP_KEEP = 1,
313 D3D10_STENCIL_OP_ZERO,
314 D3D10_STENCIL_OP_REPLACE,
315 D3D10_STENCIL_OP_INCR_SAT,
316 D3D10_STENCIL_OP_DECR_SAT,
317 D3D10_STENCIL_OP_INVERT,
318 D3D10_STENCIL_OP_INCR,
319 D3D10_STENCIL_OP_DECR,
322typedef struct D3D10_DEPTH_STENCILOP_DESC {
323 D3D10_STENCIL_OP StencilFailOp;
324 D3D10_STENCIL_OP StencilDepthFailOp;
325 D3D10_STENCIL_OP StencilPassOp;
326 D3D10_COMPARISON_FUNC StencilFunc;
327} D3D10_DEPTH_STENCILOP_DESC;
329typedef struct D3D10_DEPTH_STENCIL_DESC {
331 D3D10_DEPTH_WRITE_MASK DepthWriteMask;
332 D3D10_COMPARISON_FUNC DepthFunc;
334 UINT8 StencilReadMask;
335 UINT8 StencilWriteMask;
336 D3D10_DEPTH_STENCILOP_DESC FrontFace;
337 D3D10_DEPTH_STENCILOP_DESC BackFace;
338} D3D10_DEPTH_STENCIL_DESC;
340typedef enum D3D10_FILL_MODE {
341 D3D10_FILL_WIREFRAME = 2,
345typedef enum D3D10_CULL_MODE {
351typedef struct D3D10_RASTERIZER_DESC {
352 D3D10_FILL_MODE FillMode;
353 D3D10_CULL_MODE CullMode;
354 BOOL FrontCounterClockwise;
356 FLOAT DepthBiasClamp;
357 FLOAT SlopeScaledDepthBias;
358 BOOL DepthClipEnable;
360 BOOL MultisampleEnable;
361 BOOL AntialiasedLineEnable;
362} D3D10_RASTERIZER_DESC;
364typedef enum D3D10_FILTER {
365 D3D10_FILTER_MIN_MAG_MIP_POINT = 0,
366 D3D10_FILTER_MIN_MAG_POINT_MIP_LINEAR = 0x1,
367 D3D10_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x4,
368 D3D10_FILTER_MIN_POINT_MAG_MIP_LINEAR = 0x5,
369 D3D10_FILTER_MIN_LINEAR_MAG_MIP_POINT = 0x10,
370 D3D10_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x11,
371 D3D10_FILTER_MIN_MAG_LINEAR_MIP_POINT = 0x14,
372 D3D10_FILTER_MIN_MAG_MIP_LINEAR = 0x15,
373 D3D10_FILTER_ANISOTROPIC = 0x55,
374 D3D10_FILTER_COMPARISON_MIN_MAG_MIP_POINT = 0x80,
375 D3D10_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR = 0x81,
376 D3D10_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x84,
377 D3D10_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR = 0x85,
378 D3D10_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT = 0x90,
379 D3D10_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x91,
380 D3D10_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT = 0x94,
381 D3D10_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR = 0x95,
382 D3D10_FILTER_COMPARISON_ANISOTROPIC = 0xd5,
383 D3D10_FILTER_TEXT_1BIT = 0x80000000
386typedef enum D3D10_TEXTURE_ADDRESS_MODE {
387 D3D10_TEXTURE_ADDRESS_WRAP = 1,
388 D3D10_TEXTURE_ADDRESS_MIRROR,
389 D3D10_TEXTURE_ADDRESS_CLAMP,
390 D3D10_TEXTURE_ADDRESS_BORDER,
391 D3D10_TEXTURE_ADDRESS_MIRROR_ONCE,
392} D3D10_TEXTURE_ADDRESS_MODE;
394typedef struct D3D10_SAMPLER_DESC {
396 D3D10_TEXTURE_ADDRESS_MODE AddressU;
397 D3D10_TEXTURE_ADDRESS_MODE AddressV;
398 D3D10_TEXTURE_ADDRESS_MODE AddressW;
401 D3D10_COMPARISON_FUNC ComparisonFunc;
402 FLOAT BorderColor[4];
407typedef enum D3D10_COUNTER {
408 D3D10_COUNTER_GPU_IDLE,
409 D3D10_COUNTER_VERTEX_PROCESSING,
410 D3D10_COUNTER_GEOMETRY_PROCESSING,
411 D3D10_COUNTER_PIXEL_PROCESSING,
412 D3D10_COUNTER_OTHER_GPU_PROCESSING,
413 D3D10_COUNTER_HOST_ADAPTER_BANDWIDTH_UTILIZATION,
414 D3D10_COUNTER_LOCAL_VIDMEM_BANDWIDTH_UTILIZATION,
415 D3D10_COUNTER_VERTEX_THROUGHPUT_UTILIZATION,
416 D3D10_COUNTER_TRIANGLE_SETUP_THROUGHPUT_UTILIZATION,
417 D3D10_COUNTER_FILLRATE_THROUGHPUT_UTILIZATION,
418 D3D10_COUNTER_VS_MEMORY_LIMITED,
419 D3D10_COUNTER_VS_COMPUTATION_LIMITED,
420 D3D10_COUNTER_GS_MEMORY_LIMITED,
421 D3D10_COUNTER_GS_COMPUTATION_LIMITED,
422 D3D10_COUNTER_PS_MEMORY_LIMITED,
423 D3D10_COUNTER_PS_COMPUTATION_LIMITED,
424 D3D10_COUNTER_POST_TRANSFORM_CACHE_HIT_RATE,
425 D3D10_COUNTER_TEXTURE_CACHE_HIT_RATE,
426 D3D10_COUNTER_DEVICE_DEPENDENT_0 = 0x40000000
429typedef struct D3D10_COUNTER_DESC {
430 D3D10_COUNTER Counter;
434typedef enum D3D10_COUNTER_TYPE {
435 D3D10_COUNTER_TYPE_FLOAT32,
436 D3D10_COUNTER_TYPE_UINT16,
437 D3D10_COUNTER_TYPE_UINT32,
438 D3D10_COUNTER_TYPE_UINT64,
441typedef struct D3D10_COUNTER_INFO {
442 D3D10_COUNTER LastDeviceDependentCounter;
443 UINT NumSimultaneousCounters;
444 UINT8 NumDetectableParallelUnits;
447typedef enum D3D10_RESOURCE_DIMENSION {
448 D3D10_RESOURCE_DIMENSION_UNKNOWN,
449 D3D10_RESOURCE_DIMENSION_BUFFER,
450 D3D10_RESOURCE_DIMENSION_TEXTURE1D,
451 D3D10_RESOURCE_DIMENSION_TEXTURE2D,
452 D3D10_RESOURCE_DIMENSION_TEXTURE3D,
453} D3D10_RESOURCE_DIMENSION;
455typedef enum D3D10_USAGE {
457 D3D10_USAGE_IMMUTABLE,
462typedef enum D3D10_BIND_FLAG {
463 D3D10_BIND_VERTEX_BUFFER = 0x1,
464 D3D10_BIND_INDEX_BUFFER = 0x2,
465 D3D10_BIND_CONSTANT_BUFFER = 0x4,
466 D3D10_BIND_SHADER_RESOURCE = 0x8,
467 D3D10_BIND_STREAM_OUTPUT = 0x10,
468 D3D10_BIND_RENDER_TARGET = 0x20,
469 D3D10_BIND_DEPTH_STENCIL = 0x40
472typedef struct D3D10_BUFFER_DESC {
480cpp_quote("#if !defined(D3D10_NO_HELPERS) && defined(__cplusplus)")
481cpp_quote("struct CD3D10_BUFFER_DESC : public D3D10_BUFFER_DESC {")
482cpp_quote(" CD3D10_BUFFER_DESC() {}" )
483cpp_quote(" explicit CD3D10_BUFFER_DESC(const D3D10_BUFFER_DESC &o) : D3D10_BUFFER_DESC(o) {}")
484cpp_quote(" explicit CD3D10_BUFFER_DESC(UINT byteWidth, UINT bindFlags, D3D10_USAGE usage = D3D10_USAGE_DEFAULT, UINT cpuaccessFlags = 0, UINT miscFlags = 0 ) {")
485cpp_quote(" ByteWidth = byteWidth;")
486cpp_quote(" Usage = usage;")
487cpp_quote(" BindFlags = bindFlags;")
488cpp_quote(" CPUAccessFlags = cpuaccessFlags;")
489cpp_quote(" MiscFlags = miscFlags;")
491cpp_quote(" ~CD3D10_BUFFER_DESC() {}")
492cpp_quote(" operator const D3D10_BUFFER_DESC&() const {")
493cpp_quote(" return *this;")
498typedef enum D3D10_MAP {
501 D3D10_MAP_READ_WRITE,
502 D3D10_MAP_WRITE_DISCARD,
503 D3D10_MAP_WRITE_NO_OVERWRITE,
506typedef struct D3D10_TEXTURE1D_DESC {
515} D3D10_TEXTURE1D_DESC;
517cpp_quote("#if !defined(D3D10_NO_HELPERS) && defined(__cplusplus)")
518cpp_quote("struct CD3D10_TEXTURE1D_DESC : public D3D10_TEXTURE1D_DESC {")
519cpp_quote(" CD3D10_TEXTURE1D_DESC() {}")
520cpp_quote(" explicit CD3D10_TEXTURE1D_DESC(const D3D10_TEXTURE1D_DESC &o) : D3D10_TEXTURE1D_DESC(o) {}")
521cpp_quote(" explicit CD3D10_TEXTURE1D_DESC(DXGI_FORMAT format, UINT width, UINT arraySize = 1, UINT mipLevels = 0,")
522cpp_quote(" UINT bindFlags = D3D10_BIND_SHADER_RESOURCE, D3D10_USAGE usage = D3D10_USAGE_DEFAULT, UINT cpuaccessFlags = 0,")
523cpp_quote(" UINT miscFlags = 0) {")
524cpp_quote(" Width = width;")
525cpp_quote(" MipLevels = mipLevels;")
526cpp_quote(" ArraySize = arraySize;")
527cpp_quote(" Format = format;")
528cpp_quote(" Usage = usage;")
529cpp_quote(" BindFlags = bindFlags;")
530cpp_quote(" CPUAccessFlags = cpuaccessFlags;")
531cpp_quote(" MiscFlags = miscFlags;")
533cpp_quote(" ~CD3D10_TEXTURE1D_DESC() {}")
534cpp_quote(" operator const D3D10_TEXTURE1D_DESC&() const {")
535cpp_quote(" return *this;")
540typedef struct D3D10_TEXTURE2D_DESC {
546 DXGI_SAMPLE_DESC SampleDesc;
551} D3D10_TEXTURE2D_DESC;
553cpp_quote("#if !defined(D3D10_NO_HELPERS) && defined(__cplusplus)")
554cpp_quote("struct CD3D10_TEXTURE2D_DESC : public D3D10_TEXTURE2D_DESC {")
555cpp_quote(" CD3D10_TEXTURE2D_DESC() {}" )
556cpp_quote(" explicit CD3D10_TEXTURE2D_DESC(const D3D10_TEXTURE2D_DESC &o) : D3D10_TEXTURE2D_DESC(o) {}")
557cpp_quote(" explicit CD3D10_TEXTURE2D_DESC(DXGI_FORMAT format, UINT width, UINT height,")
558cpp_quote(" UINT arraySize = 1,")
559cpp_quote(" UINT mipLevels = 0,")
560cpp_quote(" UINT bindFlags = D3D10_BIND_SHADER_RESOURCE,")
561cpp_quote(" D3D10_USAGE usage = D3D10_USAGE_DEFAULT,")
562cpp_quote(" UINT cpuaccessFlags = 0,")
563cpp_quote(" UINT sampleCount = 1,")
564cpp_quote(" UINT sampleQuality = 0,")
565cpp_quote(" UINT miscFlags = 0) {")
566cpp_quote(" Width = width;" )
567cpp_quote(" Height = height;" )
568cpp_quote(" MipLevels = mipLevels;" )
569cpp_quote(" ArraySize = arraySize;" )
570cpp_quote(" Format = format;" )
571cpp_quote(" SampleDesc.Count = sampleCount;" )
572cpp_quote(" SampleDesc.Quality = sampleQuality;" )
573cpp_quote(" Usage = usage;" )
574cpp_quote(" BindFlags = bindFlags;" )
575cpp_quote(" CPUAccessFlags = cpuaccessFlags;" )
576cpp_quote(" MiscFlags = miscFlags;" )
578cpp_quote(" ~CD3D10_TEXTURE2D_DESC() {}")
579cpp_quote(" operator const D3D10_TEXTURE2D_DESC&() const {")
580cpp_quote(" return *this;")
585typedef struct D3D10_TEXTURE3D_DESC {
595} D3D10_TEXTURE3D_DESC;
597typedef enum D3D10_DSV_DIMENSION
599 D3D10_DSV_DIMENSION_UNKNOWN,
600 D3D10_DSV_DIMENSION_TEXTURE1D,
601 D3D10_DSV_DIMENSION_TEXTURE1DARRAY,
602 D3D10_DSV_DIMENSION_TEXTURE2D,
603 D3D10_DSV_DIMENSION_TEXTURE2DARRAY,
604 D3D10_DSV_DIMENSION_TEXTURE2DMS,
605 D3D10_DSV_DIMENSION_TEXTURE2DMSARRAY,
606} D3D10_DSV_DIMENSION;
608typedef struct D3D10_TEX1D_DSV {
612typedef struct D3D10_TEX1D_ARRAY_DSV {
614 UINT FirstArraySlice;
616} D3D10_TEX1D_ARRAY_DSV;
618typedef struct D3D10_TEX2D_DSV {
622typedef struct D3D10_TEX2D_ARRAY_DSV {
624 UINT FirstArraySlice;
626} D3D10_TEX2D_ARRAY_DSV;
628typedef struct D3D10_TEX2DMS_DSV {
629 UINT UnusedField_NothingToDefine;
632typedef struct D3D10_TEX2DMS_ARRAY_DSV {
633 UINT FirstArraySlice;
635} D3D10_TEX2DMS_ARRAY_DSV;
637typedef struct D3D10_DEPTH_STENCIL_VIEW_DESC {
639 D3D10_DSV_DIMENSION ViewDimension;
641 D3D10_TEX1D_DSV Texture1D;
642 D3D10_TEX1D_ARRAY_DSV Texture1DArray;
643 D3D10_TEX2D_DSV Texture2D;
644 D3D10_TEX2D_ARRAY_DSV Texture2DArray;
645 D3D10_TEX2DMS_DSV Texture2DMS;
646 D3D10_TEX2DMS_ARRAY_DSV Texture2DMSArray;
648} D3D10_DEPTH_STENCIL_VIEW_DESC;
650typedef enum D3D10_RTV_DIMENSION {
651 D3D10_RTV_DIMENSION_UNKNOWN,
652 D3D10_RTV_DIMENSION_BUFFER,
653 D3D10_RTV_DIMENSION_TEXTURE1D,
654 D3D10_RTV_DIMENSION_TEXTURE1DARRAY,
655 D3D10_RTV_DIMENSION_TEXTURE2D,
656 D3D10_RTV_DIMENSION_TEXTURE2DARRAY,
657 D3D10_RTV_DIMENSION_TEXTURE2DMS,
658 D3D10_RTV_DIMENSION_TEXTURE2DMSARRAY,
659 D3D10_RTV_DIMENSION_TEXTURE3D,
660} D3D10_RTV_DIMENSION;
662typedef struct D3D10_BUFFER_RTV {
667typedef struct D3D10_TEX1D_RTV {
671typedef struct D3D10_TEX1D_ARRAY_RTV {
673 UINT FirstArraySlice;
675} D3D10_TEX1D_ARRAY_RTV;
677typedef struct D3D10_TEX2D_RTV {
681typedef struct D3D10_TEX2D_ARRAY_RTV {
683 UINT FirstArraySlice;
685} D3D10_TEX2D_ARRAY_RTV;
687typedef struct D3D10_TEX2DMS_RTV {
688 UINT UnusedField_NothingToDefine;
691typedef struct D3D10_TEX2DMS_ARRAY_RTV {
692 UINT FirstArraySlice;
694} D3D10_TEX2DMS_ARRAY_RTV;
696typedef struct D3D10_TEX3D_RTV {
702typedef struct D3D10_RENDER_TARGET_VIEW_DESC {
704 D3D10_RTV_DIMENSION ViewDimension;
706 D3D10_BUFFER_RTV Buffer;
707 D3D10_TEX1D_RTV Texture1D;
708 D3D10_TEX1D_ARRAY_RTV Texture1DArray;
709 D3D10_TEX2D_RTV Texture2D;
710 D3D10_TEX2D_ARRAY_RTV Texture2DArray;
711 D3D10_TEX2DMS_RTV Texture2DMS;
712 D3D10_TEX2DMS_ARRAY_RTV Texture2DMSArray;
713 D3D10_TEX3D_RTV Texture3D;
715} D3D10_RENDER_TARGET_VIEW_DESC;
717typedef D3D_SRV_DIMENSION D3D10_SRV_DIMENSION;
719typedef struct D3D10_BUFFER_SRV {
724typedef struct D3D10_TEX1D_SRV {
725 UINT MostDetailedMip;
729typedef struct D3D10_TEX1D_ARRAY_SRV {
730 UINT MostDetailedMip;
732 UINT FirstArraySlice;
734} D3D10_TEX1D_ARRAY_SRV;
736typedef struct D3D10_TEX2D_SRV {
737 UINT MostDetailedMip;
741typedef struct D3D10_TEX2D_ARRAY_SRV {
742 UINT MostDetailedMip;
744 UINT FirstArraySlice;
746} D3D10_TEX2D_ARRAY_SRV;
748typedef struct D3D10_TEX2DMS_SRV {
749 UINT UnusedField_NothingToDefine;
752typedef struct D3D10_TEX2DMS_ARRAY_SRV {
753 UINT FirstArraySlice;
755} D3D10_TEX2DMS_ARRAY_SRV;
757typedef struct D3D10_TEX3D_SRV {
758 UINT MostDetailedMip;
762typedef struct D3D10_TEXCUBE_SRV {
763 UINT MostDetailedMip;
767typedef struct D3D10_SHADER_RESOURCE_VIEW_DESC {
769 D3D10_SRV_DIMENSION ViewDimension;
771 D3D10_BUFFER_SRV Buffer;
772 D3D10_TEX1D_SRV Texture1D;
773 D3D10_TEX1D_ARRAY_SRV Texture1DArray;
774 D3D10_TEX2D_SRV Texture2D;
775 D3D10_TEX2D_ARRAY_SRV Texture2DArray;
776 D3D10_TEX2DMS_SRV Texture2DMS;
777 D3D10_TEX2DMS_ARRAY_SRV Texture2DMSArray;
778 D3D10_TEX3D_SRV Texture3D;
779 D3D10_TEXCUBE_SRV TextureCube;
781} D3D10_SHADER_RESOURCE_VIEW_DESC;
783typedef struct D3D10_BOX {
792typedef struct D3D10_SUBRESOURCE_DATA {
795 UINT SysMemSlicePitch;
796} D3D10_SUBRESOURCE_DATA;
798typedef struct D3D10_SO_DECLARATION_ENTRY
800 const char *SemanticName;
805} D3D10_SO_DECLARATION_ENTRY;
807typedef enum D3D10_INPUT_CLASSIFICATION {
808 D3D10_INPUT_PER_VERTEX_DATA,
809 D3D10_INPUT_PER_INSTANCE_DATA,
810} D3D10_INPUT_CLASSIFICATION;
812typedef struct D3D10_INPUT_ELEMENT_DESC
814 const char *SemanticName;
818 UINT AlignedByteOffset;
819 D3D10_INPUT_CLASSIFICATION InputSlotClass;
820 UINT InstanceDataStepRate;
821} D3D10_INPUT_ELEMENT_DESC;
823typedef enum D3D10_QUERY {
825 D3D10_QUERY_OCCLUSION,
826 D3D10_QUERY_TIMESTAMP,
827 D3D10_QUERY_TIMESTAMP_DISJOINT,
828 D3D10_QUERY_PIPELINE_STATISTICS,
829 D3D10_QUERY_OCCLUSION_PREDICATE,
830 D3D10_QUERY_SO_STATISTICS,
831 D3D10_QUERY_SO_OVERFLOW_PREDICATE,
834typedef struct D3D10_QUERY_DESC {
839typedef D3D_PRIMITIVE_TOPOLOGY D3D10_PRIMITIVE_TOPOLOGY;
841typedef D3D_PRIMITIVE D3D10_PRIMITIVE;
843typedef RECT D3D10_RECT;
845typedef struct D3D10_VIEWPORT {
854typedef struct D3D10_MAPPED_TEXTURE2D {
857} D3D10_MAPPED_TEXTURE2D;
859typedef struct D3D10_MAPPED_TEXTURE3D {
863} D3D10_MAPPED_TEXTURE3D;
865typedef enum D3D10_CPU_ACCESS_FLAG {
866 D3D10_CPU_ACCESS_WRITE = 0x10000,
867 D3D10_CPU_ACCESS_READ = 0x20000
868} D3D10_CPU_ACCESS_FLAG;
870typedef enum D3D10_RESOURCE_MISC_FLAG {
871 D3D10_RESOURCE_MISC_GENERATE_MIPS = 0x0001,
872 D3D10_RESOURCE_MISC_SHARED = 0x0002,
873 D3D10_RESOURCE_MISC_TEXTURECUBE = 0x0004,
874 D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX = 0x0010,
875 D3D10_RESOURCE_MISC_GDI_COMPATIBLE = 0x0020
876} D3D10_RESOURCE_MISC_FLAG;
878typedef enum D3D10_MAP_FLAG {
879 D3D10_MAP_FLAG_DO_NOT_WAIT = 0x100000,
882typedef enum D3D10_CLEAR_FLAG {
883 D3D10_CLEAR_DEPTH = 0x1,
884 D3D10_CLEAR_STENCIL = 0x2
887typedef enum D3D10_COLOR_WRITE_ENABLE {
888 D3D10_COLOR_WRITE_ENABLE_RED = 0x1,
889 D3D10_COLOR_WRITE_ENABLE_GREEN = 0x2,
890 D3D10_COLOR_WRITE_ENABLE_BLUE = 0x4,
891 D3D10_COLOR_WRITE_ENABLE_ALPHA = 0x8,
892 D3D10_COLOR_WRITE_ENABLE_ALL = (D3D10_COLOR_WRITE_ENABLE_RED | D3D10_COLOR_WRITE_ENABLE_GREEN |
893 D3D10_COLOR_WRITE_ENABLE_BLUE | D3D10_COLOR_WRITE_ENABLE_ALPHA)
894} D3D10_COLOR_WRITE_ENABLE;
896typedef enum D3D10_TEXTURECUBE_FACE {
897 D3D10_TEXTURECUBE_FACE_POSITIVE_X,
898 D3D10_TEXTURECUBE_FACE_NEGATIVE_X,
899 D3D10_TEXTURECUBE_FACE_POSITIVE_Y,
900 D3D10_TEXTURECUBE_FACE_NEGATIVE_Y,
901 D3D10_TEXTURECUBE_FACE_POSITIVE_Z,
902 D3D10_TEXTURECUBE_FACE_NEGATIVE_Z,
903} D3D10_TEXTURECUBE_FACE;
905typedef enum D3D10_ASYNC_GETDATA_FLAG {
906 D3D10_ASYNC_GETDATA_DONOTFLUSH = 0x1,
907} D3D10_ASYNC_GETDATA_FLAG;
909typedef enum D3D10_FILTER_TYPE {
910 D3D10_FILTER_TYPE_POINT,
911 D3D10_FILTER_TYPE_LINEAR
914typedef enum D3D10_QUERY_MISC_FLAG {
915 D3D10_QUERY_MISC_PREDICATEHINT = 0x1
916} D3D10_QUERY_MISC_FLAG;
918typedef struct D3D10_QUERY_DATA_TIMESTAMP_DISJOINT {
921} D3D10_QUERY_DATA_TIMESTAMP_DISJOINT;
923typedef struct D3D10_QUERY_DATA_PIPELINE_STATISTICS {
926 UINT64 VSInvocations;
927 UINT64 GSInvocations;
931 UINT64 PSInvocations;
932} D3D10_QUERY_DATA_PIPELINE_STATISTICS;
934typedef struct D3D10_QUERY_DATA_SO_STATISTICS {
935 UINT64 NumPrimitivesWritten;
936 UINT64 PrimitivesStorageNeeded;
937} D3D10_QUERY_DATA_SO_STATISTICS;
939typedef enum D3D10_CREATE_DEVICE_FLAG {
940 D3D10_CREATE_DEVICE_SINGLETHREADED = 0x1,
941 D3D10_CREATE_DEVICE_DEBUG = 0x2,
942 D3D10_CREATE_DEVICE_SWITCH_TO_REF = 0x4,
943 D3D10_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS = 0x8,
944 D3D10_CREATE_DEVICE_ALLOW_NULL_FROM_MAP = 0x10,
945 D3D10_CREATE_DEVICE_BGRA_SUPPORT = 0x20,
946 D3D10_CREATE_DEVICE_STRICT_VALIDATION = 0x0200
947} D3D10_CREATE_DEVICE_FLAG;
951interface ID3D10Device;
956 uuid(9b7e4c00-342c-4106-a19f-4f2704f689f0)
958interface ID3D10DeviceChild : IUnknown
961 [out] ID3D10Device **ppDevice);
962 HRESULT GetPrivateData(
964 [in, out] UINT *pDataSize,
966 HRESULT SetPrivateData(
969 [in] const void *pData);
970 HRESULT SetPrivateDataInterface(
972 [in] const IUnknown *pData);
980 uuid(9b7e4c01-342c-4106-a19f-4f2704f689f0)
982interface ID3D10Resource : ID3D10DeviceChild
985 [out] D3D10_RESOURCE_DIMENSION *rType);
986 void SetEvictionPriority(
987 [in] UINT EvictionPriority);
988 UINT GetEvictionPriority();
994 uuid(9b7e4c02-342c-4106-a19f-4f2704f689f0)
996interface ID3D10Buffer : ID3D10Resource
999 [in] D3D10_MAP MapType,
1001 [out] void **ppData);
1004 [out] D3D10_BUFFER_DESC *pDesc);
1010 uuid(9b7e4c03-342c-4106-a19f-4f2704f689F0)
1012interface ID3D10Texture1D : ID3D10Resource
1015 [in] UINT Subresource,
1016 [in] D3D10_MAP MapType,
1018 [out] void **ppData);
1020 [in] UINT Subresource);
1022 [out] D3D10_TEXTURE1D_DESC *pDesc);
1028 uuid(9b7e4c04-342c-4106-a19f-4f2704f689F0)
1030interface ID3D10Texture2D : ID3D10Resource
1033 [in] UINT Subresource,
1034 [in] D3D10_MAP MapType,
1036 [out] D3D10_MAPPED_TEXTURE2D *pMappedTex2D);
1038 [in] UINT Subresource);
1040 [out] D3D10_TEXTURE2D_DESC *pDesc);
1046 uuid(9b7e4c05-342c-4106-a19f-4f2704f689F0)
1048interface ID3D10Texture3D : ID3D10Resource
1051 [in] UINT Subresource,
1052 [in] D3D10_MAP MapType,
1054 [out] D3D10_MAPPED_TEXTURE3D *pMappedTex3D);
1056 [in] UINT Subresource);
1058 [out] D3D10_TEXTURE3D_DESC *pDesc);
1064 uuid(c902b03f-60a7-49ba-9936-2a3ab37a7e33)
1066interface ID3D10View : ID3D10DeviceChild
1069 [out] ID3D10Resource **ppResource);
1075 uuid(9b7e4c09-342c-4106-a19f-4f2704f689f0)
1077interface ID3D10DepthStencilView : ID3D10View
1080 [out] D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc);
1087 uuid(9b7e4c08-342c-4106-a19f-4f2704f689f0)
1089interface ID3D10RenderTargetView : ID3D10View
1092 [out] D3D10_RENDER_TARGET_VIEW_DESC *pDesc);
1098 uuid(9b7e4c07-342c-4106-a19f-4f2704f689f0)
1100interface ID3D10ShaderResourceView : ID3D10View
1103 [out] D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc);
1111 uuid(edad8d19-8a35-4d6d-8566-2ea276cde161)
1113interface ID3D10BlendState : ID3D10DeviceChild
1116 [out] D3D10_BLEND_DESC *pDesc);
1122 uuid(2b4b1cc8-a4ad-41f8-8322-ca86fc3ec675)
1124interface ID3D10DepthStencilState : ID3D10DeviceChild
1127 [out] D3D10_DEPTH_STENCIL_DESC *pDesc);
1133 uuid(6316be88-54cd-4040-ab44-20461bc81f68)
1135interface ID3D10GeometryShader : ID3D10DeviceChild
1142 uuid(9b7e4c0b-342c-4106-a19f-4f2704f689f0)
1144interface ID3D10InputLayout : ID3D10DeviceChild
1151 uuid(4968b601-9d00-4cde-8346-8e7f675819b6)
1153interface ID3D10PixelShader : ID3D10DeviceChild
1160 uuid(a2a07292-89af-4345-be2e-c53d9fbb6e9f)
1162interface ID3D10RasterizerState : ID3D10DeviceChild
1165 [out] D3D10_RASTERIZER_DESC *pDesc);
1171 uuid(9b7e4c0c-342c-4106-a19f-4f2704f689f0)
1173interface ID3D10SamplerState : ID3D10DeviceChild
1176 [out] D3D10_SAMPLER_DESC *pDesc);
1182 uuid(9b7e4c0a-342c-4106-a19f-4f2704f689f0)
1184interface ID3D10VertexShader : ID3D10DeviceChild
1191 uuid(9b7e4c0d-342c-4106-a19f-4f2704f689f0)
1193interface ID3D10Asynchronous : ID3D10DeviceChild
1200 [in] UINT GetDataFlags);
1207 uuid(9b7e4c11-342c-4106-a19f-4f2704f689f0)
1209interface ID3D10Counter : ID3D10Asynchronous
1212 [out] D3D10_COUNTER_DESC *pDesc);
1218 uuid(9b7e4C0e-342C-4106-a19f-4f2704f689f0)
1220interface ID3D10Query : ID3D10Asynchronous
1223 [out] D3D10_QUERY_DESC *pDesc);
1229 uuid(9b7e4c10-342c-4106-a19f-4f2704f689f0)
1231interface ID3D10Predicate : ID3D10Query
1238 uuid(9b7e4c0f-342c-4106-a19f-4f2704f689f0)
1240interface ID3D10Device : IUnknown
1242 void VSSetConstantBuffers(
1243 [in] UINT StartSlot,
1244 [in] UINT NumBuffers,
1245 [in] ID3D10Buffer *const *ppConstantBuffers);
1246 void PSSetShaderResources(
1247 [in] UINT StartSlot,
1249 [in] ID3D10ShaderResourceView *const *ppShaderResourceViews);
1251 [in] ID3D10PixelShader *pPixelShader);
1253 [in] UINT StartSlot,
1254 [in] UINT NumSamplers,
1255 [in]ID3D10SamplerState *const *ppSamplers);
1257 [in] ID3D10VertexShader *pVertexShader);
1259 [in] UINT IndexCount,
1260 [in] UINT StartIndexLocation,
1261 [in] INT BaseVertexLocation);
1263 [in] UINT VertexCount,
1264 [in] UINT StartVertexLocation);
1265 void PSSetConstantBuffers(
1266 [in] UINT StartSlot,
1267 [in] UINT NumBuffers,
1268 [in] ID3D10Buffer *const *ppConstantBuffers);
1269 void IASetInputLayout(
1270 [in] ID3D10InputLayout *pInputLayout);
1271 void IASetVertexBuffers(
1272 [in] UINT StartSlot,
1273 [in] UINT NumBuffers,
1274 [in] ID3D10Buffer *const *ppVertexBuffers,
1275 [in] const UINT *pStrides,
1276 [in] const UINT *pOffsets);
1277 void IASetIndexBuffer(
1278 [in] ID3D10Buffer *pIndexBuffer,
1279 [in] DXGI_FORMAT Format,
1281 void DrawIndexedInstanced(
1282 [in] UINT IndexCountPerInstance,
1283 [in] UINT InstanceCount,
1284 [in] UINT StartIndexLocation,
1285 [in] INT BaseVertexLocation,
1286 [in] UINT StartInstanceLocation);
1288 [in] UINT VertexCountPerInstance,
1289 [in] UINT InstanceCount,
1290 [in] UINT StartVertexLocation,
1291 [in] UINT StartInstanceLocation);
1292 void GSSetConstantBuffers(
1293 [in] UINT StartSlot,
1294 [in] UINT NumBuffers,
1295 [in] ID3D10Buffer *const *ppConstantBuffers);
1297 [in] ID3D10GeometryShader *pShader);
1298 void IASetPrimitiveTopology(
1299 [in] D3D10_PRIMITIVE_TOPOLOGY Topology);
1300 void VSSetShaderResources(
1301 [in] UINT StartSlot,
1303 [in] ID3D10ShaderResourceView *const *ppShaderResourceViews);
1305 [in] UINT StartSlot,
1306 [in] UINT NumSamplers,
1307 [in] ID3D10SamplerState *const *ppSamplers);
1308 void SetPredication(
1309 [in] ID3D10Predicate *pPredicate,
1310 [in] BOOL PredicateValue);
1311 void GSSetShaderResources(
1312 [in] UINT StartSlot,
1314 [in] ID3D10ShaderResourceView * const *ppShaderResourceViews);
1316 [in] UINT StartSlot,
1317 [in] UINT NumSamplers,
1318 [in] ID3D10SamplerState *const *ppSamplers);
1319 void OMSetRenderTargets(
1321 [in] ID3D10RenderTargetView *const *ppRenderTargetViews,
1322 [in] ID3D10DepthStencilView *pDepthStencilView);
1323 void OMSetBlendState(
1324 [in] ID3D10BlendState *pBlendState,
1325 [in] const FLOAT BlendFactor[4],
1326 [in] UINT SampleMask);
1327 void OMSetDepthStencilState(
1328 [in] ID3D10DepthStencilState *pDepthStencilState,
1329 [in] UINT StencilRef);
1331 [in] UINT NumBuffers,
1332 [in] ID3D10Buffer *const *ppSOTargets,
1333 [in] const UINT *pOffsets);
1336 [in] ID3D10RasterizerState *pRasterizerState);
1337 void RSSetViewports(
1338 [in] UINT NumViewports,
1339 [in] const D3D10_VIEWPORT *pViewports);
1340 void RSSetScissorRects(
1342 [in] const D3D10_RECT *pRects);
1343 void CopySubresourceRegion(
1344 [in] ID3D10Resource *pDstResource,
1345 [in] UINT DstSubresource,
1349 [in] ID3D10Resource *pSrcResource,
1350 [in] UINT SrcSubresource,
1351 [in] const D3D10_BOX *pSrcBox);
1353 [in] ID3D10Resource *pDstResource,
1354 [in] ID3D10Resource *pSrcResource);
1355 void UpdateSubresource(
1356 [in] ID3D10Resource *pDstResource,
1357 [in] UINT DstSubresource,
1358 [in] const D3D10_BOX *pDstBox,
1359 [in] const void *pSrcData,
1360 [in] UINT SrcRowPitch,
1361 [in] UINT SrcDepthPitch);
1362 void ClearRenderTargetView(
1363 [in] ID3D10RenderTargetView *pRenderTargetView,
1364 [in] const FLOAT ColorRGBA[4]);
1365 void ClearDepthStencilView(
1366 [in] ID3D10DepthStencilView *pDepthStencilView,
1367 [in] UINT ClearFlags,
1369 [in] UINT8 Stencil);
1371 [in] ID3D10ShaderResourceView *pShaderResourceView);
1372 void ResolveSubresource(
1373 [in] ID3D10Resource *pDstResource,
1374 [in] UINT DstSubresource,
1375 [in] ID3D10Resource *pSrcResource,
1376 [in] UINT SrcSubresource,
1377 [in] DXGI_FORMAT Format);
1378 void VSGetConstantBuffers(
1379 [in] UINT StartSlot,
1380 [in] UINT NumBuffers,
1381 [out] ID3D10Buffer **ppConstantBuffers);
1382 void PSGetShaderResources(
1383 [in] UINT StartSlot,
1385 [out] ID3D10ShaderResourceView **ppShaderResourceViews);
1387 [out] ID3D10PixelShader **ppPixelShader);
1389 [in] UINT StartSlot,
1390 [in] UINT NumSamplers,
1391 [out] ID3D10SamplerState **ppSamplers);
1393 [out] ID3D10VertexShader **ppVertexShader);
1394 void PSGetConstantBuffers(
1395 [in] UINT StartSlot,
1396 [in] UINT NumBuffers,
1397 [out] ID3D10Buffer **ppConstantBuffers);
1398 void IAGetInputLayout(
1399 [out] ID3D10InputLayout **ppInputLayout);
1400 void IAGetVertexBuffers(
1401 [in] UINT StartSlot,
1402 [in] UINT NumBuffers,
1403 [out] ID3D10Buffer **ppVertexBuffers,
1404 [out] UINT *pStrides,
1405 [out] UINT *pOffsets);
1406 void IAGetIndexBuffer(
1407 [out] ID3D10Buffer **pIndexBuffer,
1408 [out] DXGI_FORMAT *Format,
1409 [out] UINT *Offset);
1410 void GSGetConstantBuffers(
1411 [in] UINT StartSlot,
1412 [in] UINT NumBuffers,
1413 [out] ID3D10Buffer **ppConstantBuffers);
1415 [out] ID3D10GeometryShader **ppGeometryShader);
1416 void IAGetPrimitiveTopology(
1417 [out] D3D10_PRIMITIVE_TOPOLOGY *pTopology);
1418 void VSGetShaderResources(
1419 [in] UINT StartSlot,
1421 [out] ID3D10ShaderResourceView **ppShaderResourceViews);
1423 [in] UINT StartSlot,
1424 [in] UINT NumSamplers,
1425 [out] ID3D10SamplerState **ppSamplers);
1426 void GetPredication(
1427 [out] ID3D10Predicate **ppPredicate,
1428 [out] BOOL *pPredicateValue);
1429 void GSGetShaderResources(
1430 [in] UINT StartSlot,
1432 [out] ID3D10ShaderResourceView **ppShaderResourceViews);
1434 [in] UINT StartSlot,
1435 [in] UINT NumSamplers,
1436 [out] ID3D10SamplerState **ppSamplers);
1437 void OMGetRenderTargets(
1439 [out] ID3D10RenderTargetView **ppRenderTargetViews,
1440 [out] ID3D10DepthStencilView **ppDepthStencilView);
1441 void OMGetBlendState(
1442 [out] ID3D10BlendState **ppBlendState,
1443 [out] FLOAT BlendFactor[4],
1444 [out] UINT *pSampleMask);
1445 void OMGetDepthStencilState(
1446 [out] ID3D10DepthStencilState **ppDepthStencilState,
1447 [out] UINT *pStencilRef);
1449 [in] UINT NumBuffers,
1450 [out] ID3D10Buffer **ppSOTargets,
1451 [out] UINT *pOffsets);
1453 [out] ID3D10RasterizerState **ppRasterizerState);
1454 void RSGetViewports(
1455 [in, out] UINT *NumViewports,
1456 [out] D3D10_VIEWPORT *pViewports);
1457 void RSGetScissorRects(
1458 [in, out] UINT *NumRects,
1459 [out] D3D10_RECT *pRects);
1460 HRESULT GetDeviceRemovedReason();
1461 HRESULT SetExceptionMode(
1462 [in] UINT RaiseFlags);
1463 UINT GetExceptionMode();
1464 HRESULT GetPrivateData(
1466 [in, out] UINT *pDataSize,
1468 HRESULT SetPrivateData(
1471 [in] const void *pData);
1472 HRESULT SetPrivateDataInterface(
1474 [in] const IUnknown *pData);
1477 HRESULT CreateBuffer(
1478 [in] const D3D10_BUFFER_DESC *pDesc,
1479 [in] const D3D10_SUBRESOURCE_DATA *pInitialData,
1480 [out] ID3D10Buffer **ppBuffer);
1481 HRESULT CreateTexture1D(
1482 [in] const D3D10_TEXTURE1D_DESC *pDesc,
1483 [in] const D3D10_SUBRESOURCE_DATA *pInitialData,
1484 [out] ID3D10Texture1D **ppTexture1D);
1485 HRESULT CreateTexture2D(
1486 [in] const D3D10_TEXTURE2D_DESC *pDesc,
1487 [in] const D3D10_SUBRESOURCE_DATA *pInitialData,
1488 [out] ID3D10Texture2D **ppTexture2D);
1489 HRESULT CreateTexture3D(
1490 [in] const D3D10_TEXTURE3D_DESC *pDesc,
1491 [in] const D3D10_SUBRESOURCE_DATA *pInitialData,
1492 [out] ID3D10Texture3D **ppTexture3D);
1493 HRESULT CreateShaderResourceView(
1494 [in] ID3D10Resource *pResource,
1495 [in] const D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc,
1496 [out] ID3D10ShaderResourceView **ppSRView);
1497 HRESULT CreateRenderTargetView(
1498 [in] ID3D10Resource *pResource,
1499 [in] const D3D10_RENDER_TARGET_VIEW_DESC *pDesc,
1500 [out] ID3D10RenderTargetView **ppRTView);
1501 HRESULT CreateDepthStencilView(
1502 [in] ID3D10Resource *pResource,
1503 [in] const D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc,
1504 [out] ID3D10DepthStencilView **ppDepthStencilView);
1505 HRESULT CreateInputLayout(
1506 [in] const D3D10_INPUT_ELEMENT_DESC *pInputElementDescs,
1507 [in] UINT NumElements,
1508 [in] const void *pShaderBytecodeWithInputSignature,
1509 [in] SIZE_T BytecodeLength,
1510 [out] ID3D10InputLayout **ppInputLayout);
1511 HRESULT CreateVertexShader(
1512 [in] const void *pShaderBytecode,
1513 [in] SIZE_T BytecodeLength,
1514 [out] ID3D10VertexShader **ppVertexShader);
1515 HRESULT CreateGeometryShader(
1516 [in] const void *pShaderBytecode,
1517 [in] SIZE_T BytecodeLength,
1518 [out] ID3D10GeometryShader **ppGeometryShader);
1519 HRESULT CreateGeometryShaderWithStreamOutput(
1520 [in] const void *pShaderBytecode,
1521 [in] SIZE_T BytecodeLength,
1522 [in] const D3D10_SO_DECLARATION_ENTRY *pSODeclaration,
1523 [in] UINT NumEntries,
1524 [in] UINT OutputStreamStride,
1525 [out] ID3D10GeometryShader **ppGeometryShader);
1526 HRESULT CreatePixelShader(
1527 [in] const void *pShaderBytecode,
1528 [in] SIZE_T BytecodeLength,
1529 [out] ID3D10PixelShader **ppPixelShader);
1530 HRESULT CreateBlendState(
1531 [in] const D3D10_BLEND_DESC *pBlendStateDesc,
1532 [out] ID3D10BlendState **ppBlendState);
1533 HRESULT CreateDepthStencilState(
1534 [in] const D3D10_DEPTH_STENCIL_DESC *pDepthStencilDesc,
1535 [out] ID3D10DepthStencilState **ppDepthStencilState);
1536 HRESULT CreateRasterizerState(
1537 [in] const D3D10_RASTERIZER_DESC *pRasterizerDesc,
1538 [out] ID3D10RasterizerState **ppRasterizerState);
1539 HRESULT CreateSamplerState(
1540 [in] const D3D10_SAMPLER_DESC *pSamplerDesc,
1541 [out] ID3D10SamplerState **ppSamplerState);
1542 HRESULT CreateQuery(
1543 [in] const D3D10_QUERY_DESC *pQueryDesc,
1544 [out] ID3D10Query **ppQuery);
1545 HRESULT CreatePredicate(
1546 [in] const D3D10_QUERY_DESC *pPredicateDesc,
1547 [out] ID3D10Predicate **ppPredicate);
1548 HRESULT CreateCounter(
1549 [in] const D3D10_COUNTER_DESC *pCounterDesc,
1550 [out] ID3D10Counter **ppCounter);
1551 HRESULT CheckFormatSupport(
1552 [in] DXGI_FORMAT Format,
1553 [out] UINT *pFormatSupport);
1554 HRESULT CheckMultisampleQualityLevels(
1555 [in] DXGI_FORMAT Format,
1556 [in] UINT SampleCount,
1557 [out] UINT *pNumQualityLevels);
1558 void CheckCounterInfo(
1559 [out] D3D10_COUNTER_INFO *pCounterInfo);
1560 HRESULT CheckCounter(
1561 [in] const D3D10_COUNTER_DESC *pDesc,
1562 [out] D3D10_COUNTER_TYPE *pType,
1563 [out] UINT *pActiveCounters,
1565 [in, out] UINT *pNameLength,
1567 [in, out] UINT *pUnitsLength,
1568 [out] char *description,
1569 [in, out] UINT *pDescriptionLength);
1570 UINT GetCreationFlags();
1571 HRESULT OpenSharedResource(
1572 [in] HANDLE hResource,
1573 [in] REFIID ReturnedInterface,
1574 [out] void **ppResource);
1575 void SetTextFilterSize(
1578 void GetTextFilterSize(
1580 [out] UINT *pHeight);
1586 uuid(9b7e4e00-342c-4106-a19f-4f2704f689f0)
1588interface ID3D10Multithread : IUnknown
1592 BOOL SetMultithreadProtected(
1593 [in] BOOL bMTProtect);
1594 BOOL GetMultithreadProtected();
1597cpp_quote("#ifndef D3D10_IGNORE_SDK_LAYERS")
1600cpp_quote("#include \"d3d10misc.h\"")
CD3D10_BUFFER_DESC D3D10_BUFFER_DESC cpp_quote(" ~CD3D10_BUFFER_DESC() {}") operator const D3D10_BUFFER_DESC &() const