d3d9/tests: AMD GPUs sample the border color of cube textures.
[wine.git] / include / d3d10.idl
blob794fa33ce6785e004e2471d2bf6bb1cfe1b09604
1 /*
2 * Copyright 2007 Andras Kovacs
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 import "oaidl.idl";
20 import "ocidl.idl";
21 import "dxgi.idl";
22 import "d3dcommon.idl";
24 cpp_quote("#ifndef _D3D10_CONSTANTS")
25 cpp_quote("#define _D3D10_CONSTANTS")
26 const float D3D10_DEFAULT_BLEND_FACTOR_ALPHA = 1.0;
27 const float D3D10_DEFAULT_BLEND_FACTOR_BLUE = 1.0;
28 const float D3D10_DEFAULT_BLEND_FACTOR_GREEN = 1.0;
29 const float D3D10_DEFAULT_BLEND_FACTOR_RED = 1.0;
30 const float D3D10_DEFAULT_BORDER_COLOR_COMPONENT = 0.0;
31 const float D3D10_DEFAULT_SLOPE_SCALED_DEPTH_BIAS = 0.0;
32 const float D3D10_DEFAULT_DEPTH_BIAS_CLAMP = 0.0;
33 const float D3D10_DEFAULT_MAX_ANISOTROPY = 16.0;
34 const float D3D10_DEFAULT_MIP_LOD_BIAS = 0.0;
35 const float D3D10_DEFAULT_VIEWPORT_MAX_DEPTH = 0.0;
36 const float D3D10_DEFAULT_VIEWPORT_MIN_DEPTH = 0.0;
37 const float D3D10_FLOAT16_FUSED_TOLERANCE_IN_ULP = 0.6;
38 const float D3D10_FLOAT32_MAX = 3.402823466e+38;
39 const float D3D10_FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP = 0.6;
40 const float D3D10_FLOAT_TO_SRGB_EXPONENT_DENOMINATOR = 2.4;
41 const float D3D10_FLOAT_TO_SRGB_EXPONENT_NUMERATOR = 1.0;
42 const float D3D10_FLOAT_TO_SRGB_OFFSET = 0.055;
43 const float D3D10_FLOAT_TO_SRGB_SCALE_1 = 12.92;
44 const float D3D10_FLOAT_TO_SRGB_SCALE_2 = 1.055;
45 const float D3D10_FLOAT_TO_SRGB_THRESHOLD = 0.0031308;
46 const float D3D10_FTOI_INSTRUCTION_MAX_INPUT = 2147483647.999;
47 const float D3D10_FTOI_INSTRUCTION_MIN_INPUT = -2147483648.999;
48 const float D3D10_FTOU_INSTRUCTION_MAX_INPUT = 4294967295.999;
49 const float D3D10_FTOU_INSTRUCTION_MIN_INPUT = 0.0;
50 const float D3D10_LINEAR_GAMMA = 1.0;
51 const float D3D10_MAX_BORDER_COLOR_COMPONENT = 1.0;
52 const float D3D10_MAX_DEPTH = 1.0;
53 const float D3D10_MAX_POSITION_VALUE = 3.402823466e+34;
54 const float D3D10_MIN_BORDER_COLOR_COMPONENT = 0.0;
55 const float D3D10_MIN_DEPTH = 0.0;
56 const float D3D10_MIP_LOD_BIAS_MAX = 15.99;
57 const float D3D10_MIP_LOD_BIAS_MIN = -16.0;
58 const float D3D10_PS_PIXEL_CENTER_FRACTIONAL_COMPONENT = 0.5;
59 const float D3D10_MULTISAMPLE_ANTIALIAS_LINE_WIDTH = 1.4;
60 const float D3D10_SRGB_GAMMA = 2.2;
61 const float D3D10_SRGB_TO_FLOAT_DENOMINATOR_1 = 12.92;
62 const float D3D10_SRGB_TO_FLOAT_DENOMINATOR_2 = 1.055;
63 const float D3D10_SRGB_TO_FLOAT_EXPONENT = 2.4;
64 const float D3D10_SRGB_TO_FLOAT_OFFSET = 0.055;
65 const float D3D10_SRGB_TO_FLOAT_THRESHOLD = 0.04045;
66 const float D3D10_SRGB_TO_FLOAT_TOLERANCE_IN_ULP = 0.5;
67 const float D3D10_PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT = 0.0;
68 const float D3D_SPEC_VERSION = 1.050005;
69 const unsigned int D3D10_16BIT_INDEX_STRIP_CUT_VALUE = 0xffff;
70 const unsigned int D3D10_32BIT_INDEX_STRIP_CUT_VALUE = 0xffffffff;
71 const unsigned int D3D10_8BIT_INDEX_STRIP_CUT_VALUE = 0xff;
72 const unsigned int D3D10_ARRAY_AXIS_ADDRESS_RANGE_BIT_COUNT = 9;
73 const unsigned int D3D10_CLIP_OR_CULL_DISTANCE_COUNT = 8;
74 const unsigned int D3D10_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT = 2;
75 const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT = 14;
76 const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_COMPONENTS = 4;
77 const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT = 32;
78 const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT = 15;
79 const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS = 4;
80 const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT = 15;
81 const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST = 1;
82 const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS = 1;
83 const unsigned int D3D10_COMMONSHADER_FLOWCONTROL_NESTING_LIMIT = 64;
84 const unsigned int D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS = 4;
85 const unsigned int D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT = 1;
86 const unsigned int D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST = 1;
87 const unsigned int D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS = 1;
88 const unsigned int D3D10_COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT = 32;
89 const unsigned int D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS = 1;
90 const unsigned int D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT = 128;
91 const unsigned int D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST = 1;
92 const unsigned int D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS = 1;
93 const unsigned int D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT = 128;
94 const unsigned int D3D10_COMMONSHADER_SAMPLER_REGISTER_COMPONENTS = 1;
95 const unsigned int D3D10_COMMONSHADER_SAMPLER_REGISTER_COUNT = 16;
96 const unsigned int D3D10_COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST = 1;
97 const unsigned int D3D10_COMMONSHADER_SAMPLER_REGISTER_READ_PORTS = 1;
98 const unsigned int D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT = 16;
99 const unsigned int D3D10_COMMONSHADER_SUBROUTINE_NESTING_LIMIT = 32;
100 const unsigned int D3D10_COMMONSHADER_TEMP_REGISTER_COMPONENTS = 4;
101 const unsigned int D3D10_COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT = 32;
102 const unsigned int D3D10_COMMONSHADER_TEMP_REGISTER_COUNT = 4096;
103 const unsigned int D3D10_COMMONSHADER_TEMP_REGISTER_READS_PER_INST = 3;
104 const unsigned int D3D10_COMMONSHADER_TEMP_REGISTER_READ_PORTS = 3;
105 const unsigned int D3D10_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX = 10;
106 const int D3D10_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN = -10;
107 const int D3D10_COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE = -8;
108 const unsigned int D3D10_COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE = 7;
109 const unsigned int D3D10_DEFAULT_DEPTH_BIAS = 0;
110 const unsigned int D3D10_DEFAULT_RENDER_TARGET_ARRAY_INDEX = 0;
111 const unsigned int D3D10_DEFAULT_SAMPLE_MASK = 0xffffffff;
112 const unsigned int D3D10_DEFAULT_SCISSOR_ENDX = 0;
113 const unsigned int D3D10_DEFAULT_SCISSOR_ENDY = 0;
114 const unsigned int D3D10_DEFAULT_SCISSOR_STARTX = 0;
115 const unsigned int D3D10_DEFAULT_SCISSOR_STARTY = 0;
116 const unsigned int D3D10_DEFAULT_STENCIL_READ_MASK = 0xff;
117 const unsigned int D3D10_DEFAULT_STENCIL_REFERENCE = 0;
118 const unsigned int D3D10_DEFAULT_STENCIL_WRITE_MASK = 0xff;
119 const unsigned int D3D10_DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX = 0;
120 const unsigned int D3D10_DEFAULT_VIEWPORT_HEIGHT = 0;
121 const unsigned int D3D10_DEFAULT_VIEWPORT_TOPLEFTX = 0;
122 const unsigned int D3D10_DEFAULT_VIEWPORT_TOPLEFTY = 0;
123 const unsigned int D3D10_DEFAULT_VIEWPORT_WIDTH = 0;
124 const unsigned int D3D10_GS_INPUT_PRIM_CONST_REGISTER_COMPONENTS = 1;
125 const unsigned int D3D10_GS_INPUT_PRIM_CONST_REGISTER_COMPONENT_BIT_COUNT = 32;
126 const unsigned int D3D10_GS_INPUT_PRIM_CONST_REGISTER_COUNT = 1;
127 const unsigned int D3D10_GS_INPUT_PRIM_CONST_REGISTER_READS_PER_INST = 2;
128 const unsigned int D3D10_GS_INPUT_PRIM_CONST_REGISTER_READ_PORTS = 1;
129 const unsigned int D3D10_GS_INPUT_REGISTER_COMPONENTS = 4;
130 const unsigned int D3D10_GS_INPUT_REGISTER_COMPONENT_BIT_COUNT =32;
131 const unsigned int D3D10_GS_INPUT_REGISTER_COUNT = 16;
132 const unsigned int D3D10_GS_INPUT_REGISTER_READS_PER_INST = 2;
133 const unsigned int D3D10_GS_INPUT_REGISTER_READ_PORTS = 1;
134 const unsigned int D3D10_GS_INPUT_REGISTER_VERTICES = 6;
135 const unsigned int D3D10_GS_OUTPUT_ELEMENTS = 32;
136 const unsigned int D3D10_GS_OUTPUT_REGISTER_COMPONENTS = 4;
137 const unsigned int D3D10_GS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
138 const unsigned int D3D10_GS_OUTPUT_REGISTER_COUNT = 32;
139 const unsigned int D3D10_IA_DEFAULT_INDEX_BUFFER_OFFSET_IN_BYTES = 0;
140 const unsigned int D3D10_IA_DEFAULT_PRIMITIVE_TOPOLOGY = 0;
141 const unsigned int D3D10_IA_DEFAULT_VERTEX_BUFFER_OFFSET_IN_BYTES = 0;
142 const unsigned int D3D10_IA_INDEX_INPUT_RESOURCE_SLOT_COUNT = 1;
143 const unsigned int D3D10_IA_INSTANCE_ID_BIT_COUNT = 32;
144 const unsigned int D3D10_IA_INTEGER_ARITHMETIC_BIT_COUNT = 32;
145 const unsigned int D3D10_IA_PRIMITIVE_ID_BIT_COUNT = 32;
146 const unsigned int D3D10_IA_VERTEX_ID_BIT_COUNT = 32;
147 const unsigned int D3D10_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT = 16;
148 const unsigned int D3D10_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS = 64;
149 const unsigned int D3D10_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT = 16;
150 const unsigned int D3D10_INTEGER_DIVIDE_BY_ZERO_QUOTIENT = 0xffffffff;
151 const unsigned int D3D10_INTEGER_DIVIDE_BY_ZERO_REMAINDER = 0xffffffff;
152 const unsigned int D3D10_MAX_MAXANISOTROPY = 16;
153 const unsigned int D3D10_MAX_MULTISAMPLE_SAMPLE_COUNT = 32;
154 const unsigned int D3D10_MAX_TEXTURE_DIMENSION_2_TO_EXP = 17;
155 const unsigned int D3D10_MIN_MAXANISOTROPY = 0;
156 const unsigned int D3D10_MIP_LOD_FRACTIONAL_BIT_COUNT = 6;
157 const unsigned int D3D10_MIP_LOD_RANGE_BIT_COUNT = 8;
158 const unsigned int D3D10_NONSAMPLE_FETCH_OUT_OF_RANGE_ACCESS_RESULT = 0;
159 const unsigned int D3D10_PIXEL_ADDRESS_RANGE_BIT_COUNT = 13;
160 const unsigned int D3D10_PRE_SCISSOR_PIXEL_ADDRESS_RANGE_BIT_COUNT = 15;
161 const unsigned int D3D10_PS_FRONTFACING_DEFAULT_VALUE = 0xffffffff;
162 const unsigned int D3D10_PS_FRONTFACING_FALSE_VALUE = 0;
163 const unsigned int D3D10_PS_FRONTFACING_TRUE_VALUE = 0xffffffff;
164 const unsigned int D3D10_PS_INPUT_REGISTER_COMPONENTS = 4;
165 const unsigned int D3D10_PS_INPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
166 const unsigned int D3D10_PS_INPUT_REGISTER_COUNT = 32;
167 const unsigned int D3D10_PS_INPUT_REGISTER_READS_PER_INST = 2;
168 const unsigned int D3D10_PS_INPUT_REGISTER_READ_PORTS = 1;
169 const unsigned int D3D10_PS_OUTPUT_DEPTH_REGISTER_COMPONENTS = 1;
170 const unsigned int D3D10_PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT = 32;
171 const unsigned int D3D10_PS_OUTPUT_DEPTH_REGISTER_COUNT = 1;
172 const unsigned int D3D10_PS_OUTPUT_REGISTER_COMPONENTS = 4;
173 const unsigned int D3D10_PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
174 const unsigned int D3D10_PS_OUTPUT_REGISTER_COUNT = 8;
175 const unsigned int D3D10_REQ_BLEND_OBJECT_COUNT_PER_CONTEXT = 4096;
176 const unsigned int D3D10_REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP = 27;
177 const unsigned int D3D10_REQ_CONSTANT_BUFFER_ELEMENT_COUNT = 4096;
178 const unsigned int D3D10_REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_CONTEXT = 4096;
179 const unsigned int D3D10_REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP = 32;
180 const unsigned int D3D10_REQ_DRAW_VERTEX_COUNT_2_TO_EXP = 32;
181 const unsigned int D3D10_REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION = 8192;
182 const unsigned int D3D10_REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT = 1024;
183 const unsigned int D3D10_REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT = 4096;
184 const unsigned int D3D10_REQ_MAXANISOTROPY = 16;
185 const unsigned int D3D10_REQ_MIP_LEVELS = 14;
186 const unsigned int D3D10_REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES = 2048;
187 const unsigned int D3D10_REQ_RASTERIZER_OBJECT_COUNT_PER_CONTEXT = 4096;
188 const unsigned int D3D10_REQ_RENDER_TO_BUFFER_WINDOW_WIDTH = 8192;
189 const unsigned int D3D10_REQ_RESOURCE_SIZE_IN_MEGABYTES = 128;
190 const unsigned int D3D10_REQ_RESOURCE_VIEW_COUNT_PER_CONTEXT_2_TO_EXP = 20;
191 const unsigned int D3D10_REQ_SAMPLER_OBJECT_COUNT_PER_CONTEXT = 4096;
192 const unsigned int D3D10_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION = 512;
193 const unsigned int D3D10_REQ_TEXTURE1D_U_DIMENSION = 8192;
194 const unsigned int D3D10_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION = 512;
195 const unsigned int D3D10_REQ_TEXTURE2D_U_OR_V_DIMENSION = 8192;
196 const unsigned int D3D10_REQ_TEXTURE3D_U_V_OR_W_DIMENSION = 2048;
197 const unsigned int D3D10_REQ_TEXTURECUBE_DIMENSION = 8192;
198 const unsigned int D3D10_RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL = 0;
199 const unsigned int D3D10_SHADER_MAJOR_VERSION = 4;
200 const unsigned int D3D10_SHADER_MINOR_VERSION = 0;
201 const unsigned int D3D10_SHIFT_INSTRUCTION_PAD_VALUE = 0;
202 const unsigned int D3D10_SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT = 5;
203 const unsigned int D3D10_SIMULTANEOUS_RENDER_TARGET_COUNT = 8;
204 const unsigned int D3D10_SO_BUFFER_MAX_STRIDE_IN_BYTES = 2048;
205 const unsigned int D3D10_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES = 256;
206 const unsigned int D3D10_SO_BUFFER_SLOT_COUNT = 4;
207 const unsigned int D3D10_SO_DDI_REGISTER_INDEX_DENOTING_GAP = 0xffffffff;
208 const unsigned int D3D10_SO_MULTIPLE_BUFFER_ELEMENTS_PER_BUFFER = 1;
209 const unsigned int D3D10_SO_SINGLE_BUFFER_COMPONENT_LIMIT = 64;
210 const unsigned int D3D10_STANDARD_COMPONENT_BIT_COUNT = 32;
211 const unsigned int D3D10_STANDARD_COMPONENT_BIT_COUNT_DOUBLED = 64;
212 const unsigned int D3D10_STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE = 4;
213 const unsigned int D3D10_STANDARD_PIXEL_COMPONENT_COUNT = 128;
214 const unsigned int D3D10_STANDARD_PIXEL_ELEMENT_COUNT = 32;
215 const unsigned int D3D10_STANDARD_VECTOR_SIZE = 4;
216 const unsigned int D3D10_STANDARD_VERTEX_ELEMENT_COUNT = 16;
217 const unsigned int D3D10_STANDARD_VERTEX_TOTAL_COMPONENT_COUNT = 64;
218 const unsigned int D3D10_SUBPIXEL_FRACTIONAL_BIT_COUNT = 8;
219 const unsigned int D3D10_SUBTEXEL_FRACTIONAL_BIT_COUNT = 6;
220 const unsigned int D3D10_TEXEL_ADDRESS_RANGE_BIT_COUNT = 18;
221 const unsigned int D3D10_UNBOUND_MEMORY_ACCESS_RESULT = 0;
222 const unsigned int D3D10_VIEWPORT_AND_SCISSORRECT_MAX_INDEX = 15;
223 const unsigned int D3D10_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE = 16;
224 const unsigned int D3D10_VIEWPORT_BOUNDS_MAX = 16383;
225 const int D3D10_VIEWPORT_BOUNDS_MIN = -16384;
226 const unsigned int D3D10_VS_INPUT_REGISTER_COMPONENTS = 4;
227 const unsigned int D3D10_VS_INPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
228 const unsigned int D3D10_VS_INPUT_REGISTER_COUNT = 16;
229 const unsigned int D3D10_VS_INPUT_REGISTER_READS_PER_INST = 2;
230 const unsigned int D3D10_VS_INPUT_REGISTER_READ_PORTS = 1;
231 const unsigned int D3D10_VS_OUTPUT_REGISTER_COMPONENTS = 4;
232 const unsigned int D3D10_VS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
233 const unsigned int D3D10_VS_OUTPUT_REGISTER_COUNT = 16;
234 const unsigned int D3D10_WHQL_CONTEXT_COUNT_FOR_RESOURCE_LIMIT = 10;
235 const unsigned int D3D10_WHQL_DRAWINDEXED_INDEX_COUNT_2_TO_EXP = 25;
236 const unsigned int D3D10_WHQL_DRAW_VERTEX_COUNT_2_TO_EXP = 25;
237 const unsigned int D3D_MAJOR_VERSION = 10;
238 const unsigned int D3D_MINOR_VERSION = 0;
239 const unsigned int D3D_SPEC_DATE_DAY = 8;
240 const unsigned int D3D_SPEC_DATE_MONTH = 8;
241 const unsigned int D3D_SPEC_DATE_YEAR = 2006;
242 cpp_quote("#endif")
244 const unsigned int D3D10_APPEND_ALIGNED_ELEMENT = 0xffffffff;
245 const unsigned int _FACD3D10 = 0x879;
246 const unsigned int _FACD3D10DEBUG = _FACD3D10 + 1;
247 const unsigned int D3D10_FILTER_TYPE_MASK = 0x3;
248 const unsigned int D3D10_SDK_VERSION = 29;
250 cpp_quote("#define MAKE_D3D10_HRESULT(code) MAKE_HRESULT( 1, _FACD3D10, code)")
251 cpp_quote("#define MAKE_D3D10_STATUS(code) MAKE_HRESULT( 0, _FACD3D10, code)")
252 cpp_quote("#define D3D10_ERROR_TOO_MANY_UNIQUE_STATE_OBJECTS MAKE_D3D10_HRESULT(1)")
253 cpp_quote("#define D3D10_ERROR_FILE_NOT_FOUND MAKE_D3D10_HRESULT(2)")
255 cpp_quote("#if defined(__cplusplus) && !defined(D3D10_NO_HELPERS)")
256 cpp_quote("inline unsigned int D3D10CalcSubresource(unsigned int level, unsigned int layer, unsigned int level_count)")
257 cpp_quote("{")
258 cpp_quote(" return layer * level_count + level;")
259 cpp_quote("}")
260 cpp_quote("#endif")
262 typedef enum D3D10_BLEND {
263 D3D10_BLEND_ZERO = 1,
264 D3D10_BLEND_ONE = 2,
265 D3D10_BLEND_SRC_COLOR = 3,
266 D3D10_BLEND_INV_SRC_COLOR = 4,
267 D3D10_BLEND_SRC_ALPHA = 5,
268 D3D10_BLEND_INV_SRC_ALPHA = 6,
269 D3D10_BLEND_DEST_ALPHA = 7,
270 D3D10_BLEND_INV_DEST_ALPHA = 8,
271 D3D10_BLEND_DEST_COLOR = 9,
272 D3D10_BLEND_INV_DEST_COLOR = 10,
273 D3D10_BLEND_SRC_ALPHA_SAT = 11,
274 D3D10_BLEND_BLEND_FACTOR = 14,
275 D3D10_BLEND_INV_BLEND_FACTOR = 15,
276 D3D10_BLEND_SRC1_COLOR = 16,
277 D3D10_BLEND_INV_SRC1_COLOR = 17,
278 D3D10_BLEND_SRC1_ALPHA = 18,
279 D3D10_BLEND_INV_SRC1_ALPHA = 19
280 } D3D10_BLEND;
282 typedef enum D3D10_BLEND_OP {
283 D3D10_BLEND_OP_ADD = 1,
284 D3D10_BLEND_OP_SUBTRACT,
285 D3D10_BLEND_OP_REV_SUBTRACT,
286 D3D10_BLEND_OP_MIN,
287 D3D10_BLEND_OP_MAX,
288 } D3D10_BLEND_OP;
290 typedef struct D3D10_BLEND_DESC {
291 BOOL AlphaToCoverageEnable;
292 BOOL BlendEnable[8];
293 D3D10_BLEND SrcBlend;
294 D3D10_BLEND DestBlend;
295 D3D10_BLEND_OP BlendOp;
296 D3D10_BLEND SrcBlendAlpha;
297 D3D10_BLEND DestBlendAlpha;
298 D3D10_BLEND_OP BlendOpAlpha;
299 UINT8 RenderTargetWriteMask[8];
300 } D3D10_BLEND_DESC;
302 typedef enum D3D10_DEPTH_WRITE_MASK {
303 D3D10_DEPTH_WRITE_MASK_ZERO,
304 D3D10_DEPTH_WRITE_MASK_ALL,
305 } D3D10_DEPTH_WRITE_MASK;
307 typedef enum D3D10_COMPARISON_FUNC {
308 D3D10_COMPARISON_NEVER = 1,
309 D3D10_COMPARISON_LESS,
310 D3D10_COMPARISON_EQUAL,
311 D3D10_COMPARISON_LESS_EQUAL,
312 D3D10_COMPARISON_GREATER,
313 D3D10_COMPARISON_NOT_EQUAL,
314 D3D10_COMPARISON_GREATER_EQUAL,
315 D3D10_COMPARISON_ALWAYS,
316 } D3D10_COMPARISON_FUNC;
318 typedef enum D3D10_STENCIL_OP {
319 D3D10_STENCIL_OP_KEEP = 1,
320 D3D10_STENCIL_OP_ZERO,
321 D3D10_STENCIL_OP_REPLACE,
322 D3D10_STENCIL_OP_INCR_SAT,
323 D3D10_STENCIL_OP_DECR_SAT,
324 D3D10_STENCIL_OP_INVERT,
325 D3D10_STENCIL_OP_INCR,
326 D3D10_STENCIL_OP_DECR,
327 } D3D10_STENCIL_OP;
329 typedef struct D3D10_DEPTH_STENCILOP_DESC {
330 D3D10_STENCIL_OP StencilFailOp;
331 D3D10_STENCIL_OP StencilDepthFailOp;
332 D3D10_STENCIL_OP StencilPassOp;
333 D3D10_COMPARISON_FUNC StencilFunc;
334 } D3D10_DEPTH_STENCILOP_DESC;
336 typedef struct D3D10_DEPTH_STENCIL_DESC {
337 BOOL DepthEnable;
338 D3D10_DEPTH_WRITE_MASK DepthWriteMask;
339 D3D10_COMPARISON_FUNC DepthFunc;
340 BOOL StencilEnable;
341 UINT8 StencilReadMask;
342 UINT8 StencilWriteMask;
343 D3D10_DEPTH_STENCILOP_DESC FrontFace;
344 D3D10_DEPTH_STENCILOP_DESC BackFace;
345 } D3D10_DEPTH_STENCIL_DESC;
347 typedef enum D3D10_FILL_MODE {
348 D3D10_FILL_WIREFRAME = 2,
349 D3D10_FILL_SOLID,
350 } D3D10_FILL_MODE;
352 typedef enum D3D10_CULL_MODE {
353 D3D10_CULL_NONE = 1,
354 D3D10_CULL_FRONT,
355 D3D10_CULL_BACK,
356 } D3D10_CULL_MODE;
358 typedef struct D3D10_RASTERIZER_DESC {
359 D3D10_FILL_MODE FillMode;
360 D3D10_CULL_MODE CullMode;
361 BOOL FrontCounterClockwise;
362 INT DepthBias;
363 FLOAT DepthBiasClamp;
364 FLOAT SlopeScaledDepthBias;
365 BOOL DepthClipEnable;
366 BOOL ScissorEnable;
367 BOOL MultisampleEnable;
368 BOOL AntialiasedLineEnable;
369 } D3D10_RASTERIZER_DESC;
371 typedef enum D3D10_FILTER {
372 D3D10_FILTER_MIN_MAG_MIP_POINT = 0,
373 D3D10_FILTER_MIN_MAG_POINT_MIP_LINEAR = 0x1,
374 D3D10_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x4,
375 D3D10_FILTER_MIN_POINT_MAG_MIP_LINEAR = 0x5,
376 D3D10_FILTER_MIN_LINEAR_MAG_MIP_POINT = 0x10,
377 D3D10_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x11,
378 D3D10_FILTER_MIN_MAG_LINEAR_MIP_POINT = 0x14,
379 D3D10_FILTER_MIN_MAG_MIP_LINEAR = 0x15,
380 D3D10_FILTER_ANISOTROPIC = 0x55,
381 D3D10_FILTER_COMPARISON_MIN_MAG_MIP_POINT = 0x80,
382 D3D10_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR = 0x81,
383 D3D10_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x84,
384 D3D10_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR = 0x85,
385 D3D10_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT = 0x90,
386 D3D10_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x91,
387 D3D10_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT = 0x94,
388 D3D10_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR = 0x95,
389 D3D10_FILTER_COMPARISON_ANISOTROPIC = 0xd5,
390 D3D10_FILTER_TEXT_1BIT = 0x80000000
391 } D3D10_FILTER;
393 typedef enum D3D10_TEXTURE_ADDRESS_MODE {
394 D3D10_TEXTURE_ADDRESS_WRAP = 1,
395 D3D10_TEXTURE_ADDRESS_MIRROR,
396 D3D10_TEXTURE_ADDRESS_CLAMP,
397 D3D10_TEXTURE_ADDRESS_BORDER,
398 D3D10_TEXTURE_ADDRESS_MIRROR_ONCE,
399 } D3D10_TEXTURE_ADDRESS_MODE;
401 typedef struct D3D10_SAMPLER_DESC {
402 D3D10_FILTER Filter;
403 D3D10_TEXTURE_ADDRESS_MODE AddressU;
404 D3D10_TEXTURE_ADDRESS_MODE AddressV;
405 D3D10_TEXTURE_ADDRESS_MODE AddressW;
406 FLOAT MipLODBias;
407 UINT MaxAnisotropy;
408 D3D10_COMPARISON_FUNC ComparisonFunc;
409 FLOAT BorderColor[4];
410 FLOAT MinLOD;
411 FLOAT MaxLOD;
412 } D3D10_SAMPLER_DESC;
414 typedef enum D3D10_COUNTER {
415 D3D10_COUNTER_GPU_IDLE,
416 D3D10_COUNTER_VERTEX_PROCESSING,
417 D3D10_COUNTER_GEOMETRY_PROCESSING,
418 D3D10_COUNTER_PIXEL_PROCESSING,
419 D3D10_COUNTER_OTHER_GPU_PROCESSING,
420 D3D10_COUNTER_HOST_ADAPTER_BANDWIDTH_UTILIZATION,
421 D3D10_COUNTER_LOCAL_VIDMEM_BANDWIDTH_UTILIZATION,
422 D3D10_COUNTER_VERTEX_THROUGHPUT_UTILIZATION,
423 D3D10_COUNTER_TRIANGLE_SETUP_THROUGHPUT_UTILIZATION,
424 D3D10_COUNTER_FILLRATE_THROUGHPUT_UTILIZATION,
425 D3D10_COUNTER_VS_MEMORY_LIMITED,
426 D3D10_COUNTER_VS_COMPUTATION_LIMITED,
427 D3D10_COUNTER_GS_MEMORY_LIMITED,
428 D3D10_COUNTER_GS_COMPUTATION_LIMITED,
429 D3D10_COUNTER_PS_MEMORY_LIMITED,
430 D3D10_COUNTER_PS_COMPUTATION_LIMITED,
431 D3D10_COUNTER_POST_TRANSFORM_CACHE_HIT_RATE,
432 D3D10_COUNTER_TEXTURE_CACHE_HIT_RATE,
433 D3D10_COUNTER_DEVICE_DEPENDENT_0 = 0x40000000
434 } D3D10_COUNTER;
436 typedef struct D3D10_COUNTER_DESC {
437 D3D10_COUNTER Counter;
438 UINT MiscFlags;
439 } D3D10_COUNTER_DESC;
441 typedef enum D3D10_COUNTER_TYPE {
442 D3D10_COUNTER_TYPE_FLOAT32,
443 D3D10_COUNTER_TYPE_UINT16,
444 D3D10_COUNTER_TYPE_UINT32,
445 D3D10_COUNTER_TYPE_UINT64,
446 } D3D10_COUNTER_TYPE;
448 typedef struct D3D10_COUNTER_INFO {
449 D3D10_COUNTER LastDeviceDependentCounter;
450 UINT NumSimultaneousCounters;
451 UINT8 NumDetectableParallelUnits;
452 } D3D10_COUNTER_INFO;
454 typedef enum D3D10_RESOURCE_DIMENSION {
455 D3D10_RESOURCE_DIMENSION_UNKNOWN,
456 D3D10_RESOURCE_DIMENSION_BUFFER,
457 D3D10_RESOURCE_DIMENSION_TEXTURE1D,
458 D3D10_RESOURCE_DIMENSION_TEXTURE2D,
459 D3D10_RESOURCE_DIMENSION_TEXTURE3D,
460 } D3D10_RESOURCE_DIMENSION;
462 typedef enum D3D10_USAGE {
463 D3D10_USAGE_DEFAULT,
464 D3D10_USAGE_IMMUTABLE,
465 D3D10_USAGE_DYNAMIC,
466 D3D10_USAGE_STAGING,
467 } D3D10_USAGE;
469 typedef enum D3D10_BIND_FLAG {
470 D3D10_BIND_VERTEX_BUFFER = 0x1,
471 D3D10_BIND_INDEX_BUFFER = 0x2,
472 D3D10_BIND_CONSTANT_BUFFER = 0x4,
473 D3D10_BIND_SHADER_RESOURCE = 0x8,
474 D3D10_BIND_STREAM_OUTPUT = 0x10,
475 D3D10_BIND_RENDER_TARGET = 0x20,
476 D3D10_BIND_DEPTH_STENCIL = 0x40
477 } D3D10_BIND_FLAG;
479 typedef struct D3D10_BUFFER_DESC {
480 UINT ByteWidth;
481 D3D10_USAGE Usage;
482 UINT BindFlags;
483 UINT CPUAccessFlags;
484 UINT MiscFlags;
485 } D3D10_BUFFER_DESC;
487 cpp_quote("#if !defined(D3D10_NO_HELPERS) && defined(__cplusplus)")
488 cpp_quote("struct CD3D10_BUFFER_DESC : public D3D10_BUFFER_DESC {")
489 cpp_quote(" CD3D10_BUFFER_DESC() {}" )
490 cpp_quote(" explicit CD3D10_BUFFER_DESC(const D3D10_BUFFER_DESC &o) : D3D10_BUFFER_DESC(o) {}")
491 cpp_quote(" explicit CD3D10_BUFFER_DESC(UINT byteWidth, UINT bindFlags, D3D10_USAGE usage = D3D10_USAGE_DEFAULT, UINT cpuaccessFlags = 0, UINT miscFlags = 0 ) {")
492 cpp_quote(" ByteWidth = byteWidth;")
493 cpp_quote(" Usage = usage;")
494 cpp_quote(" BindFlags = bindFlags;")
495 cpp_quote(" CPUAccessFlags = cpuaccessFlags;")
496 cpp_quote(" MiscFlags = miscFlags;")
497 cpp_quote(" }")
498 cpp_quote(" ~CD3D10_BUFFER_DESC() {}")
499 cpp_quote(" operator const D3D10_BUFFER_DESC&() const {")
500 cpp_quote(" return *this;")
501 cpp_quote(" }")
502 cpp_quote("};")
503 cpp_quote("#endif")
505 typedef enum D3D10_MAP {
506 D3D10_MAP_READ = 1,
507 D3D10_MAP_WRITE,
508 D3D10_MAP_READ_WRITE,
509 D3D10_MAP_WRITE_DISCARD,
510 D3D10_MAP_WRITE_NO_OVERWRITE,
511 } D3D10_MAP;
513 typedef struct D3D10_TEXTURE1D_DESC {
514 UINT Width;
515 UINT MipLevels;
516 UINT ArraySize;
517 DXGI_FORMAT Format;
518 D3D10_USAGE Usage;
519 UINT BindFlags;
520 UINT CPUAccessFlags;
521 UINT MiscFlags;
522 } D3D10_TEXTURE1D_DESC;
524 cpp_quote("#if !defined(D3D10_NO_HELPERS) && defined(__cplusplus)")
525 cpp_quote("struct CD3D10_TEXTURE1D_DESC : public D3D10_TEXTURE1D_DESC {")
526 cpp_quote(" CD3D10_TEXTURE1D_DESC() {}")
527 cpp_quote(" explicit CD3D10_TEXTURE1D_DESC(const D3D10_TEXTURE1D_DESC &o) : D3D10_TEXTURE1D_DESC(o) {}")
528 cpp_quote(" explicit CD3D10_TEXTURE1D_DESC(DXGI_FORMAT format, UINT width, UINT arraySize = 1, UINT mipLevels = 0,")
529 cpp_quote(" UINT bindFlags = D3D10_BIND_SHADER_RESOURCE, D3D10_USAGE usage = D3D10_USAGE_DEFAULT, UINT cpuaccessFlags = 0,")
530 cpp_quote(" UINT miscFlags = 0) {")
531 cpp_quote(" Width = width;")
532 cpp_quote(" MipLevels = mipLevels;")
533 cpp_quote(" ArraySize = arraySize;")
534 cpp_quote(" Format = format;")
535 cpp_quote(" Usage = usage;")
536 cpp_quote(" BindFlags = bindFlags;")
537 cpp_quote(" CPUAccessFlags = cpuaccessFlags;")
538 cpp_quote(" MiscFlags = miscFlags;")
539 cpp_quote(" }")
540 cpp_quote(" ~CD3D10_TEXTURE1D_DESC() {}")
541 cpp_quote(" operator const D3D10_TEXTURE1D_DESC&() const {")
542 cpp_quote(" return *this;")
543 cpp_quote(" }")
544 cpp_quote("};")
545 cpp_quote("#endif")
547 typedef struct D3D10_TEXTURE2D_DESC {
548 UINT Width;
549 UINT Height;
550 UINT MipLevels;
551 UINT ArraySize;
552 DXGI_FORMAT Format;
553 DXGI_SAMPLE_DESC SampleDesc;
554 D3D10_USAGE Usage;
555 UINT BindFlags;
556 UINT CPUAccessFlags;
557 UINT MiscFlags;
558 } D3D10_TEXTURE2D_DESC;
560 cpp_quote("#if !defined(D3D10_NO_HELPERS) && defined(__cplusplus)")
561 cpp_quote("struct CD3D10_TEXTURE2D_DESC : public D3D10_TEXTURE2D_DESC {")
562 cpp_quote(" CD3D10_TEXTURE2D_DESC() {}" )
563 cpp_quote(" explicit CD3D10_TEXTURE2D_DESC(const D3D10_TEXTURE2D_DESC &o) : D3D10_TEXTURE2D_DESC(o) {}")
564 cpp_quote(" explicit CD3D10_TEXTURE2D_DESC(DXGI_FORMAT format, UINT width, UINT height,")
565 cpp_quote(" UINT arraySize = 1,")
566 cpp_quote(" UINT mipLevels = 0,")
567 cpp_quote(" UINT bindFlags = D3D10_BIND_SHADER_RESOURCE,")
568 cpp_quote(" D3D10_USAGE usage = D3D10_USAGE_DEFAULT,")
569 cpp_quote(" UINT cpuaccessFlags = 0,")
570 cpp_quote(" UINT sampleCount = 1,")
571 cpp_quote(" UINT sampleQuality = 0,")
572 cpp_quote(" UINT miscFlags = 0) {")
573 cpp_quote(" Width = width;" )
574 cpp_quote(" Height = height;" )
575 cpp_quote(" MipLevels = mipLevels;" )
576 cpp_quote(" ArraySize = arraySize;" )
577 cpp_quote(" Format = format;" )
578 cpp_quote(" SampleDesc.Count = sampleCount;" )
579 cpp_quote(" SampleDesc.Quality = sampleQuality;" )
580 cpp_quote(" Usage = usage;" )
581 cpp_quote(" BindFlags = bindFlags;" )
582 cpp_quote(" CPUAccessFlags = cpuaccessFlags;" )
583 cpp_quote(" MiscFlags = miscFlags;" )
584 cpp_quote(" }")
585 cpp_quote(" ~CD3D10_TEXTURE2D_DESC() {}")
586 cpp_quote(" operator const D3D10_TEXTURE2D_DESC&() const {")
587 cpp_quote(" return *this;")
588 cpp_quote(" }")
589 cpp_quote("};")
590 cpp_quote("#endif")
592 typedef struct D3D10_TEXTURE3D_DESC {
593 UINT Width;
594 UINT Height;
595 UINT Depth;
596 UINT MipLevels;
597 DXGI_FORMAT Format;
598 D3D10_USAGE Usage;
599 UINT BindFlags;
600 UINT CPUAccessFlags;
601 UINT MiscFlags;
602 } D3D10_TEXTURE3D_DESC;
604 typedef enum D3D10_DSV_DIMENSION
606 D3D10_DSV_DIMENSION_UNKNOWN,
607 D3D10_DSV_DIMENSION_TEXTURE1D,
608 D3D10_DSV_DIMENSION_TEXTURE1DARRAY,
609 D3D10_DSV_DIMENSION_TEXTURE2D,
610 D3D10_DSV_DIMENSION_TEXTURE2DARRAY,
611 D3D10_DSV_DIMENSION_TEXTURE2DMS,
612 D3D10_DSV_DIMENSION_TEXTURE2DMSARRAY,
613 } D3D10_DSV_DIMENSION;
615 typedef struct D3D10_TEX1D_DSV {
616 UINT MipSlice;
617 } D3D10_TEX1D_DSV;
619 typedef struct D3D10_TEX1D_ARRAY_DSV {
620 UINT MipSlice;
621 UINT FirstArraySlice;
622 UINT ArraySize;
623 } D3D10_TEX1D_ARRAY_DSV;
625 typedef struct D3D10_TEX2D_DSV {
626 UINT MipSlice;
627 } D3D10_TEX2D_DSV;
629 typedef struct D3D10_TEX2D_ARRAY_DSV {
630 UINT MipSlice;
631 UINT FirstArraySlice;
632 UINT ArraySize;
633 } D3D10_TEX2D_ARRAY_DSV;
635 typedef struct D3D10_TEX2DMS_DSV {
636 UINT UnusedField_NothingToDefine;
637 } D3D10_TEX2DMS_DSV;
639 typedef struct D3D10_TEX2DMS_ARRAY_DSV {
640 UINT FirstArraySlice;
641 UINT ArraySize;
642 } D3D10_TEX2DMS_ARRAY_DSV;
644 typedef struct D3D10_DEPTH_STENCIL_VIEW_DESC {
645 DXGI_FORMAT Format;
646 D3D10_DSV_DIMENSION ViewDimension;
647 union {
648 D3D10_TEX1D_DSV Texture1D;
649 D3D10_TEX1D_ARRAY_DSV Texture1DArray;
650 D3D10_TEX2D_DSV Texture2D;
651 D3D10_TEX2D_ARRAY_DSV Texture2DArray;
652 D3D10_TEX2DMS_DSV Texture2DMS;
653 D3D10_TEX2DMS_ARRAY_DSV Texture2DMSArray;
655 } D3D10_DEPTH_STENCIL_VIEW_DESC;
657 typedef enum D3D10_RTV_DIMENSION {
658 D3D10_RTV_DIMENSION_UNKNOWN,
659 D3D10_RTV_DIMENSION_BUFFER,
660 D3D10_RTV_DIMENSION_TEXTURE1D,
661 D3D10_RTV_DIMENSION_TEXTURE1DARRAY,
662 D3D10_RTV_DIMENSION_TEXTURE2D,
663 D3D10_RTV_DIMENSION_TEXTURE2DARRAY,
664 D3D10_RTV_DIMENSION_TEXTURE2DMS,
665 D3D10_RTV_DIMENSION_TEXTURE2DMSARRAY,
666 D3D10_RTV_DIMENSION_TEXTURE3D,
667 } D3D10_RTV_DIMENSION;
669 typedef struct D3D10_BUFFER_RTV {
670 union {
671 UINT FirstElement;
672 UINT ElementOffset;
674 union {
675 UINT NumElements;
676 UINT ElementWidth;
678 } D3D10_BUFFER_RTV;
680 typedef struct D3D10_TEX1D_RTV {
681 UINT MipSlice;
682 } D3D10_TEX1D_RTV;
684 typedef struct D3D10_TEX1D_ARRAY_RTV {
685 UINT MipSlice;
686 UINT FirstArraySlice;
687 UINT ArraySize;
688 } D3D10_TEX1D_ARRAY_RTV;
690 typedef struct D3D10_TEX2D_RTV {
691 UINT MipSlice;
692 } D3D10_TEX2D_RTV;
694 typedef struct D3D10_TEX2D_ARRAY_RTV {
695 UINT MipSlice;
696 UINT FirstArraySlice;
697 UINT ArraySize;
698 } D3D10_TEX2D_ARRAY_RTV;
700 typedef struct D3D10_TEX2DMS_RTV {
701 UINT UnusedField_NothingToDefine;
702 } D3D10_TEX2DMS_RTV;
704 typedef struct D3D10_TEX2DMS_ARRAY_RTV {
705 UINT FirstArraySlice;
706 UINT ArraySize;
707 } D3D10_TEX2DMS_ARRAY_RTV;
709 typedef struct D3D10_TEX3D_RTV {
710 UINT MipSlice;
711 UINT FirstWSlice;
712 UINT WSize;
713 } D3D10_TEX3D_RTV;
715 typedef struct D3D10_RENDER_TARGET_VIEW_DESC {
716 DXGI_FORMAT Format;
717 D3D10_RTV_DIMENSION ViewDimension;
718 union {
719 D3D10_BUFFER_RTV Buffer;
720 D3D10_TEX1D_RTV Texture1D;
721 D3D10_TEX1D_ARRAY_RTV Texture1DArray;
722 D3D10_TEX2D_RTV Texture2D;
723 D3D10_TEX2D_ARRAY_RTV Texture2DArray;
724 D3D10_TEX2DMS_RTV Texture2DMS;
725 D3D10_TEX2DMS_ARRAY_RTV Texture2DMSArray;
726 D3D10_TEX3D_RTV Texture3D;
728 } D3D10_RENDER_TARGET_VIEW_DESC;
730 typedef D3D_SRV_DIMENSION D3D10_SRV_DIMENSION;
732 typedef struct D3D10_BUFFER_SRV {
733 union {
734 UINT FirstElement;
735 UINT ElementOffset;
737 union {
738 UINT NumElements;
739 UINT ElementWidth;
741 } D3D10_BUFFER_SRV;
743 typedef struct D3D10_TEX1D_SRV {
744 UINT MostDetailedMip;
745 UINT MipLevels;
746 } D3D10_TEX1D_SRV;
748 typedef struct D3D10_TEX1D_ARRAY_SRV {
749 UINT MostDetailedMip;
750 UINT MipLevels;
751 UINT FirstArraySlice;
752 UINT ArraySize;
753 } D3D10_TEX1D_ARRAY_SRV;
755 typedef struct D3D10_TEX2D_SRV {
756 UINT MostDetailedMip;
757 UINT MipLevels;
758 } D3D10_TEX2D_SRV;
760 typedef struct D3D10_TEX2D_ARRAY_SRV {
761 UINT MostDetailedMip;
762 UINT MipLevels;
763 UINT FirstArraySlice;
764 UINT ArraySize;
765 } D3D10_TEX2D_ARRAY_SRV;
767 typedef struct D3D10_TEX2DMS_SRV {
768 UINT UnusedField_NothingToDefine;
769 } D3D10_TEX2DMS_SRV;
771 typedef struct D3D10_TEX2DMS_ARRAY_SRV {
772 UINT FirstArraySlice;
773 UINT ArraySize;
774 } D3D10_TEX2DMS_ARRAY_SRV;
776 typedef struct D3D10_TEX3D_SRV {
777 UINT MostDetailedMip;
778 UINT MipLevels;
779 } D3D10_TEX3D_SRV;
781 typedef struct D3D10_TEXCUBE_SRV {
782 UINT MostDetailedMip;
783 UINT MipLevels;
784 } D3D10_TEXCUBE_SRV;
786 typedef struct D3D10_SHADER_RESOURCE_VIEW_DESC {
787 DXGI_FORMAT Format;
788 D3D10_SRV_DIMENSION ViewDimension;
789 union {
790 D3D10_BUFFER_SRV Buffer;
791 D3D10_TEX1D_SRV Texture1D;
792 D3D10_TEX1D_ARRAY_SRV Texture1DArray;
793 D3D10_TEX2D_SRV Texture2D;
794 D3D10_TEX2D_ARRAY_SRV Texture2DArray;
795 D3D10_TEX2DMS_SRV Texture2DMS;
796 D3D10_TEX2DMS_ARRAY_SRV Texture2DMSArray;
797 D3D10_TEX3D_SRV Texture3D;
798 D3D10_TEXCUBE_SRV TextureCube;
800 } D3D10_SHADER_RESOURCE_VIEW_DESC;
802 typedef struct D3D10_BOX {
803 UINT left;
804 UINT top;
805 UINT front;
806 UINT right;
807 UINT bottom;
808 UINT back;
809 } D3D10_BOX;
811 typedef struct D3D10_SUBRESOURCE_DATA {
812 const void *pSysMem;
813 UINT SysMemPitch;
814 UINT SysMemSlicePitch;
815 } D3D10_SUBRESOURCE_DATA;
817 typedef struct D3D10_SO_DECLARATION_ENTRY
819 const char *SemanticName;
820 UINT SemanticIndex;
821 BYTE StartComponent;
822 BYTE ComponentCount;
823 BYTE OutputSlot;
824 } D3D10_SO_DECLARATION_ENTRY;
826 typedef enum D3D10_INPUT_CLASSIFICATION {
827 D3D10_INPUT_PER_VERTEX_DATA,
828 D3D10_INPUT_PER_INSTANCE_DATA,
829 } D3D10_INPUT_CLASSIFICATION;
831 typedef struct D3D10_INPUT_ELEMENT_DESC
833 const char *SemanticName;
834 UINT SemanticIndex;
835 DXGI_FORMAT Format;
836 UINT InputSlot;
837 UINT AlignedByteOffset;
838 D3D10_INPUT_CLASSIFICATION InputSlotClass;
839 UINT InstanceDataStepRate;
840 } D3D10_INPUT_ELEMENT_DESC;
842 typedef enum D3D10_QUERY {
843 D3D10_QUERY_EVENT,
844 D3D10_QUERY_OCCLUSION,
845 D3D10_QUERY_TIMESTAMP,
846 D3D10_QUERY_TIMESTAMP_DISJOINT,
847 D3D10_QUERY_PIPELINE_STATISTICS,
848 D3D10_QUERY_OCCLUSION_PREDICATE,
849 D3D10_QUERY_SO_STATISTICS,
850 D3D10_QUERY_SO_OVERFLOW_PREDICATE,
851 } D3D10_QUERY;
853 typedef struct D3D10_QUERY_DESC {
854 D3D10_QUERY Query;
855 UINT MiscFlags;
856 } D3D10_QUERY_DESC;
858 typedef D3D_PRIMITIVE_TOPOLOGY D3D10_PRIMITIVE_TOPOLOGY;
860 typedef D3D_PRIMITIVE D3D10_PRIMITIVE;
862 typedef RECT D3D10_RECT;
864 typedef struct D3D10_VIEWPORT {
865 INT TopLeftX;
866 INT TopLeftY;
867 UINT Width;
868 UINT Height;
869 FLOAT MinDepth;
870 FLOAT MaxDepth;
871 } D3D10_VIEWPORT;
873 typedef struct D3D10_MAPPED_TEXTURE2D {
874 void *pData;
875 UINT RowPitch;
876 } D3D10_MAPPED_TEXTURE2D;
878 typedef struct D3D10_MAPPED_TEXTURE3D {
879 void *pData;
880 UINT RowPitch;
881 UINT DepthPitch;
882 } D3D10_MAPPED_TEXTURE3D;
884 typedef enum D3D10_CPU_ACCESS_FLAG {
885 D3D10_CPU_ACCESS_WRITE = 0x10000,
886 D3D10_CPU_ACCESS_READ = 0x20000
887 } D3D10_CPU_ACCESS_FLAG;
889 typedef enum D3D10_RESOURCE_MISC_FLAG {
890 D3D10_RESOURCE_MISC_GENERATE_MIPS = 0x0001,
891 D3D10_RESOURCE_MISC_SHARED = 0x0002,
892 D3D10_RESOURCE_MISC_TEXTURECUBE = 0x0004,
893 D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX = 0x0010,
894 D3D10_RESOURCE_MISC_GDI_COMPATIBLE = 0x0020
895 } D3D10_RESOURCE_MISC_FLAG;
897 typedef enum D3D10_MAP_FLAG {
898 D3D10_MAP_FLAG_DO_NOT_WAIT = 0x100000,
899 } D3D10_MAP_FLAG;
901 typedef enum D3D10_RAISE_FLAG {
902 D3D10_RAISE_FLAG_DRIVER_INTERNAL_ERROR = 0x1,
903 } D3D10_RAISE_FLAG;
905 typedef enum D3D10_CLEAR_FLAG {
906 D3D10_CLEAR_DEPTH = 0x1,
907 D3D10_CLEAR_STENCIL = 0x2
908 } D3D10_CLEAR_FLAG;
910 typedef enum D3D10_COLOR_WRITE_ENABLE {
911 D3D10_COLOR_WRITE_ENABLE_RED = 0x1,
912 D3D10_COLOR_WRITE_ENABLE_GREEN = 0x2,
913 D3D10_COLOR_WRITE_ENABLE_BLUE = 0x4,
914 D3D10_COLOR_WRITE_ENABLE_ALPHA = 0x8,
915 D3D10_COLOR_WRITE_ENABLE_ALL = (D3D10_COLOR_WRITE_ENABLE_RED | D3D10_COLOR_WRITE_ENABLE_GREEN |
916 D3D10_COLOR_WRITE_ENABLE_BLUE | D3D10_COLOR_WRITE_ENABLE_ALPHA)
917 } D3D10_COLOR_WRITE_ENABLE;
919 typedef enum D3D10_FORMAT_SUPPORT
921 D3D10_FORMAT_SUPPORT_BUFFER = 0x00000001,
922 D3D10_FORMAT_SUPPORT_IA_VERTEX_BUFFER = 0x00000002,
923 D3D10_FORMAT_SUPPORT_IA_INDEX_BUFFER = 0x00000004,
924 D3D10_FORMAT_SUPPORT_SO_BUFFER = 0x00000008,
925 D3D10_FORMAT_SUPPORT_TEXTURE1D = 0x00000010,
926 D3D10_FORMAT_SUPPORT_TEXTURE2D = 0x00000020,
927 D3D10_FORMAT_SUPPORT_TEXTURE3D = 0x00000040,
928 D3D10_FORMAT_SUPPORT_TEXTURECUBE = 0x00000080,
929 D3D10_FORMAT_SUPPORT_SHADER_LOAD = 0x00000100,
930 D3D10_FORMAT_SUPPORT_SHADER_SAMPLE = 0x00000200,
931 D3D10_FORMAT_SUPPORT_SHADER_SAMPLE_COMPARISON = 0x00000400,
932 D3D10_FORMAT_SUPPORT_SHADER_SAMPLE_MONO_TEXT = 0x00000800,
933 D3D10_FORMAT_SUPPORT_MIP = 0x00001000,
934 D3D10_FORMAT_SUPPORT_MIP_AUTOGEN = 0x00002000,
935 D3D10_FORMAT_SUPPORT_RENDER_TARGET = 0x00004000,
936 D3D10_FORMAT_SUPPORT_BLENDABLE = 0x00008000,
937 D3D10_FORMAT_SUPPORT_DEPTH_STENCIL = 0x00010000,
938 D3D10_FORMAT_SUPPORT_CPU_LOCKABLE = 0x00020000,
939 D3D10_FORMAT_SUPPORT_MULTISAMPLE_RESOLVE = 0x00040000,
940 D3D10_FORMAT_SUPPORT_DISPLAY = 0x00080000,
941 D3D10_FORMAT_SUPPORT_CAST_WITHIN_BIT_LAYOUT = 0x00100000,
942 D3D10_FORMAT_SUPPORT_MULTISAMPLE_RENDERTARGET = 0x00200000,
943 D3D10_FORMAT_SUPPORT_MULTISAMPLE_LOAD = 0x00400000,
944 D3D10_FORMAT_SUPPORT_SHADER_GATHER = 0x00800000,
945 D3D10_FORMAT_SUPPORT_BACK_BUFFER_CAST = 0x01000000,
946 } D3D10_FORMAT_SUPPORT;
948 typedef enum D3D10_TEXTURECUBE_FACE {
949 D3D10_TEXTURECUBE_FACE_POSITIVE_X,
950 D3D10_TEXTURECUBE_FACE_NEGATIVE_X,
951 D3D10_TEXTURECUBE_FACE_POSITIVE_Y,
952 D3D10_TEXTURECUBE_FACE_NEGATIVE_Y,
953 D3D10_TEXTURECUBE_FACE_POSITIVE_Z,
954 D3D10_TEXTURECUBE_FACE_NEGATIVE_Z,
955 } D3D10_TEXTURECUBE_FACE;
957 typedef enum D3D10_ASYNC_GETDATA_FLAG {
958 D3D10_ASYNC_GETDATA_DONOTFLUSH = 0x1,
959 } D3D10_ASYNC_GETDATA_FLAG;
961 typedef enum D3D10_FILTER_TYPE {
962 D3D10_FILTER_TYPE_POINT,
963 D3D10_FILTER_TYPE_LINEAR
964 } D3D10_FILTER_TYPE;
966 typedef enum D3D10_QUERY_MISC_FLAG {
967 D3D10_QUERY_MISC_PREDICATEHINT = 0x1
968 } D3D10_QUERY_MISC_FLAG;
970 typedef struct D3D10_QUERY_DATA_TIMESTAMP_DISJOINT {
971 UINT64 Frequency;
972 BOOL Disjoint;
973 } D3D10_QUERY_DATA_TIMESTAMP_DISJOINT;
975 typedef struct D3D10_QUERY_DATA_PIPELINE_STATISTICS {
976 UINT64 IAVertices;
977 UINT64 IAPrimitives;
978 UINT64 VSInvocations;
979 UINT64 GSInvocations;
980 UINT64 GSPrimitives;
981 UINT64 CInvocations;
982 UINT64 CPrimitives;
983 UINT64 PSInvocations;
984 } D3D10_QUERY_DATA_PIPELINE_STATISTICS;
986 typedef struct D3D10_QUERY_DATA_SO_STATISTICS {
987 UINT64 NumPrimitivesWritten;
988 UINT64 PrimitivesStorageNeeded;
989 } D3D10_QUERY_DATA_SO_STATISTICS;
991 typedef enum D3D10_CREATE_DEVICE_FLAG {
992 D3D10_CREATE_DEVICE_SINGLETHREADED = 0x1,
993 D3D10_CREATE_DEVICE_DEBUG = 0x2,
994 D3D10_CREATE_DEVICE_SWITCH_TO_REF = 0x4,
995 D3D10_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS = 0x8,
996 D3D10_CREATE_DEVICE_ALLOW_NULL_FROM_MAP = 0x10,
997 D3D10_CREATE_DEVICE_BGRA_SUPPORT = 0x20,
998 D3D10_CREATE_DEVICE_PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY = 0x80,
999 D3D10_CREATE_DEVICE_STRICT_VALIDATION = 0x200,
1000 D3D10_CREATE_DEVICE_DEBUGGABLE = 0x400,
1001 } D3D10_CREATE_DEVICE_FLAG;
1003 /* Core */
1005 interface ID3D10Device;
1008 object,
1009 local,
1010 uuid(9b7e4c00-342c-4106-a19f-4f2704f689f0)
1012 interface ID3D10DeviceChild : IUnknown
1014 void GetDevice(
1015 [out] ID3D10Device **ppDevice);
1016 HRESULT GetPrivateData(
1017 [in] REFGUID guid,
1018 [in, out] UINT *pDataSize,
1019 [out] void *pData);
1020 HRESULT SetPrivateData(
1021 [in] REFGUID guid,
1022 [in] UINT DataSize,
1023 [in] const void *pData);
1024 HRESULT SetPrivateDataInterface(
1025 [in] REFGUID guid,
1026 [in] const IUnknown *pData);
1029 /* Resource */
1032 object,
1033 local,
1034 uuid(9b7e4c01-342c-4106-a19f-4f2704f689f0)
1036 interface ID3D10Resource : ID3D10DeviceChild
1038 void GetType(
1039 [out] D3D10_RESOURCE_DIMENSION *rType);
1040 void SetEvictionPriority(
1041 [in] UINT EvictionPriority);
1042 UINT GetEvictionPriority();
1046 object,
1047 local,
1048 uuid(9b7e4c02-342c-4106-a19f-4f2704f689f0)
1050 interface ID3D10Buffer : ID3D10Resource
1052 HRESULT Map(
1053 [in] D3D10_MAP MapType,
1054 [in] UINT MapFlags,
1055 [out] void **ppData);
1056 void Unmap();
1057 void GetDesc(
1058 [out] D3D10_BUFFER_DESC *pDesc);
1062 object,
1063 local,
1064 uuid(9b7e4c03-342c-4106-a19f-4f2704f689F0)
1066 interface ID3D10Texture1D : ID3D10Resource
1068 HRESULT Map(
1069 [in] UINT Subresource,
1070 [in] D3D10_MAP MapType,
1071 [in] UINT MapFlags,
1072 [out] void **ppData);
1073 void Unmap(
1074 [in] UINT Subresource);
1075 void GetDesc(
1076 [out] D3D10_TEXTURE1D_DESC *pDesc);
1080 object,
1081 local,
1082 uuid(9b7e4c04-342c-4106-a19f-4f2704f689F0)
1084 interface ID3D10Texture2D : ID3D10Resource
1086 HRESULT Map(
1087 [in] UINT Subresource,
1088 [in] D3D10_MAP MapType,
1089 [in] UINT MapFlags,
1090 [out] D3D10_MAPPED_TEXTURE2D *pMappedTex2D);
1091 void Unmap(
1092 [in] UINT Subresource);
1093 void GetDesc(
1094 [out] D3D10_TEXTURE2D_DESC *pDesc);
1098 object,
1099 local,
1100 uuid(9b7e4c05-342c-4106-a19f-4f2704f689F0)
1102 interface ID3D10Texture3D : ID3D10Resource
1104 HRESULT Map(
1105 [in] UINT Subresource,
1106 [in] D3D10_MAP MapType,
1107 [in] UINT MapFlags,
1108 [out] D3D10_MAPPED_TEXTURE3D *pMappedTex3D);
1109 void Unmap(
1110 [in] UINT Subresource);
1111 void GetDesc(
1112 [out] D3D10_TEXTURE3D_DESC *pDesc);
1116 object,
1117 local,
1118 uuid(c902b03f-60a7-49ba-9936-2a3ab37a7e33)
1120 interface ID3D10View : ID3D10DeviceChild
1122 void GetResource(
1123 [out] ID3D10Resource **ppResource);
1127 object,
1128 local,
1129 uuid(9b7e4c09-342c-4106-a19f-4f2704f689f0)
1131 interface ID3D10DepthStencilView : ID3D10View
1133 void GetDesc(
1134 [out] D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc);
1139 object,
1140 local,
1141 uuid(9b7e4c08-342c-4106-a19f-4f2704f689f0)
1143 interface ID3D10RenderTargetView : ID3D10View
1145 void GetDesc(
1146 [out] D3D10_RENDER_TARGET_VIEW_DESC *pDesc);
1150 object,
1151 local,
1152 uuid(9b7e4c07-342c-4106-a19f-4f2704f689f0)
1154 interface ID3D10ShaderResourceView : ID3D10View
1156 void GetDesc(
1157 [out] D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc);
1160 /* Resource End */
1163 object,
1164 local,
1165 uuid(edad8d19-8a35-4d6d-8566-2ea276cde161)
1167 interface ID3D10BlendState : ID3D10DeviceChild
1169 void GetDesc(
1170 [out] D3D10_BLEND_DESC *pDesc);
1174 object,
1175 local,
1176 uuid(2b4b1cc8-a4ad-41f8-8322-ca86fc3ec675)
1178 interface ID3D10DepthStencilState : ID3D10DeviceChild
1180 void GetDesc(
1181 [out] D3D10_DEPTH_STENCIL_DESC *pDesc);
1185 object,
1186 local,
1187 uuid(6316be88-54cd-4040-ab44-20461bc81f68)
1189 interface ID3D10GeometryShader : ID3D10DeviceChild
1194 object,
1195 local,
1196 uuid(9b7e4c0b-342c-4106-a19f-4f2704f689f0)
1198 interface ID3D10InputLayout : ID3D10DeviceChild
1203 object,
1204 local,
1205 uuid(4968b601-9d00-4cde-8346-8e7f675819b6)
1207 interface ID3D10PixelShader : ID3D10DeviceChild
1212 object,
1213 local,
1214 uuid(a2a07292-89af-4345-be2e-c53d9fbb6e9f)
1216 interface ID3D10RasterizerState : ID3D10DeviceChild
1218 void GetDesc(
1219 [out] D3D10_RASTERIZER_DESC *pDesc);
1223 object,
1224 local,
1225 uuid(9b7e4c0c-342c-4106-a19f-4f2704f689f0)
1227 interface ID3D10SamplerState : ID3D10DeviceChild
1229 void GetDesc(
1230 [out] D3D10_SAMPLER_DESC *pDesc);
1234 object,
1235 local,
1236 uuid(9b7e4c0a-342c-4106-a19f-4f2704f689f0)
1238 interface ID3D10VertexShader : ID3D10DeviceChild
1243 object,
1244 local,
1245 uuid(9b7e4c0d-342c-4106-a19f-4f2704f689f0)
1247 interface ID3D10Asynchronous : ID3D10DeviceChild
1249 void Begin();
1250 void End();
1251 HRESULT GetData(
1252 [out] void *pData,
1253 [in] UINT DataSize,
1254 [in] UINT GetDataFlags);
1255 UINT GetDataSize();
1259 object,
1260 local,
1261 uuid(9b7e4c11-342c-4106-a19f-4f2704f689f0)
1263 interface ID3D10Counter : ID3D10Asynchronous
1265 void GetDesc(
1266 [out] D3D10_COUNTER_DESC *pDesc);
1270 object,
1271 local,
1272 uuid(9b7e4C0e-342C-4106-a19f-4f2704f689f0)
1274 interface ID3D10Query : ID3D10Asynchronous
1276 void GetDesc(
1277 [out] D3D10_QUERY_DESC *pDesc);
1281 object,
1282 local,
1283 uuid(9b7e4c10-342c-4106-a19f-4f2704f689f0)
1285 interface ID3D10Predicate : ID3D10Query
1290 object,
1291 local,
1292 uuid(9b7e4c0f-342c-4106-a19f-4f2704f689f0)
1294 interface ID3D10Device : IUnknown
1296 void VSSetConstantBuffers(
1297 [in] UINT StartSlot,
1298 [in] UINT NumBuffers,
1299 [in] ID3D10Buffer *const *ppConstantBuffers);
1300 void PSSetShaderResources(
1301 [in] UINT StartSlot,
1302 [in] UINT NumViews,
1303 [in] ID3D10ShaderResourceView *const *ppShaderResourceViews);
1304 void PSSetShader(
1305 [in] ID3D10PixelShader *pPixelShader);
1306 void PSSetSamplers(
1307 [in] UINT StartSlot,
1308 [in] UINT NumSamplers,
1309 [in]ID3D10SamplerState *const *ppSamplers);
1310 void VSSetShader(
1311 [in] ID3D10VertexShader *pVertexShader);
1312 void DrawIndexed(
1313 [in] UINT IndexCount,
1314 [in] UINT StartIndexLocation,
1315 [in] INT BaseVertexLocation);
1316 void Draw(
1317 [in] UINT VertexCount,
1318 [in] UINT StartVertexLocation);
1319 void PSSetConstantBuffers(
1320 [in] UINT StartSlot,
1321 [in] UINT NumBuffers,
1322 [in] ID3D10Buffer *const *ppConstantBuffers);
1323 void IASetInputLayout(
1324 [in] ID3D10InputLayout *pInputLayout);
1325 void IASetVertexBuffers(
1326 [in] UINT StartSlot,
1327 [in] UINT NumBuffers,
1328 [in] ID3D10Buffer *const *ppVertexBuffers,
1329 [in] const UINT *pStrides,
1330 [in] const UINT *pOffsets);
1331 void IASetIndexBuffer(
1332 [in] ID3D10Buffer *pIndexBuffer,
1333 [in] DXGI_FORMAT Format,
1334 [in] UINT Offset);
1335 void DrawIndexedInstanced(
1336 [in] UINT IndexCountPerInstance,
1337 [in] UINT InstanceCount,
1338 [in] UINT StartIndexLocation,
1339 [in] INT BaseVertexLocation,
1340 [in] UINT StartInstanceLocation);
1341 void DrawInstanced(
1342 [in] UINT VertexCountPerInstance,
1343 [in] UINT InstanceCount,
1344 [in] UINT StartVertexLocation,
1345 [in] UINT StartInstanceLocation);
1346 void GSSetConstantBuffers(
1347 [in] UINT StartSlot,
1348 [in] UINT NumBuffers,
1349 [in] ID3D10Buffer *const *ppConstantBuffers);
1350 void GSSetShader(
1351 [in] ID3D10GeometryShader *pShader);
1352 void IASetPrimitiveTopology(
1353 [in] D3D10_PRIMITIVE_TOPOLOGY Topology);
1354 void VSSetShaderResources(
1355 [in] UINT StartSlot,
1356 [in] UINT NumViews,
1357 [in] ID3D10ShaderResourceView *const *ppShaderResourceViews);
1358 void VSSetSamplers(
1359 [in] UINT StartSlot,
1360 [in] UINT NumSamplers,
1361 [in] ID3D10SamplerState *const *ppSamplers);
1362 void SetPredication(
1363 [in] ID3D10Predicate *pPredicate,
1364 [in] BOOL PredicateValue);
1365 void GSSetShaderResources(
1366 [in] UINT StartSlot,
1367 [in] UINT NumViews,
1368 [in] ID3D10ShaderResourceView * const *ppShaderResourceViews);
1369 void GSSetSamplers(
1370 [in] UINT StartSlot,
1371 [in] UINT NumSamplers,
1372 [in] ID3D10SamplerState *const *ppSamplers);
1373 void OMSetRenderTargets(
1374 [in] UINT NumViews,
1375 [in] ID3D10RenderTargetView *const *ppRenderTargetViews,
1376 [in] ID3D10DepthStencilView *pDepthStencilView);
1377 void OMSetBlendState(
1378 [in] ID3D10BlendState *pBlendState,
1379 [in] const FLOAT BlendFactor[4],
1380 [in] UINT SampleMask);
1381 void OMSetDepthStencilState(
1382 [in] ID3D10DepthStencilState *pDepthStencilState,
1383 [in] UINT StencilRef);
1384 void SOSetTargets(
1385 [in] UINT NumBuffers,
1386 [in] ID3D10Buffer *const *ppSOTargets,
1387 [in] const UINT *pOffsets);
1388 void DrawAuto();
1389 void RSSetState(
1390 [in] ID3D10RasterizerState *pRasterizerState);
1391 void RSSetViewports(
1392 [in] UINT NumViewports,
1393 [in] const D3D10_VIEWPORT *pViewports);
1394 void RSSetScissorRects(
1395 [in] UINT NumRects,
1396 [in] const D3D10_RECT *pRects);
1397 void CopySubresourceRegion(
1398 [in] ID3D10Resource *pDstResource,
1399 [in] UINT DstSubresource,
1400 [in] UINT DstX,
1401 [in] UINT DstY,
1402 [in] UINT DstZ,
1403 [in] ID3D10Resource *pSrcResource,
1404 [in] UINT SrcSubresource,
1405 [in] const D3D10_BOX *pSrcBox);
1406 void CopyResource(
1407 [in] ID3D10Resource *pDstResource,
1408 [in] ID3D10Resource *pSrcResource);
1409 void UpdateSubresource(
1410 [in] ID3D10Resource *pDstResource,
1411 [in] UINT DstSubresource,
1412 [in] const D3D10_BOX *pDstBox,
1413 [in] const void *pSrcData,
1414 [in] UINT SrcRowPitch,
1415 [in] UINT SrcDepthPitch);
1416 void ClearRenderTargetView(
1417 [in] ID3D10RenderTargetView *pRenderTargetView,
1418 [in] const FLOAT ColorRGBA[4]);
1419 void ClearDepthStencilView(
1420 [in] ID3D10DepthStencilView *pDepthStencilView,
1421 [in] UINT ClearFlags,
1422 [in] FLOAT Depth,
1423 [in] UINT8 Stencil);
1424 void GenerateMips(
1425 [in] ID3D10ShaderResourceView *pShaderResourceView);
1426 void ResolveSubresource(
1427 [in] ID3D10Resource *pDstResource,
1428 [in] UINT DstSubresource,
1429 [in] ID3D10Resource *pSrcResource,
1430 [in] UINT SrcSubresource,
1431 [in] DXGI_FORMAT Format);
1432 void VSGetConstantBuffers(
1433 [in] UINT StartSlot,
1434 [in] UINT NumBuffers,
1435 [out] ID3D10Buffer **ppConstantBuffers);
1436 void PSGetShaderResources(
1437 [in] UINT StartSlot,
1438 [in] UINT NumViews,
1439 [out] ID3D10ShaderResourceView **ppShaderResourceViews);
1440 void PSGetShader(
1441 [out] ID3D10PixelShader **ppPixelShader);
1442 void PSGetSamplers(
1443 [in] UINT StartSlot,
1444 [in] UINT NumSamplers,
1445 [out] ID3D10SamplerState **ppSamplers);
1446 void VSGetShader(
1447 [out] ID3D10VertexShader **ppVertexShader);
1448 void PSGetConstantBuffers(
1449 [in] UINT StartSlot,
1450 [in] UINT NumBuffers,
1451 [out] ID3D10Buffer **ppConstantBuffers);
1452 void IAGetInputLayout(
1453 [out] ID3D10InputLayout **ppInputLayout);
1454 void IAGetVertexBuffers(
1455 [in] UINT StartSlot,
1456 [in] UINT NumBuffers,
1457 [out] ID3D10Buffer **ppVertexBuffers,
1458 [out] UINT *pStrides,
1459 [out] UINT *pOffsets);
1460 void IAGetIndexBuffer(
1461 [out] ID3D10Buffer **pIndexBuffer,
1462 [out] DXGI_FORMAT *Format,
1463 [out] UINT *Offset);
1464 void GSGetConstantBuffers(
1465 [in] UINT StartSlot,
1466 [in] UINT NumBuffers,
1467 [out] ID3D10Buffer **ppConstantBuffers);
1468 void GSGetShader(
1469 [out] ID3D10GeometryShader **ppGeometryShader);
1470 void IAGetPrimitiveTopology(
1471 [out] D3D10_PRIMITIVE_TOPOLOGY *pTopology);
1472 void VSGetShaderResources(
1473 [in] UINT StartSlot,
1474 [in] UINT NumViews,
1475 [out] ID3D10ShaderResourceView **ppShaderResourceViews);
1476 void VSGetSamplers(
1477 [in] UINT StartSlot,
1478 [in] UINT NumSamplers,
1479 [out] ID3D10SamplerState **ppSamplers);
1480 void GetPredication(
1481 [out] ID3D10Predicate **ppPredicate,
1482 [out] BOOL *pPredicateValue);
1483 void GSGetShaderResources(
1484 [in] UINT StartSlot,
1485 [in] UINT NumViews,
1486 [out] ID3D10ShaderResourceView **ppShaderResourceViews);
1487 void GSGetSamplers(
1488 [in] UINT StartSlot,
1489 [in] UINT NumSamplers,
1490 [out] ID3D10SamplerState **ppSamplers);
1491 void OMGetRenderTargets(
1492 [in] UINT NumViews,
1493 [out] ID3D10RenderTargetView **ppRenderTargetViews,
1494 [out] ID3D10DepthStencilView **ppDepthStencilView);
1495 void OMGetBlendState(
1496 [out] ID3D10BlendState **ppBlendState,
1497 [out] FLOAT BlendFactor[4],
1498 [out] UINT *pSampleMask);
1499 void OMGetDepthStencilState(
1500 [out] ID3D10DepthStencilState **ppDepthStencilState,
1501 [out] UINT *pStencilRef);
1502 void SOGetTargets(
1503 [in] UINT NumBuffers,
1504 [out] ID3D10Buffer **ppSOTargets,
1505 [out] UINT *pOffsets);
1506 void RSGetState(
1507 [out] ID3D10RasterizerState **ppRasterizerState);
1508 void RSGetViewports(
1509 [in, out] UINT *NumViewports,
1510 [out] D3D10_VIEWPORT *pViewports);
1511 void RSGetScissorRects(
1512 [in, out] UINT *NumRects,
1513 [out] D3D10_RECT *pRects);
1514 HRESULT GetDeviceRemovedReason();
1515 HRESULT SetExceptionMode(
1516 [in] UINT RaiseFlags);
1517 UINT GetExceptionMode();
1518 HRESULT GetPrivateData(
1519 [in] REFGUID guid,
1520 [in, out] UINT *pDataSize,
1521 [out] void *pData);
1522 HRESULT SetPrivateData(
1523 [in] REFGUID guid,
1524 [in] UINT DataSize,
1525 [in] const void *pData);
1526 HRESULT SetPrivateDataInterface(
1527 [in] REFGUID guid,
1528 [in] const IUnknown *pData);
1529 void ClearState();
1530 void Flush();
1531 HRESULT CreateBuffer(
1532 [in] const D3D10_BUFFER_DESC *pDesc,
1533 [in] const D3D10_SUBRESOURCE_DATA *pInitialData,
1534 [out] ID3D10Buffer **ppBuffer);
1535 HRESULT CreateTexture1D(
1536 [in] const D3D10_TEXTURE1D_DESC *pDesc,
1537 [in] const D3D10_SUBRESOURCE_DATA *pInitialData,
1538 [out] ID3D10Texture1D **ppTexture1D);
1539 HRESULT CreateTexture2D(
1540 [in] const D3D10_TEXTURE2D_DESC *pDesc,
1541 [in] const D3D10_SUBRESOURCE_DATA *pInitialData,
1542 [out] ID3D10Texture2D **ppTexture2D);
1543 HRESULT CreateTexture3D(
1544 [in] const D3D10_TEXTURE3D_DESC *pDesc,
1545 [in] const D3D10_SUBRESOURCE_DATA *pInitialData,
1546 [out] ID3D10Texture3D **ppTexture3D);
1547 HRESULT CreateShaderResourceView(
1548 [in] ID3D10Resource *pResource,
1549 [in] const D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc,
1550 [out] ID3D10ShaderResourceView **ppSRView);
1551 HRESULT CreateRenderTargetView(
1552 [in] ID3D10Resource *pResource,
1553 [in] const D3D10_RENDER_TARGET_VIEW_DESC *pDesc,
1554 [out] ID3D10RenderTargetView **ppRTView);
1555 HRESULT CreateDepthStencilView(
1556 [in] ID3D10Resource *pResource,
1557 [in] const D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc,
1558 [out] ID3D10DepthStencilView **ppDepthStencilView);
1559 HRESULT CreateInputLayout(
1560 [in] const D3D10_INPUT_ELEMENT_DESC *pInputElementDescs,
1561 [in] UINT NumElements,
1562 [in] const void *pShaderBytecodeWithInputSignature,
1563 [in] SIZE_T BytecodeLength,
1564 [out] ID3D10InputLayout **ppInputLayout);
1565 HRESULT CreateVertexShader(
1566 [in] const void *pShaderBytecode,
1567 [in] SIZE_T BytecodeLength,
1568 [out] ID3D10VertexShader **ppVertexShader);
1569 HRESULT CreateGeometryShader(
1570 [in] const void *pShaderBytecode,
1571 [in] SIZE_T BytecodeLength,
1572 [out] ID3D10GeometryShader **ppGeometryShader);
1573 HRESULT CreateGeometryShaderWithStreamOutput(
1574 [in] const void *pShaderBytecode,
1575 [in] SIZE_T BytecodeLength,
1576 [in] const D3D10_SO_DECLARATION_ENTRY *pSODeclaration,
1577 [in] UINT NumEntries,
1578 [in] UINT OutputStreamStride,
1579 [out] ID3D10GeometryShader **ppGeometryShader);
1580 HRESULT CreatePixelShader(
1581 [in] const void *pShaderBytecode,
1582 [in] SIZE_T BytecodeLength,
1583 [out] ID3D10PixelShader **ppPixelShader);
1584 HRESULT CreateBlendState(
1585 [in] const D3D10_BLEND_DESC *pBlendStateDesc,
1586 [out] ID3D10BlendState **ppBlendState);
1587 HRESULT CreateDepthStencilState(
1588 [in] const D3D10_DEPTH_STENCIL_DESC *pDepthStencilDesc,
1589 [out] ID3D10DepthStencilState **ppDepthStencilState);
1590 HRESULT CreateRasterizerState(
1591 [in] const D3D10_RASTERIZER_DESC *pRasterizerDesc,
1592 [out] ID3D10RasterizerState **ppRasterizerState);
1593 HRESULT CreateSamplerState(
1594 [in] const D3D10_SAMPLER_DESC *pSamplerDesc,
1595 [out] ID3D10SamplerState **ppSamplerState);
1596 HRESULT CreateQuery(
1597 [in] const D3D10_QUERY_DESC *pQueryDesc,
1598 [out] ID3D10Query **ppQuery);
1599 HRESULT CreatePredicate(
1600 [in] const D3D10_QUERY_DESC *pPredicateDesc,
1601 [out] ID3D10Predicate **ppPredicate);
1602 HRESULT CreateCounter(
1603 [in] const D3D10_COUNTER_DESC *pCounterDesc,
1604 [out] ID3D10Counter **ppCounter);
1605 HRESULT CheckFormatSupport(
1606 [in] DXGI_FORMAT Format,
1607 [out] UINT *pFormatSupport);
1608 HRESULT CheckMultisampleQualityLevels(
1609 [in] DXGI_FORMAT Format,
1610 [in] UINT SampleCount,
1611 [out] UINT *pNumQualityLevels);
1612 void CheckCounterInfo(
1613 [out] D3D10_COUNTER_INFO *pCounterInfo);
1614 HRESULT CheckCounter(
1615 [in] const D3D10_COUNTER_DESC *pDesc,
1616 [out] D3D10_COUNTER_TYPE *pType,
1617 [out] UINT *pActiveCounters,
1618 [out] char *name,
1619 [in, out] UINT *pNameLength,
1620 [out] char *units,
1621 [in, out] UINT *pUnitsLength,
1622 [out] char *description,
1623 [in, out] UINT *pDescriptionLength);
1624 UINT GetCreationFlags();
1625 HRESULT OpenSharedResource(
1626 [in] HANDLE hResource,
1627 [in] REFIID ReturnedInterface,
1628 [out] void **ppResource);
1629 void SetTextFilterSize(
1630 [in] UINT Width,
1631 [in] UINT Height);
1632 void GetTextFilterSize(
1633 [out] UINT *pWidth,
1634 [out] UINT *pHeight);
1638 object,
1639 local,
1640 uuid(9b7e4e00-342c-4106-a19f-4f2704f689f0)
1642 interface ID3D10Multithread : IUnknown
1644 void Enter();
1645 void Leave();
1646 BOOL SetMultithreadProtected(
1647 [in] BOOL bMTProtect);
1648 BOOL GetMultithreadProtected();
1651 cpp_quote("#ifndef D3D10_IGNORE_SDK_LAYERS")
1652 cpp_quote("#include \"d3d10sdklayers.h\"")
1653 cpp_quote("#endif")
1654 cpp_quote("#include \"d3d10misc.h\"")
1655 cpp_quote("#include \"d3d10shader.h\"")
1656 cpp_quote("#include \"d3d10effect.h\"")