• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*** Autogenerated by WIDL 4.19 from direct-x/include/d3d10.idl - Do not edit ***/
2 
3 #ifdef _WIN32
4 #ifndef __REQUIRED_RPCNDR_H_VERSION__
5 #define __REQUIRED_RPCNDR_H_VERSION__ 475
6 #endif
7 #include <rpc.h>
8 #include <rpcndr.h>
9 #endif
10 
11 #ifndef COM_NO_WINDOWS_H
12 #include <windows.h>
13 #include <ole2.h>
14 #endif
15 
16 #ifndef __d3d10_h__
17 #define __d3d10_h__
18 
19 /* Forward declarations */
20 
21 #ifndef __ID3D10DeviceChild_FWD_DEFINED__
22 #define __ID3D10DeviceChild_FWD_DEFINED__
23 typedef interface ID3D10DeviceChild ID3D10DeviceChild;
24 #ifdef __cplusplus
25 interface ID3D10DeviceChild;
26 #endif /* __cplusplus */
27 #endif
28 
29 #ifndef __ID3D10Resource_FWD_DEFINED__
30 #define __ID3D10Resource_FWD_DEFINED__
31 typedef interface ID3D10Resource ID3D10Resource;
32 #ifdef __cplusplus
33 interface ID3D10Resource;
34 #endif /* __cplusplus */
35 #endif
36 
37 #ifndef __ID3D10Buffer_FWD_DEFINED__
38 #define __ID3D10Buffer_FWD_DEFINED__
39 typedef interface ID3D10Buffer ID3D10Buffer;
40 #ifdef __cplusplus
41 interface ID3D10Buffer;
42 #endif /* __cplusplus */
43 #endif
44 
45 #ifndef __ID3D10Texture1D_FWD_DEFINED__
46 #define __ID3D10Texture1D_FWD_DEFINED__
47 typedef interface ID3D10Texture1D ID3D10Texture1D;
48 #ifdef __cplusplus
49 interface ID3D10Texture1D;
50 #endif /* __cplusplus */
51 #endif
52 
53 #ifndef __ID3D10Texture2D_FWD_DEFINED__
54 #define __ID3D10Texture2D_FWD_DEFINED__
55 typedef interface ID3D10Texture2D ID3D10Texture2D;
56 #ifdef __cplusplus
57 interface ID3D10Texture2D;
58 #endif /* __cplusplus */
59 #endif
60 
61 #ifndef __ID3D10Texture3D_FWD_DEFINED__
62 #define __ID3D10Texture3D_FWD_DEFINED__
63 typedef interface ID3D10Texture3D ID3D10Texture3D;
64 #ifdef __cplusplus
65 interface ID3D10Texture3D;
66 #endif /* __cplusplus */
67 #endif
68 
69 #ifndef __ID3D10View_FWD_DEFINED__
70 #define __ID3D10View_FWD_DEFINED__
71 typedef interface ID3D10View ID3D10View;
72 #ifdef __cplusplus
73 interface ID3D10View;
74 #endif /* __cplusplus */
75 #endif
76 
77 #ifndef __ID3D10DepthStencilView_FWD_DEFINED__
78 #define __ID3D10DepthStencilView_FWD_DEFINED__
79 typedef interface ID3D10DepthStencilView ID3D10DepthStencilView;
80 #ifdef __cplusplus
81 interface ID3D10DepthStencilView;
82 #endif /* __cplusplus */
83 #endif
84 
85 #ifndef __ID3D10RenderTargetView_FWD_DEFINED__
86 #define __ID3D10RenderTargetView_FWD_DEFINED__
87 typedef interface ID3D10RenderTargetView ID3D10RenderTargetView;
88 #ifdef __cplusplus
89 interface ID3D10RenderTargetView;
90 #endif /* __cplusplus */
91 #endif
92 
93 #ifndef __ID3D10ShaderResourceView_FWD_DEFINED__
94 #define __ID3D10ShaderResourceView_FWD_DEFINED__
95 typedef interface ID3D10ShaderResourceView ID3D10ShaderResourceView;
96 #ifdef __cplusplus
97 interface ID3D10ShaderResourceView;
98 #endif /* __cplusplus */
99 #endif
100 
101 #ifndef __ID3D10BlendState_FWD_DEFINED__
102 #define __ID3D10BlendState_FWD_DEFINED__
103 typedef interface ID3D10BlendState ID3D10BlendState;
104 #ifdef __cplusplus
105 interface ID3D10BlendState;
106 #endif /* __cplusplus */
107 #endif
108 
109 #ifndef __ID3D10DepthStencilState_FWD_DEFINED__
110 #define __ID3D10DepthStencilState_FWD_DEFINED__
111 typedef interface ID3D10DepthStencilState ID3D10DepthStencilState;
112 #ifdef __cplusplus
113 interface ID3D10DepthStencilState;
114 #endif /* __cplusplus */
115 #endif
116 
117 #ifndef __ID3D10GeometryShader_FWD_DEFINED__
118 #define __ID3D10GeometryShader_FWD_DEFINED__
119 typedef interface ID3D10GeometryShader ID3D10GeometryShader;
120 #ifdef __cplusplus
121 interface ID3D10GeometryShader;
122 #endif /* __cplusplus */
123 #endif
124 
125 #ifndef __ID3D10InputLayout_FWD_DEFINED__
126 #define __ID3D10InputLayout_FWD_DEFINED__
127 typedef interface ID3D10InputLayout ID3D10InputLayout;
128 #ifdef __cplusplus
129 interface ID3D10InputLayout;
130 #endif /* __cplusplus */
131 #endif
132 
133 #ifndef __ID3D10PixelShader_FWD_DEFINED__
134 #define __ID3D10PixelShader_FWD_DEFINED__
135 typedef interface ID3D10PixelShader ID3D10PixelShader;
136 #ifdef __cplusplus
137 interface ID3D10PixelShader;
138 #endif /* __cplusplus */
139 #endif
140 
141 #ifndef __ID3D10RasterizerState_FWD_DEFINED__
142 #define __ID3D10RasterizerState_FWD_DEFINED__
143 typedef interface ID3D10RasterizerState ID3D10RasterizerState;
144 #ifdef __cplusplus
145 interface ID3D10RasterizerState;
146 #endif /* __cplusplus */
147 #endif
148 
149 #ifndef __ID3D10SamplerState_FWD_DEFINED__
150 #define __ID3D10SamplerState_FWD_DEFINED__
151 typedef interface ID3D10SamplerState ID3D10SamplerState;
152 #ifdef __cplusplus
153 interface ID3D10SamplerState;
154 #endif /* __cplusplus */
155 #endif
156 
157 #ifndef __ID3D10VertexShader_FWD_DEFINED__
158 #define __ID3D10VertexShader_FWD_DEFINED__
159 typedef interface ID3D10VertexShader ID3D10VertexShader;
160 #ifdef __cplusplus
161 interface ID3D10VertexShader;
162 #endif /* __cplusplus */
163 #endif
164 
165 #ifndef __ID3D10Asynchronous_FWD_DEFINED__
166 #define __ID3D10Asynchronous_FWD_DEFINED__
167 typedef interface ID3D10Asynchronous ID3D10Asynchronous;
168 #ifdef __cplusplus
169 interface ID3D10Asynchronous;
170 #endif /* __cplusplus */
171 #endif
172 
173 #ifndef __ID3D10Counter_FWD_DEFINED__
174 #define __ID3D10Counter_FWD_DEFINED__
175 typedef interface ID3D10Counter ID3D10Counter;
176 #ifdef __cplusplus
177 interface ID3D10Counter;
178 #endif /* __cplusplus */
179 #endif
180 
181 #ifndef __ID3D10Query_FWD_DEFINED__
182 #define __ID3D10Query_FWD_DEFINED__
183 typedef interface ID3D10Query ID3D10Query;
184 #ifdef __cplusplus
185 interface ID3D10Query;
186 #endif /* __cplusplus */
187 #endif
188 
189 #ifndef __ID3D10Predicate_FWD_DEFINED__
190 #define __ID3D10Predicate_FWD_DEFINED__
191 typedef interface ID3D10Predicate ID3D10Predicate;
192 #ifdef __cplusplus
193 interface ID3D10Predicate;
194 #endif /* __cplusplus */
195 #endif
196 
197 #ifndef __ID3D10Device_FWD_DEFINED__
198 #define __ID3D10Device_FWD_DEFINED__
199 typedef interface ID3D10Device ID3D10Device;
200 #ifdef __cplusplus
201 interface ID3D10Device;
202 #endif /* __cplusplus */
203 #endif
204 
205 #ifndef __ID3D10Multithread_FWD_DEFINED__
206 #define __ID3D10Multithread_FWD_DEFINED__
207 typedef interface ID3D10Multithread ID3D10Multithread;
208 #ifdef __cplusplus
209 interface ID3D10Multithread;
210 #endif /* __cplusplus */
211 #endif
212 
213 /* Headers for imported files */
214 
215 #include <oaidl.h>
216 #include <ocidl.h>
217 #include <dxgi.h>
218 #include <d3dcommon.h>
219 
220 #ifdef __cplusplus
221 extern "C" {
222 #endif
223 
224 #ifndef _D3D10_CONSTANTS
225 #define _D3D10_CONSTANTS
226 #define D3D10_DEFAULT_BLEND_FACTOR_ALPHA (1.00000000000000)
227 
228 #define D3D10_DEFAULT_BLEND_FACTOR_BLUE (1.00000000000000)
229 
230 #define D3D10_DEFAULT_BLEND_FACTOR_GREEN (1.00000000000000)
231 
232 #define D3D10_DEFAULT_BLEND_FACTOR_RED (1.00000000000000)
233 
234 #define D3D10_DEFAULT_BORDER_COLOR_COMPONENT (0.00000000000000)
235 
236 #define D3D10_DEFAULT_SLOPE_SCALED_DEPTH_BIAS (0.00000000000000)
237 
238 #define D3D10_DEFAULT_DEPTH_BIAS_CLAMP (0.00000000000000)
239 
240 #define D3D10_DEFAULT_MAX_ANISOTROPY (16.0000000000000)
241 
242 #define D3D10_DEFAULT_MIP_LOD_BIAS (0.00000000000000)
243 
244 #define D3D10_DEFAULT_VIEWPORT_MAX_DEPTH (0.00000000000000)
245 
246 #define D3D10_DEFAULT_VIEWPORT_MIN_DEPTH (0.00000000000000)
247 
248 #define D3D10_FLOAT16_FUSED_TOLERANCE_IN_ULP (0.600000000000000)
249 
250 #define D3D10_FLOAT32_MAX (3.40282346600000e+38)
251 
252 #define D3D10_FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP (0.600000000000000)
253 
254 #define D3D10_FLOAT_TO_SRGB_EXPONENT_DENOMINATOR (2.40000000000000)
255 
256 #define D3D10_FLOAT_TO_SRGB_EXPONENT_NUMERATOR (1.00000000000000)
257 
258 #define D3D10_FLOAT_TO_SRGB_OFFSET (0.0550000000000000)
259 
260 #define D3D10_FLOAT_TO_SRGB_SCALE_1 (12.9200000000000)
261 
262 #define D3D10_FLOAT_TO_SRGB_SCALE_2 (1.05500000000000)
263 
264 #define D3D10_FLOAT_TO_SRGB_THRESHOLD (0.00313080000000000)
265 
266 #define D3D10_FTOI_INSTRUCTION_MAX_INPUT (2147483647.99900)
267 
268 #define D3D10_FTOI_INSTRUCTION_MIN_INPUT (-2147483648.99900)
269 
270 #define D3D10_FTOU_INSTRUCTION_MAX_INPUT (4294967295.99900)
271 
272 #define D3D10_FTOU_INSTRUCTION_MIN_INPUT (0.00000000000000)
273 
274 #define D3D10_LINEAR_GAMMA (1.00000000000000)
275 
276 #define D3D10_MAX_BORDER_COLOR_COMPONENT (1.00000000000000)
277 
278 #define D3D10_MAX_DEPTH (1.00000000000000)
279 
280 #define D3D10_MAX_POSITION_VALUE (3.40282346600000e+34)
281 
282 #define D3D10_MIN_BORDER_COLOR_COMPONENT (0.00000000000000)
283 
284 #define D3D10_MIN_DEPTH (0.00000000000000)
285 
286 #define D3D10_MIP_LOD_BIAS_MAX (15.9900000000000)
287 
288 #define D3D10_MIP_LOD_BIAS_MIN (-16.0000000000000)
289 
290 #define D3D10_PS_PIXEL_CENTER_FRACTIONAL_COMPONENT (0.500000000000000)
291 
292 #define D3D10_MULTISAMPLE_ANTIALIAS_LINE_WIDTH (1.40000000000000)
293 
294 #define D3D10_SRGB_GAMMA (2.20000000000000)
295 
296 #define D3D10_SRGB_TO_FLOAT_DENOMINATOR_1 (12.9200000000000)
297 
298 #define D3D10_SRGB_TO_FLOAT_DENOMINATOR_2 (1.05500000000000)
299 
300 #define D3D10_SRGB_TO_FLOAT_EXPONENT (2.40000000000000)
301 
302 #define D3D10_SRGB_TO_FLOAT_OFFSET (0.0550000000000000)
303 
304 #define D3D10_SRGB_TO_FLOAT_THRESHOLD (0.0404500000000000)
305 
306 #define D3D10_SRGB_TO_FLOAT_TOLERANCE_IN_ULP (0.500000000000000)
307 
308 #define D3D10_PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT (0.00000000000000)
309 
310 #define D3D_SPEC_VERSION (1.05000500000000)
311 
312 #define D3D10_16BIT_INDEX_STRIP_CUT_VALUE (0xffff)
313 
314 #define D3D10_32BIT_INDEX_STRIP_CUT_VALUE (0xffffffff)
315 
316 #define D3D10_8BIT_INDEX_STRIP_CUT_VALUE (0xff)
317 
318 #define D3D10_ARRAY_AXIS_ADDRESS_RANGE_BIT_COUNT (9)
319 
320 #define D3D10_CLIP_OR_CULL_DISTANCE_COUNT (8)
321 
322 #define D3D10_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT (2)
323 
324 #define D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT (14)
325 
326 #define D3D10_COMMONSHADER_CONSTANT_BUFFER_COMPONENTS (4)
327 
328 #define D3D10_COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT (32)
329 
330 #define D3D10_COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT (15)
331 
332 #define D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS (4)
333 
334 #define D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT (15)
335 
336 #define D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST (1)
337 
338 #define D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS (1)
339 
340 #define D3D10_COMMONSHADER_FLOWCONTROL_NESTING_LIMIT (64)
341 
342 #define D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS (4)
343 
344 #define D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT (1)
345 
346 #define D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST (1)
347 
348 #define D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS (1)
349 
350 #define D3D10_COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT (32)
351 
352 #define D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS (1)
353 
354 #define D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT (128)
355 
356 #define D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST (1)
357 
358 #define D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS (1)
359 
360 #define D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT (128)
361 
362 #define D3D10_COMMONSHADER_SAMPLER_REGISTER_COMPONENTS (1)
363 
364 #define D3D10_COMMONSHADER_SAMPLER_REGISTER_COUNT (16)
365 
366 #define D3D10_COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST (1)
367 
368 #define D3D10_COMMONSHADER_SAMPLER_REGISTER_READ_PORTS (1)
369 
370 #define D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT (16)
371 
372 #define D3D10_COMMONSHADER_SUBROUTINE_NESTING_LIMIT (32)
373 
374 #define D3D10_COMMONSHADER_TEMP_REGISTER_COMPONENTS (4)
375 
376 #define D3D10_COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT (32)
377 
378 #define D3D10_COMMONSHADER_TEMP_REGISTER_COUNT (4096)
379 
380 #define D3D10_COMMONSHADER_TEMP_REGISTER_READS_PER_INST (3)
381 
382 #define D3D10_COMMONSHADER_TEMP_REGISTER_READ_PORTS (3)
383 
384 #define D3D10_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX (10)
385 
386 #define D3D10_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN (-10)
387 
388 #define D3D10_COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE (-8)
389 
390 #define D3D10_COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE (7)
391 
392 #define D3D10_DEFAULT_DEPTH_BIAS (0)
393 
394 #define D3D10_DEFAULT_RENDER_TARGET_ARRAY_INDEX (0)
395 
396 #define D3D10_DEFAULT_SAMPLE_MASK (0xffffffff)
397 
398 #define D3D10_DEFAULT_SCISSOR_ENDX (0)
399 
400 #define D3D10_DEFAULT_SCISSOR_ENDY (0)
401 
402 #define D3D10_DEFAULT_SCISSOR_STARTX (0)
403 
404 #define D3D10_DEFAULT_SCISSOR_STARTY (0)
405 
406 #define D3D10_DEFAULT_STENCIL_READ_MASK (0xff)
407 
408 #define D3D10_DEFAULT_STENCIL_REFERENCE (0)
409 
410 #define D3D10_DEFAULT_STENCIL_WRITE_MASK (0xff)
411 
412 #define D3D10_DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX (0)
413 
414 #define D3D10_DEFAULT_VIEWPORT_HEIGHT (0)
415 
416 #define D3D10_DEFAULT_VIEWPORT_TOPLEFTX (0)
417 
418 #define D3D10_DEFAULT_VIEWPORT_TOPLEFTY (0)
419 
420 #define D3D10_DEFAULT_VIEWPORT_WIDTH (0)
421 
422 #define D3D10_GS_INPUT_PRIM_CONST_REGISTER_COMPONENTS (1)
423 
424 #define D3D10_GS_INPUT_PRIM_CONST_REGISTER_COMPONENT_BIT_COUNT (32)
425 
426 #define D3D10_GS_INPUT_PRIM_CONST_REGISTER_COUNT (1)
427 
428 #define D3D10_GS_INPUT_PRIM_CONST_REGISTER_READS_PER_INST (2)
429 
430 #define D3D10_GS_INPUT_PRIM_CONST_REGISTER_READ_PORTS (1)
431 
432 #define D3D10_GS_INPUT_REGISTER_COMPONENTS (4)
433 
434 #define D3D10_GS_INPUT_REGISTER_COMPONENT_BIT_COUNT (32)
435 
436 #define D3D10_GS_INPUT_REGISTER_COUNT (16)
437 
438 #define D3D10_GS_INPUT_REGISTER_READS_PER_INST (2)
439 
440 #define D3D10_GS_INPUT_REGISTER_READ_PORTS (1)
441 
442 #define D3D10_GS_INPUT_REGISTER_VERTICES (6)
443 
444 #define D3D10_GS_OUTPUT_ELEMENTS (32)
445 
446 #define D3D10_GS_OUTPUT_REGISTER_COMPONENTS (4)
447 
448 #define D3D10_GS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT (32)
449 
450 #define D3D10_GS_OUTPUT_REGISTER_COUNT (32)
451 
452 #define D3D10_IA_DEFAULT_INDEX_BUFFER_OFFSET_IN_BYTES (0)
453 
454 #define D3D10_IA_DEFAULT_PRIMITIVE_TOPOLOGY (0)
455 
456 #define D3D10_IA_DEFAULT_VERTEX_BUFFER_OFFSET_IN_BYTES (0)
457 
458 #define D3D10_IA_INDEX_INPUT_RESOURCE_SLOT_COUNT (1)
459 
460 #define D3D10_IA_INSTANCE_ID_BIT_COUNT (32)
461 
462 #define D3D10_IA_INTEGER_ARITHMETIC_BIT_COUNT (32)
463 
464 #define D3D10_IA_PRIMITIVE_ID_BIT_COUNT (32)
465 
466 #define D3D10_IA_VERTEX_ID_BIT_COUNT (32)
467 
468 #define D3D10_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT (16)
469 
470 #define D3D10_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS (64)
471 
472 #define D3D10_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT (16)
473 
474 #define D3D10_INTEGER_DIVIDE_BY_ZERO_QUOTIENT (0xffffffff)
475 
476 #define D3D10_INTEGER_DIVIDE_BY_ZERO_REMAINDER (0xffffffff)
477 
478 #define D3D10_MAX_MAXANISOTROPY (16)
479 
480 #define D3D10_MAX_MULTISAMPLE_SAMPLE_COUNT (32)
481 
482 #define D3D10_MAX_TEXTURE_DIMENSION_2_TO_EXP (17)
483 
484 #define D3D10_MIN_MAXANISOTROPY (0)
485 
486 #define D3D10_MIP_LOD_FRACTIONAL_BIT_COUNT (6)
487 
488 #define D3D10_MIP_LOD_RANGE_BIT_COUNT (8)
489 
490 #define D3D10_NONSAMPLE_FETCH_OUT_OF_RANGE_ACCESS_RESULT (0)
491 
492 #define D3D10_PIXEL_ADDRESS_RANGE_BIT_COUNT (13)
493 
494 #define D3D10_PRE_SCISSOR_PIXEL_ADDRESS_RANGE_BIT_COUNT (15)
495 
496 #define D3D10_PS_FRONTFACING_DEFAULT_VALUE (0xffffffff)
497 
498 #define D3D10_PS_FRONTFACING_FALSE_VALUE (0)
499 
500 #define D3D10_PS_FRONTFACING_TRUE_VALUE (0xffffffff)
501 
502 #define D3D10_PS_INPUT_REGISTER_COMPONENTS (4)
503 
504 #define D3D10_PS_INPUT_REGISTER_COMPONENT_BIT_COUNT (32)
505 
506 #define D3D10_PS_INPUT_REGISTER_COUNT (32)
507 
508 #define D3D10_PS_INPUT_REGISTER_READS_PER_INST (2)
509 
510 #define D3D10_PS_INPUT_REGISTER_READ_PORTS (1)
511 
512 #define D3D10_PS_OUTPUT_DEPTH_REGISTER_COMPONENTS (1)
513 
514 #define D3D10_PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT (32)
515 
516 #define D3D10_PS_OUTPUT_DEPTH_REGISTER_COUNT (1)
517 
518 #define D3D10_PS_OUTPUT_REGISTER_COMPONENTS (4)
519 
520 #define D3D10_PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT (32)
521 
522 #define D3D10_PS_OUTPUT_REGISTER_COUNT (8)
523 
524 #define D3D10_REQ_BLEND_OBJECT_COUNT_PER_CONTEXT (4096)
525 
526 #define D3D10_REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP (27)
527 
528 #define D3D10_REQ_CONSTANT_BUFFER_ELEMENT_COUNT (4096)
529 
530 #define D3D10_REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_CONTEXT (4096)
531 
532 #define D3D10_REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP (32)
533 
534 #define D3D10_REQ_DRAW_VERTEX_COUNT_2_TO_EXP (32)
535 
536 #define D3D10_REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION (8192)
537 
538 #define D3D10_REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT (1024)
539 
540 #define D3D10_REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT (4096)
541 
542 #define D3D10_REQ_MAXANISOTROPY (16)
543 
544 #define D3D10_REQ_MIP_LEVELS (14)
545 
546 #define D3D10_REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES (2048)
547 
548 #define D3D10_REQ_RASTERIZER_OBJECT_COUNT_PER_CONTEXT (4096)
549 
550 #define D3D10_REQ_RENDER_TO_BUFFER_WINDOW_WIDTH (8192)
551 
552 #define D3D10_REQ_RESOURCE_SIZE_IN_MEGABYTES (128)
553 
554 #define D3D10_REQ_RESOURCE_VIEW_COUNT_PER_CONTEXT_2_TO_EXP (20)
555 
556 #define D3D10_REQ_SAMPLER_OBJECT_COUNT_PER_CONTEXT (4096)
557 
558 #define D3D10_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION (512)
559 
560 #define D3D10_REQ_TEXTURE1D_U_DIMENSION (8192)
561 
562 #define D3D10_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION (512)
563 
564 #define D3D10_REQ_TEXTURE2D_U_OR_V_DIMENSION (8192)
565 
566 #define D3D10_REQ_TEXTURE3D_U_V_OR_W_DIMENSION (2048)
567 
568 #define D3D10_REQ_TEXTURECUBE_DIMENSION (8192)
569 
570 #define D3D10_RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL (0)
571 
572 #define D3D10_SHADER_MAJOR_VERSION (4)
573 
574 #define D3D10_SHADER_MINOR_VERSION (0)
575 
576 #define D3D10_SHIFT_INSTRUCTION_PAD_VALUE (0)
577 
578 #define D3D10_SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT (5)
579 
580 #define D3D10_SIMULTANEOUS_RENDER_TARGET_COUNT (8)
581 
582 #define D3D10_SO_BUFFER_MAX_STRIDE_IN_BYTES (2048)
583 
584 #define D3D10_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES (256)
585 
586 #define D3D10_SO_BUFFER_SLOT_COUNT (4)
587 
588 #define D3D10_SO_DDI_REGISTER_INDEX_DENOTING_GAP (0xffffffff)
589 
590 #define D3D10_SO_MULTIPLE_BUFFER_ELEMENTS_PER_BUFFER (1)
591 
592 #define D3D10_SO_SINGLE_BUFFER_COMPONENT_LIMIT (64)
593 
594 #define D3D10_STANDARD_COMPONENT_BIT_COUNT (32)
595 
596 #define D3D10_STANDARD_COMPONENT_BIT_COUNT_DOUBLED (64)
597 
598 #define D3D10_STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE (4)
599 
600 #define D3D10_STANDARD_PIXEL_COMPONENT_COUNT (128)
601 
602 #define D3D10_STANDARD_PIXEL_ELEMENT_COUNT (32)
603 
604 #define D3D10_STANDARD_VECTOR_SIZE (4)
605 
606 #define D3D10_STANDARD_VERTEX_ELEMENT_COUNT (16)
607 
608 #define D3D10_STANDARD_VERTEX_TOTAL_COMPONENT_COUNT (64)
609 
610 #define D3D10_SUBPIXEL_FRACTIONAL_BIT_COUNT (8)
611 
612 #define D3D10_SUBTEXEL_FRACTIONAL_BIT_COUNT (6)
613 
614 #define D3D10_TEXEL_ADDRESS_RANGE_BIT_COUNT (18)
615 
616 #define D3D10_UNBOUND_MEMORY_ACCESS_RESULT (0)
617 
618 #define D3D10_VIEWPORT_AND_SCISSORRECT_MAX_INDEX (15)
619 
620 #define D3D10_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE (16)
621 
622 #define D3D10_VIEWPORT_BOUNDS_MAX (16383)
623 
624 #define D3D10_VIEWPORT_BOUNDS_MIN (-16384)
625 
626 #define D3D10_VS_INPUT_REGISTER_COMPONENTS (4)
627 
628 #define D3D10_VS_INPUT_REGISTER_COMPONENT_BIT_COUNT (32)
629 
630 #define D3D10_VS_INPUT_REGISTER_COUNT (16)
631 
632 #define D3D10_VS_INPUT_REGISTER_READS_PER_INST (2)
633 
634 #define D3D10_VS_INPUT_REGISTER_READ_PORTS (1)
635 
636 #define D3D10_VS_OUTPUT_REGISTER_COMPONENTS (4)
637 
638 #define D3D10_VS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT (32)
639 
640 #define D3D10_VS_OUTPUT_REGISTER_COUNT (16)
641 
642 #define D3D10_WHQL_CONTEXT_COUNT_FOR_RESOURCE_LIMIT (10)
643 
644 #define D3D10_WHQL_DRAWINDEXED_INDEX_COUNT_2_TO_EXP (25)
645 
646 #define D3D10_WHQL_DRAW_VERTEX_COUNT_2_TO_EXP (25)
647 
648 #define D3D_MAJOR_VERSION (10)
649 
650 #define D3D_MINOR_VERSION (0)
651 
652 #define D3D_SPEC_DATE_DAY (8)
653 
654 #define D3D_SPEC_DATE_MONTH (8)
655 
656 #define D3D_SPEC_DATE_YEAR (2006)
657 
658 #endif
659 #define D3D10_APPEND_ALIGNED_ELEMENT (0xffffffff)
660 
661 #define _FACD3D10 (0x879)
662 
663 #define _FACD3D10DEBUG (_FACD3D10 + 1)
664 
665 #define D3D10_FILTER_TYPE_MASK (0x3)
666 
667 #define D3D10_SDK_VERSION (29)
668 
669 #define MAKE_D3D10_HRESULT(code)                   MAKE_HRESULT( 1, _FACD3D10, code)
670 #define MAKE_D3D10_STATUS(code)                    MAKE_HRESULT( 0, _FACD3D10, code)
671 #define D3D10_ERROR_TOO_MANY_UNIQUE_STATE_OBJECTS  MAKE_D3D10_HRESULT(1)
672 #define D3D10_ERROR_FILE_NOT_FOUND                 MAKE_D3D10_HRESULT(2)
673 typedef enum D3D10_BLEND {
674     D3D10_BLEND_ZERO = 1,
675     D3D10_BLEND_ONE = 2,
676     D3D10_BLEND_SRC_COLOR = 3,
677     D3D10_BLEND_INV_SRC_COLOR = 4,
678     D3D10_BLEND_SRC_ALPHA = 5,
679     D3D10_BLEND_INV_SRC_ALPHA = 6,
680     D3D10_BLEND_DEST_ALPHA = 7,
681     D3D10_BLEND_INV_DEST_ALPHA = 8,
682     D3D10_BLEND_DEST_COLOR = 9,
683     D3D10_BLEND_INV_DEST_COLOR = 10,
684     D3D10_BLEND_SRC_ALPHA_SAT = 11,
685     D3D10_BLEND_BLEND_FACTOR = 14,
686     D3D10_BLEND_INV_BLEND_FACTOR = 15,
687     D3D10_BLEND_SRC1_COLOR = 16,
688     D3D10_BLEND_INV_SRC1_COLOR = 17,
689     D3D10_BLEND_SRC1_ALPHA = 18,
690     D3D10_BLEND_INV_SRC1_ALPHA = 19
691 } D3D10_BLEND;
692 typedef enum D3D10_BLEND_OP {
693     D3D10_BLEND_OP_ADD = 1,
694     D3D10_BLEND_OP_SUBTRACT = 2,
695     D3D10_BLEND_OP_REV_SUBTRACT = 3,
696     D3D10_BLEND_OP_MIN = 4,
697     D3D10_BLEND_OP_MAX = 5
698 } D3D10_BLEND_OP;
699 typedef struct D3D10_BLEND_DESC {
700     WINBOOL AlphaToCoverageEnable;
701     WINBOOL BlendEnable[8];
702     D3D10_BLEND SrcBlend;
703     D3D10_BLEND DestBlend;
704     D3D10_BLEND_OP BlendOp;
705     D3D10_BLEND SrcBlendAlpha;
706     D3D10_BLEND DestBlendAlpha;
707     D3D10_BLEND_OP BlendOpAlpha;
708     UINT8 RenderTargetWriteMask[8];
709 } D3D10_BLEND_DESC;
710 typedef enum D3D10_DEPTH_WRITE_MASK {
711     D3D10_DEPTH_WRITE_MASK_ZERO = 0,
712     D3D10_DEPTH_WRITE_MASK_ALL = 1
713 } D3D10_DEPTH_WRITE_MASK;
714 typedef enum D3D10_COMPARISON_FUNC {
715     D3D10_COMPARISON_NEVER = 1,
716     D3D10_COMPARISON_LESS = 2,
717     D3D10_COMPARISON_EQUAL = 3,
718     D3D10_COMPARISON_LESS_EQUAL = 4,
719     D3D10_COMPARISON_GREATER = 5,
720     D3D10_COMPARISON_NOT_EQUAL = 6,
721     D3D10_COMPARISON_GREATER_EQUAL = 7,
722     D3D10_COMPARISON_ALWAYS = 8
723 } D3D10_COMPARISON_FUNC;
724 typedef enum D3D10_STENCIL_OP {
725     D3D10_STENCIL_OP_KEEP = 1,
726     D3D10_STENCIL_OP_ZERO = 2,
727     D3D10_STENCIL_OP_REPLACE = 3,
728     D3D10_STENCIL_OP_INCR_SAT = 4,
729     D3D10_STENCIL_OP_DECR_SAT = 5,
730     D3D10_STENCIL_OP_INVERT = 6,
731     D3D10_STENCIL_OP_INCR = 7,
732     D3D10_STENCIL_OP_DECR = 8
733 } D3D10_STENCIL_OP;
734 typedef struct D3D10_DEPTH_STENCILOP_DESC {
735     D3D10_STENCIL_OP StencilFailOp;
736     D3D10_STENCIL_OP StencilDepthFailOp;
737     D3D10_STENCIL_OP StencilPassOp;
738     D3D10_COMPARISON_FUNC StencilFunc;
739 } D3D10_DEPTH_STENCILOP_DESC;
740 typedef struct D3D10_DEPTH_STENCIL_DESC {
741     WINBOOL DepthEnable;
742     D3D10_DEPTH_WRITE_MASK DepthWriteMask;
743     D3D10_COMPARISON_FUNC DepthFunc;
744     WINBOOL StencilEnable;
745     UINT8 StencilReadMask;
746     UINT8 StencilWriteMask;
747     D3D10_DEPTH_STENCILOP_DESC FrontFace;
748     D3D10_DEPTH_STENCILOP_DESC BackFace;
749 } D3D10_DEPTH_STENCIL_DESC;
750 typedef enum D3D10_FILL_MODE {
751     D3D10_FILL_WIREFRAME = 2,
752     D3D10_FILL_SOLID = 3
753 } D3D10_FILL_MODE;
754 typedef enum D3D10_CULL_MODE {
755     D3D10_CULL_NONE = 1,
756     D3D10_CULL_FRONT = 2,
757     D3D10_CULL_BACK = 3
758 } D3D10_CULL_MODE;
759 typedef struct D3D10_RASTERIZER_DESC {
760     D3D10_FILL_MODE FillMode;
761     D3D10_CULL_MODE CullMode;
762     WINBOOL FrontCounterClockwise;
763     INT DepthBias;
764     FLOAT DepthBiasClamp;
765     FLOAT SlopeScaledDepthBias;
766     WINBOOL DepthClipEnable;
767     WINBOOL ScissorEnable;
768     WINBOOL MultisampleEnable;
769     WINBOOL AntialiasedLineEnable;
770 } D3D10_RASTERIZER_DESC;
771 typedef enum D3D10_FILTER {
772     D3D10_FILTER_MIN_MAG_MIP_POINT = 0,
773     D3D10_FILTER_MIN_MAG_POINT_MIP_LINEAR = 0x1,
774     D3D10_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x4,
775     D3D10_FILTER_MIN_POINT_MAG_MIP_LINEAR = 0x5,
776     D3D10_FILTER_MIN_LINEAR_MAG_MIP_POINT = 0x10,
777     D3D10_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x11,
778     D3D10_FILTER_MIN_MAG_LINEAR_MIP_POINT = 0x14,
779     D3D10_FILTER_MIN_MAG_MIP_LINEAR = 0x15,
780     D3D10_FILTER_ANISOTROPIC = 0x55,
781     D3D10_FILTER_COMPARISON_MIN_MAG_MIP_POINT = 0x80,
782     D3D10_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR = 0x81,
783     D3D10_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x84,
784     D3D10_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR = 0x85,
785     D3D10_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT = 0x90,
786     D3D10_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x91,
787     D3D10_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT = 0x94,
788     D3D10_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR = 0x95,
789     D3D10_FILTER_COMPARISON_ANISOTROPIC = 0xd5,
790     D3D10_FILTER_TEXT_1BIT = 0x80000000
791 } D3D10_FILTER;
792 typedef enum D3D10_TEXTURE_ADDRESS_MODE {
793     D3D10_TEXTURE_ADDRESS_WRAP = 1,
794     D3D10_TEXTURE_ADDRESS_MIRROR = 2,
795     D3D10_TEXTURE_ADDRESS_CLAMP = 3,
796     D3D10_TEXTURE_ADDRESS_BORDER = 4,
797     D3D10_TEXTURE_ADDRESS_MIRROR_ONCE = 5
798 } D3D10_TEXTURE_ADDRESS_MODE;
799 typedef struct D3D10_SAMPLER_DESC {
800     D3D10_FILTER Filter;
801     D3D10_TEXTURE_ADDRESS_MODE AddressU;
802     D3D10_TEXTURE_ADDRESS_MODE AddressV;
803     D3D10_TEXTURE_ADDRESS_MODE AddressW;
804     FLOAT MipLODBias;
805     UINT MaxAnisotropy;
806     D3D10_COMPARISON_FUNC ComparisonFunc;
807     FLOAT BorderColor[4];
808     FLOAT MinLOD;
809     FLOAT MaxLOD;
810 } D3D10_SAMPLER_DESC;
811 typedef enum D3D10_COUNTER {
812     D3D10_COUNTER_GPU_IDLE = 0,
813     D3D10_COUNTER_VERTEX_PROCESSING = 1,
814     D3D10_COUNTER_GEOMETRY_PROCESSING = 2,
815     D3D10_COUNTER_PIXEL_PROCESSING = 3,
816     D3D10_COUNTER_OTHER_GPU_PROCESSING = 4,
817     D3D10_COUNTER_HOST_ADAPTER_BANDWIDTH_UTILIZATION = 5,
818     D3D10_COUNTER_LOCAL_VIDMEM_BANDWIDTH_UTILIZATION = 6,
819     D3D10_COUNTER_VERTEX_THROUGHPUT_UTILIZATION = 7,
820     D3D10_COUNTER_TRIANGLE_SETUP_THROUGHPUT_UTILIZATION = 8,
821     D3D10_COUNTER_FILLRATE_THROUGHPUT_UTILIZATION = 9,
822     D3D10_COUNTER_VS_MEMORY_LIMITED = 10,
823     D3D10_COUNTER_VS_COMPUTATION_LIMITED = 11,
824     D3D10_COUNTER_GS_MEMORY_LIMITED = 12,
825     D3D10_COUNTER_GS_COMPUTATION_LIMITED = 13,
826     D3D10_COUNTER_PS_MEMORY_LIMITED = 14,
827     D3D10_COUNTER_PS_COMPUTATION_LIMITED = 15,
828     D3D10_COUNTER_POST_TRANSFORM_CACHE_HIT_RATE = 16,
829     D3D10_COUNTER_TEXTURE_CACHE_HIT_RATE = 17,
830     D3D10_COUNTER_DEVICE_DEPENDENT_0 = 0x40000000
831 } D3D10_COUNTER;
832 typedef struct D3D10_COUNTER_DESC {
833     D3D10_COUNTER Counter;
834     UINT MiscFlags;
835 } D3D10_COUNTER_DESC;
836 typedef enum D3D10_COUNTER_TYPE {
837     D3D10_COUNTER_TYPE_FLOAT32 = 0,
838     D3D10_COUNTER_TYPE_UINT16 = 1,
839     D3D10_COUNTER_TYPE_UINT32 = 2,
840     D3D10_COUNTER_TYPE_UINT64 = 3
841 } D3D10_COUNTER_TYPE;
842 typedef struct D3D10_COUNTER_INFO {
843     D3D10_COUNTER LastDeviceDependentCounter;
844     UINT NumSimultaneousCounters;
845     UINT8 NumDetectableParallelUnits;
846 } D3D10_COUNTER_INFO;
847 typedef enum D3D10_RESOURCE_DIMENSION {
848     D3D10_RESOURCE_DIMENSION_UNKNOWN = 0,
849     D3D10_RESOURCE_DIMENSION_BUFFER = 1,
850     D3D10_RESOURCE_DIMENSION_TEXTURE1D = 2,
851     D3D10_RESOURCE_DIMENSION_TEXTURE2D = 3,
852     D3D10_RESOURCE_DIMENSION_TEXTURE3D = 4
853 } D3D10_RESOURCE_DIMENSION;
854 typedef enum D3D10_USAGE {
855     D3D10_USAGE_DEFAULT = 0,
856     D3D10_USAGE_IMMUTABLE = 1,
857     D3D10_USAGE_DYNAMIC = 2,
858     D3D10_USAGE_STAGING = 3
859 } D3D10_USAGE;
860 typedef enum D3D10_BIND_FLAG {
861     D3D10_BIND_VERTEX_BUFFER = 0x1,
862     D3D10_BIND_INDEX_BUFFER = 0x2,
863     D3D10_BIND_CONSTANT_BUFFER = 0x4,
864     D3D10_BIND_SHADER_RESOURCE = 0x8,
865     D3D10_BIND_STREAM_OUTPUT = 0x10,
866     D3D10_BIND_RENDER_TARGET = 0x20,
867     D3D10_BIND_DEPTH_STENCIL = 0x40
868 } D3D10_BIND_FLAG;
869 typedef struct D3D10_BUFFER_DESC {
870     UINT ByteWidth;
871     D3D10_USAGE Usage;
872     UINT BindFlags;
873     UINT CPUAccessFlags;
874     UINT MiscFlags;
875 } D3D10_BUFFER_DESC;
876 #if !defined(D3D10_NO_HELPERS) && defined(__cplusplus)
877 struct CD3D10_BUFFER_DESC : public D3D10_BUFFER_DESC {
CD3D10_BUFFER_DESCCD3D10_BUFFER_DESC878     CD3D10_BUFFER_DESC() {}
CD3D10_BUFFER_DESCCD3D10_BUFFER_DESC879     explicit CD3D10_BUFFER_DESC(const D3D10_BUFFER_DESC &o) : D3D10_BUFFER_DESC(o) {}
880     explicit CD3D10_BUFFER_DESC(UINT byteWidth, UINT bindFlags, D3D10_USAGE usage = D3D10_USAGE_DEFAULT, UINT cpuaccessFlags = 0, UINT miscFlags = 0 ) {
881         ByteWidth = byteWidth;
882         Usage = usage;
883         BindFlags = bindFlags;
884         CPUAccessFlags = cpuaccessFlags;
885         MiscFlags = miscFlags;
886     }
~CD3D10_BUFFER_DESCCD3D10_BUFFER_DESC887     ~CD3D10_BUFFER_DESC() {}
888     operator const D3D10_BUFFER_DESC&() const {
889         return *this;
890     }
891 };
892 #endif
893 typedef enum D3D10_MAP {
894     D3D10_MAP_READ = 1,
895     D3D10_MAP_WRITE = 2,
896     D3D10_MAP_READ_WRITE = 3,
897     D3D10_MAP_WRITE_DISCARD = 4,
898     D3D10_MAP_WRITE_NO_OVERWRITE = 5
899 } D3D10_MAP;
900 typedef struct D3D10_TEXTURE1D_DESC {
901     UINT Width;
902     UINT MipLevels;
903     UINT ArraySize;
904     DXGI_FORMAT Format;
905     D3D10_USAGE Usage;
906     UINT BindFlags;
907     UINT CPUAccessFlags;
908     UINT MiscFlags;
909 } D3D10_TEXTURE1D_DESC;
910 #if !defined(D3D10_NO_HELPERS) && defined(__cplusplus)
911 struct CD3D10_TEXTURE1D_DESC : public D3D10_TEXTURE1D_DESC {
CD3D10_TEXTURE1D_DESCCD3D10_TEXTURE1D_DESC912     CD3D10_TEXTURE1D_DESC() {}
CD3D10_TEXTURE1D_DESCCD3D10_TEXTURE1D_DESC913     explicit CD3D10_TEXTURE1D_DESC(const D3D10_TEXTURE1D_DESC &o) : D3D10_TEXTURE1D_DESC(o) {}
914     explicit CD3D10_TEXTURE1D_DESC(DXGI_FORMAT format, UINT width, UINT arraySize = 1, UINT mipLevels = 0,
915         UINT bindFlags = D3D10_BIND_SHADER_RESOURCE, D3D10_USAGE usage = D3D10_USAGE_DEFAULT, UINT cpuaccessFlags = 0,
916         UINT miscFlags = 0) {
917         Width = width;
918         MipLevels = mipLevels;
919         ArraySize = arraySize;
920         Format = format;
921         Usage = usage;
922         BindFlags = bindFlags;
923         CPUAccessFlags = cpuaccessFlags;
924         MiscFlags = miscFlags;
925     }
~CD3D10_TEXTURE1D_DESCCD3D10_TEXTURE1D_DESC926     ~CD3D10_TEXTURE1D_DESC() {}
927     operator const D3D10_TEXTURE1D_DESC&() const {
928         return *this;
929     }
930 };
931 #endif
932 typedef struct D3D10_TEXTURE2D_DESC {
933     UINT Width;
934     UINT Height;
935     UINT MipLevels;
936     UINT ArraySize;
937     DXGI_FORMAT Format;
938     DXGI_SAMPLE_DESC SampleDesc;
939     D3D10_USAGE Usage;
940     UINT BindFlags;
941     UINT CPUAccessFlags;
942     UINT MiscFlags;
943 } D3D10_TEXTURE2D_DESC;
944 #if !defined(D3D10_NO_HELPERS) && defined(__cplusplus)
945 struct CD3D10_TEXTURE2D_DESC : public D3D10_TEXTURE2D_DESC {
CD3D10_TEXTURE2D_DESCCD3D10_TEXTURE2D_DESC946     CD3D10_TEXTURE2D_DESC() {}
CD3D10_TEXTURE2D_DESCCD3D10_TEXTURE2D_DESC947     explicit CD3D10_TEXTURE2D_DESC(const D3D10_TEXTURE2D_DESC &o) : D3D10_TEXTURE2D_DESC(o) {}
948     explicit CD3D10_TEXTURE2D_DESC(DXGI_FORMAT format, UINT width, UINT height,
949             UINT arraySize = 1,
950             UINT mipLevels = 0,
951             UINT bindFlags = D3D10_BIND_SHADER_RESOURCE,
952             D3D10_USAGE usage = D3D10_USAGE_DEFAULT,
953             UINT cpuaccessFlags = 0,
954             UINT sampleCount = 1,
955             UINT sampleQuality = 0,
956             UINT miscFlags = 0) {
957         Width = width;
958         Height = height;
959         MipLevels = mipLevels;
960         ArraySize = arraySize;
961         Format = format;
962         SampleDesc.Count = sampleCount;
963         SampleDesc.Quality = sampleQuality;
964         Usage = usage;
965         BindFlags = bindFlags;
966         CPUAccessFlags = cpuaccessFlags;
967         MiscFlags = miscFlags;
968     }
~CD3D10_TEXTURE2D_DESCCD3D10_TEXTURE2D_DESC969     ~CD3D10_TEXTURE2D_DESC() {}
970     operator const D3D10_TEXTURE2D_DESC&() const {
971         return *this;
972     }
973 };
974 #endif
975 typedef struct D3D10_TEXTURE3D_DESC {
976     UINT Width;
977     UINT Height;
978     UINT Depth;
979     UINT MipLevels;
980     DXGI_FORMAT Format;
981     D3D10_USAGE Usage;
982     UINT BindFlags;
983     UINT CPUAccessFlags;
984     UINT MiscFlags;
985 } D3D10_TEXTURE3D_DESC;
986 typedef enum D3D10_DSV_DIMENSION {
987     D3D10_DSV_DIMENSION_UNKNOWN = 0,
988     D3D10_DSV_DIMENSION_TEXTURE1D = 1,
989     D3D10_DSV_DIMENSION_TEXTURE1DARRAY = 2,
990     D3D10_DSV_DIMENSION_TEXTURE2D = 3,
991     D3D10_DSV_DIMENSION_TEXTURE2DARRAY = 4,
992     D3D10_DSV_DIMENSION_TEXTURE2DMS = 5,
993     D3D10_DSV_DIMENSION_TEXTURE2DMSARRAY = 6
994 } D3D10_DSV_DIMENSION;
995 typedef struct D3D10_TEX1D_DSV {
996     UINT MipSlice;
997 } D3D10_TEX1D_DSV;
998 typedef struct D3D10_TEX1D_ARRAY_DSV {
999     UINT MipSlice;
1000     UINT FirstArraySlice;
1001     UINT ArraySize;
1002 } D3D10_TEX1D_ARRAY_DSV;
1003 typedef struct D3D10_TEX2D_DSV {
1004     UINT MipSlice;
1005 } D3D10_TEX2D_DSV;
1006 typedef struct D3D10_TEX2D_ARRAY_DSV {
1007     UINT MipSlice;
1008     UINT FirstArraySlice;
1009     UINT ArraySize;
1010 } D3D10_TEX2D_ARRAY_DSV;
1011 typedef struct D3D10_TEX2DMS_DSV {
1012     UINT UnusedField_NothingToDefine;
1013 } D3D10_TEX2DMS_DSV;
1014 typedef struct D3D10_TEX2DMS_ARRAY_DSV {
1015     UINT FirstArraySlice;
1016     UINT ArraySize;
1017 } D3D10_TEX2DMS_ARRAY_DSV;
1018 typedef struct D3D10_DEPTH_STENCIL_VIEW_DESC {
1019     DXGI_FORMAT Format;
1020     D3D10_DSV_DIMENSION ViewDimension;
1021     __C89_NAMELESS union {
1022         D3D10_TEX1D_DSV Texture1D;
1023         D3D10_TEX1D_ARRAY_DSV Texture1DArray;
1024         D3D10_TEX2D_DSV Texture2D;
1025         D3D10_TEX2D_ARRAY_DSV Texture2DArray;
1026         D3D10_TEX2DMS_DSV Texture2DMS;
1027         D3D10_TEX2DMS_ARRAY_DSV Texture2DMSArray;
1028     } __C89_NAMELESSUNIONNAME;
1029 } D3D10_DEPTH_STENCIL_VIEW_DESC;
1030 typedef enum D3D10_RTV_DIMENSION {
1031     D3D10_RTV_DIMENSION_UNKNOWN = 0,
1032     D3D10_RTV_DIMENSION_BUFFER = 1,
1033     D3D10_RTV_DIMENSION_TEXTURE1D = 2,
1034     D3D10_RTV_DIMENSION_TEXTURE1DARRAY = 3,
1035     D3D10_RTV_DIMENSION_TEXTURE2D = 4,
1036     D3D10_RTV_DIMENSION_TEXTURE2DARRAY = 5,
1037     D3D10_RTV_DIMENSION_TEXTURE2DMS = 6,
1038     D3D10_RTV_DIMENSION_TEXTURE2DMSARRAY = 7,
1039     D3D10_RTV_DIMENSION_TEXTURE3D = 8
1040 } D3D10_RTV_DIMENSION;
1041 typedef struct D3D10_BUFFER_RTV {
1042     UINT ElementOffset;
1043     UINT ElementWidth;
1044 } D3D10_BUFFER_RTV;
1045 typedef struct D3D10_TEX1D_RTV {
1046     UINT MipSlice;
1047 } D3D10_TEX1D_RTV;
1048 typedef struct D3D10_TEX1D_ARRAY_RTV {
1049     UINT MipSlice;
1050     UINT FirstArraySlice;
1051     UINT ArraySize;
1052 } D3D10_TEX1D_ARRAY_RTV;
1053 typedef struct D3D10_TEX2D_RTV {
1054     UINT MipSlice;
1055 } D3D10_TEX2D_RTV;
1056 typedef struct D3D10_TEX2D_ARRAY_RTV {
1057     UINT MipSlice;
1058     UINT FirstArraySlice;
1059     UINT ArraySize;
1060 } D3D10_TEX2D_ARRAY_RTV;
1061 typedef struct D3D10_TEX2DMS_RTV {
1062     UINT UnusedField_NothingToDefine;
1063 } D3D10_TEX2DMS_RTV;
1064 typedef struct D3D10_TEX2DMS_ARRAY_RTV {
1065     UINT FirstArraySlice;
1066     UINT ArraySize;
1067 } D3D10_TEX2DMS_ARRAY_RTV;
1068 typedef struct D3D10_TEX3D_RTV {
1069     UINT MipSlice;
1070     UINT FirstWSlice;
1071     UINT WSize;
1072 } D3D10_TEX3D_RTV;
1073 typedef struct D3D10_RENDER_TARGET_VIEW_DESC {
1074     DXGI_FORMAT Format;
1075     D3D10_RTV_DIMENSION ViewDimension;
1076     __C89_NAMELESS union {
1077         D3D10_BUFFER_RTV Buffer;
1078         D3D10_TEX1D_RTV Texture1D;
1079         D3D10_TEX1D_ARRAY_RTV Texture1DArray;
1080         D3D10_TEX2D_RTV Texture2D;
1081         D3D10_TEX2D_ARRAY_RTV Texture2DArray;
1082         D3D10_TEX2DMS_RTV Texture2DMS;
1083         D3D10_TEX2DMS_ARRAY_RTV Texture2DMSArray;
1084         D3D10_TEX3D_RTV Texture3D;
1085     } __C89_NAMELESSUNIONNAME;
1086 } D3D10_RENDER_TARGET_VIEW_DESC;
1087 typedef D3D_SRV_DIMENSION D3D10_SRV_DIMENSION;
1088 typedef struct D3D10_BUFFER_SRV {
1089     UINT ElementOffset;
1090     UINT ElementWidth;
1091 } D3D10_BUFFER_SRV;
1092 typedef struct D3D10_TEX1D_SRV {
1093     UINT MostDetailedMip;
1094     UINT MipLevels;
1095 } D3D10_TEX1D_SRV;
1096 typedef struct D3D10_TEX1D_ARRAY_SRV {
1097     UINT MostDetailedMip;
1098     UINT MipLevels;
1099     UINT FirstArraySlice;
1100     UINT ArraySize;
1101 } D3D10_TEX1D_ARRAY_SRV;
1102 typedef struct D3D10_TEX2D_SRV {
1103     UINT MostDetailedMip;
1104     UINT MipLevels;
1105 } D3D10_TEX2D_SRV;
1106 typedef struct D3D10_TEX2D_ARRAY_SRV {
1107     UINT MostDetailedMip;
1108     UINT MipLevels;
1109     UINT FirstArraySlice;
1110     UINT ArraySize;
1111 } D3D10_TEX2D_ARRAY_SRV;
1112 typedef struct D3D10_TEX2DMS_SRV {
1113     UINT UnusedField_NothingToDefine;
1114 } D3D10_TEX2DMS_SRV;
1115 typedef struct D3D10_TEX2DMS_ARRAY_SRV {
1116     UINT FirstArraySlice;
1117     UINT ArraySize;
1118 } D3D10_TEX2DMS_ARRAY_SRV;
1119 typedef struct D3D10_TEX3D_SRV {
1120     UINT MostDetailedMip;
1121     UINT MipLevels;
1122 } D3D10_TEX3D_SRV;
1123 typedef struct D3D10_TEXCUBE_SRV {
1124     UINT MostDetailedMip;
1125     UINT MipLevels;
1126 } D3D10_TEXCUBE_SRV;
1127 typedef struct D3D10_SHADER_RESOURCE_VIEW_DESC {
1128     DXGI_FORMAT Format;
1129     D3D10_SRV_DIMENSION ViewDimension;
1130     __C89_NAMELESS union {
1131         D3D10_BUFFER_SRV Buffer;
1132         D3D10_TEX1D_SRV Texture1D;
1133         D3D10_TEX1D_ARRAY_SRV Texture1DArray;
1134         D3D10_TEX2D_SRV Texture2D;
1135         D3D10_TEX2D_ARRAY_SRV Texture2DArray;
1136         D3D10_TEX2DMS_SRV Texture2DMS;
1137         D3D10_TEX2DMS_ARRAY_SRV Texture2DMSArray;
1138         D3D10_TEX3D_SRV Texture3D;
1139         D3D10_TEXCUBE_SRV TextureCube;
1140     } __C89_NAMELESSUNIONNAME;
1141 } D3D10_SHADER_RESOURCE_VIEW_DESC;
1142 typedef struct D3D10_BOX {
1143     UINT left;
1144     UINT top;
1145     UINT front;
1146     UINT right;
1147     UINT bottom;
1148     UINT back;
1149 } D3D10_BOX;
1150 typedef struct D3D10_SUBRESOURCE_DATA {
1151     const void *pSysMem;
1152     UINT SysMemPitch;
1153     UINT SysMemSlicePitch;
1154 } D3D10_SUBRESOURCE_DATA;
1155 typedef struct D3D10_SO_DECLARATION_ENTRY {
1156     const char *SemanticName;
1157     UINT SemanticIndex;
1158     BYTE StartComponent;
1159     BYTE ComponentCount;
1160     BYTE OutputSlot;
1161 } D3D10_SO_DECLARATION_ENTRY;
1162 typedef enum D3D10_INPUT_CLASSIFICATION {
1163     D3D10_INPUT_PER_VERTEX_DATA = 0,
1164     D3D10_INPUT_PER_INSTANCE_DATA = 1
1165 } D3D10_INPUT_CLASSIFICATION;
1166 typedef struct D3D10_INPUT_ELEMENT_DESC {
1167     const char *SemanticName;
1168     UINT SemanticIndex;
1169     DXGI_FORMAT Format;
1170     UINT InputSlot;
1171     UINT AlignedByteOffset;
1172     D3D10_INPUT_CLASSIFICATION InputSlotClass;
1173     UINT InstanceDataStepRate;
1174 } D3D10_INPUT_ELEMENT_DESC;
1175 typedef enum D3D10_QUERY {
1176     D3D10_QUERY_EVENT = 0,
1177     D3D10_QUERY_OCCLUSION = 1,
1178     D3D10_QUERY_TIMESTAMP = 2,
1179     D3D10_QUERY_TIMESTAMP_DISJOINT = 3,
1180     D3D10_QUERY_PIPELINE_STATISTICS = 4,
1181     D3D10_QUERY_OCCLUSION_PREDICATE = 5,
1182     D3D10_QUERY_SO_STATISTICS = 6,
1183     D3D10_QUERY_SO_OVERFLOW_PREDICATE = 7
1184 } D3D10_QUERY;
1185 typedef struct D3D10_QUERY_DESC {
1186     D3D10_QUERY Query;
1187     UINT MiscFlags;
1188 } D3D10_QUERY_DESC;
1189 typedef D3D_PRIMITIVE_TOPOLOGY D3D10_PRIMITIVE_TOPOLOGY;
1190 typedef D3D_PRIMITIVE D3D10_PRIMITIVE;
1191 typedef RECT D3D10_RECT;
1192 typedef struct D3D10_VIEWPORT {
1193     INT TopLeftX;
1194     INT TopLeftY;
1195     UINT Width;
1196     UINT Height;
1197     FLOAT MinDepth;
1198     FLOAT MaxDepth;
1199 } D3D10_VIEWPORT;
1200 typedef struct D3D10_MAPPED_TEXTURE2D {
1201     void *pData;
1202     UINT RowPitch;
1203 } D3D10_MAPPED_TEXTURE2D;
1204 typedef struct D3D10_MAPPED_TEXTURE3D {
1205     void *pData;
1206     UINT RowPitch;
1207     UINT DepthPitch;
1208 } D3D10_MAPPED_TEXTURE3D;
1209 typedef enum D3D10_CPU_ACCESS_FLAG {
1210     D3D10_CPU_ACCESS_WRITE = 0x10000,
1211     D3D10_CPU_ACCESS_READ = 0x20000
1212 } D3D10_CPU_ACCESS_FLAG;
1213 typedef enum D3D10_RESOURCE_MISC_FLAG {
1214     D3D10_RESOURCE_MISC_GENERATE_MIPS = 0x1,
1215     D3D10_RESOURCE_MISC_SHARED = 0x2,
1216     D3D10_RESOURCE_MISC_TEXTURECUBE = 0x4,
1217     D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX = 0x10,
1218     D3D10_RESOURCE_MISC_GDI_COMPATIBLE = 0x20
1219 } D3D10_RESOURCE_MISC_FLAG;
1220 typedef enum D3D10_MAP_FLAG {
1221     D3D10_MAP_FLAG_DO_NOT_WAIT = 0x100000
1222 } D3D10_MAP_FLAG;
1223 typedef enum D3D10_CLEAR_FLAG {
1224     D3D10_CLEAR_DEPTH = 0x1,
1225     D3D10_CLEAR_STENCIL = 0x2
1226 } D3D10_CLEAR_FLAG;
1227 typedef enum D3D10_COLOR_WRITE_ENABLE {
1228     D3D10_COLOR_WRITE_ENABLE_RED = 0x1,
1229     D3D10_COLOR_WRITE_ENABLE_GREEN = 0x2,
1230     D3D10_COLOR_WRITE_ENABLE_BLUE = 0x4,
1231     D3D10_COLOR_WRITE_ENABLE_ALPHA = 0x8,
1232     D3D10_COLOR_WRITE_ENABLE_ALL = ((D3D10_COLOR_WRITE_ENABLE_RED | D3D10_COLOR_WRITE_ENABLE_GREEN) | D3D10_COLOR_WRITE_ENABLE_BLUE) | D3D10_COLOR_WRITE_ENABLE_ALPHA
1233 } D3D10_COLOR_WRITE_ENABLE;
1234 typedef enum D3D10_FORMAT_SUPPORT {
1235     D3D10_FORMAT_SUPPORT_BUFFER = 0x1,
1236     D3D10_FORMAT_SUPPORT_IA_VERTEX_BUFFER = 0x2,
1237     D3D10_FORMAT_SUPPORT_IA_INDEX_BUFFER = 0x4,
1238     D3D10_FORMAT_SUPPORT_SO_BUFFER = 0x8,
1239     D3D10_FORMAT_SUPPORT_TEXTURE1D = 0x10,
1240     D3D10_FORMAT_SUPPORT_TEXTURE2D = 0x20,
1241     D3D10_FORMAT_SUPPORT_TEXTURE3D = 0x40,
1242     D3D10_FORMAT_SUPPORT_TEXTURECUBE = 0x80,
1243     D3D10_FORMAT_SUPPORT_SHADER_LOAD = 0x100,
1244     D3D10_FORMAT_SUPPORT_SHADER_SAMPLE = 0x200,
1245     D3D10_FORMAT_SUPPORT_SHADER_SAMPLE_COMPARISON = 0x400,
1246     D3D10_FORMAT_SUPPORT_SHADER_SAMPLE_MONO_TEXT = 0x800,
1247     D3D10_FORMAT_SUPPORT_MIP = 0x1000,
1248     D3D10_FORMAT_SUPPORT_MIP_AUTOGEN = 0x2000,
1249     D3D10_FORMAT_SUPPORT_RENDER_TARGET = 0x4000,
1250     D3D10_FORMAT_SUPPORT_BLENDABLE = 0x8000,
1251     D3D10_FORMAT_SUPPORT_DEPTH_STENCIL = 0x10000,
1252     D3D10_FORMAT_SUPPORT_CPU_LOCKABLE = 0x20000,
1253     D3D10_FORMAT_SUPPORT_MULTISAMPLE_RESOLVE = 0x40000,
1254     D3D10_FORMAT_SUPPORT_DISPLAY = 0x80000,
1255     D3D10_FORMAT_SUPPORT_CAST_WITHIN_BIT_LAYOUT = 0x100000,
1256     D3D10_FORMAT_SUPPORT_MULTISAMPLE_RENDERTARGET = 0x200000,
1257     D3D10_FORMAT_SUPPORT_MULTISAMPLE_LOAD = 0x400000,
1258     D3D10_FORMAT_SUPPORT_SHADER_GATHER = 0x800000,
1259     D3D10_FORMAT_SUPPORT_BACK_BUFFER_CAST = 0x1000000
1260 } D3D10_FORMAT_SUPPORT;
1261 typedef enum D3D10_TEXTURECUBE_FACE {
1262     D3D10_TEXTURECUBE_FACE_POSITIVE_X = 0,
1263     D3D10_TEXTURECUBE_FACE_NEGATIVE_X = 1,
1264     D3D10_TEXTURECUBE_FACE_POSITIVE_Y = 2,
1265     D3D10_TEXTURECUBE_FACE_NEGATIVE_Y = 3,
1266     D3D10_TEXTURECUBE_FACE_POSITIVE_Z = 4,
1267     D3D10_TEXTURECUBE_FACE_NEGATIVE_Z = 5
1268 } D3D10_TEXTURECUBE_FACE;
1269 typedef enum D3D10_ASYNC_GETDATA_FLAG {
1270     D3D10_ASYNC_GETDATA_DONOTFLUSH = 0x1
1271 } D3D10_ASYNC_GETDATA_FLAG;
1272 typedef enum D3D10_FILTER_TYPE {
1273     D3D10_FILTER_TYPE_POINT = 0,
1274     D3D10_FILTER_TYPE_LINEAR = 1
1275 } D3D10_FILTER_TYPE;
1276 typedef enum D3D10_QUERY_MISC_FLAG {
1277     D3D10_QUERY_MISC_PREDICATEHINT = 0x1
1278 } D3D10_QUERY_MISC_FLAG;
1279 typedef struct D3D10_QUERY_DATA_TIMESTAMP_DISJOINT {
1280     UINT64 Frequency;
1281     WINBOOL Disjoint;
1282 } D3D10_QUERY_DATA_TIMESTAMP_DISJOINT;
1283 typedef struct D3D10_QUERY_DATA_PIPELINE_STATISTICS {
1284     UINT64 IAVertices;
1285     UINT64 IAPrimitives;
1286     UINT64 VSInvocations;
1287     UINT64 GSInvocations;
1288     UINT64 GSPrimitives;
1289     UINT64 CInvocations;
1290     UINT64 CPrimitives;
1291     UINT64 PSInvocations;
1292 } D3D10_QUERY_DATA_PIPELINE_STATISTICS;
1293 typedef struct D3D10_QUERY_DATA_SO_STATISTICS {
1294     UINT64 NumPrimitivesWritten;
1295     UINT64 PrimitivesStorageNeeded;
1296 } D3D10_QUERY_DATA_SO_STATISTICS;
1297 typedef enum D3D10_CREATE_DEVICE_FLAG {
1298     D3D10_CREATE_DEVICE_SINGLETHREADED = 0x1,
1299     D3D10_CREATE_DEVICE_DEBUG = 0x2,
1300     D3D10_CREATE_DEVICE_SWITCH_TO_REF = 0x4,
1301     D3D10_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS = 0x8,
1302     D3D10_CREATE_DEVICE_ALLOW_NULL_FROM_MAP = 0x10,
1303     D3D10_CREATE_DEVICE_BGRA_SUPPORT = 0x20,
1304     D3D10_CREATE_DEVICE_STRICT_VALIDATION = 0x200
1305 } D3D10_CREATE_DEVICE_FLAG;
1306 #ifndef __ID3D10Device_FWD_DEFINED__
1307 #define __ID3D10Device_FWD_DEFINED__
1308 typedef interface ID3D10Device ID3D10Device;
1309 #ifdef __cplusplus
1310 interface ID3D10Device;
1311 #endif /* __cplusplus */
1312 #endif
1313 
1314 /*****************************************************************************
1315  * ID3D10DeviceChild interface
1316  */
1317 #ifndef __ID3D10DeviceChild_INTERFACE_DEFINED__
1318 #define __ID3D10DeviceChild_INTERFACE_DEFINED__
1319 
1320 DEFINE_GUID(IID_ID3D10DeviceChild, 0x9b7e4c00, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
1321 #if defined(__cplusplus) && !defined(CINTERFACE)
1322 MIDL_INTERFACE("9b7e4c00-342c-4106-a19f-4f2704f689f0")
1323 ID3D10DeviceChild : public IUnknown
1324 {
1325     virtual void STDMETHODCALLTYPE GetDevice(
1326         ID3D10Device **ppDevice) = 0;
1327 
1328     virtual HRESULT STDMETHODCALLTYPE GetPrivateData(
1329         REFGUID guid,
1330         UINT *pDataSize,
1331         void *pData) = 0;
1332 
1333     virtual HRESULT STDMETHODCALLTYPE SetPrivateData(
1334         REFGUID guid,
1335         UINT DataSize,
1336         const void *pData) = 0;
1337 
1338     virtual HRESULT STDMETHODCALLTYPE SetPrivateDataInterface(
1339         REFGUID guid,
1340         const IUnknown *pData) = 0;
1341 
1342 };
1343 #ifdef __CRT_UUID_DECL
1344 __CRT_UUID_DECL(ID3D10DeviceChild, 0x9b7e4c00, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
1345 #endif
1346 #else
1347 typedef struct ID3D10DeviceChildVtbl {
1348     BEGIN_INTERFACE
1349 
1350     /*** IUnknown methods ***/
1351     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1352         ID3D10DeviceChild *This,
1353         REFIID riid,
1354         void **ppvObject);
1355 
1356     ULONG (STDMETHODCALLTYPE *AddRef)(
1357         ID3D10DeviceChild *This);
1358 
1359     ULONG (STDMETHODCALLTYPE *Release)(
1360         ID3D10DeviceChild *This);
1361 
1362     /*** ID3D10DeviceChild methods ***/
1363     void (STDMETHODCALLTYPE *GetDevice)(
1364         ID3D10DeviceChild *This,
1365         ID3D10Device **ppDevice);
1366 
1367     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
1368         ID3D10DeviceChild *This,
1369         REFGUID guid,
1370         UINT *pDataSize,
1371         void *pData);
1372 
1373     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
1374         ID3D10DeviceChild *This,
1375         REFGUID guid,
1376         UINT DataSize,
1377         const void *pData);
1378 
1379     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
1380         ID3D10DeviceChild *This,
1381         REFGUID guid,
1382         const IUnknown *pData);
1383 
1384     END_INTERFACE
1385 } ID3D10DeviceChildVtbl;
1386 
1387 interface ID3D10DeviceChild {
1388     CONST_VTBL ID3D10DeviceChildVtbl* lpVtbl;
1389 };
1390 
1391 #ifdef COBJMACROS
1392 #ifndef WIDL_C_INLINE_WRAPPERS
1393 /*** IUnknown methods ***/
1394 #define ID3D10DeviceChild_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1395 #define ID3D10DeviceChild_AddRef(This) (This)->lpVtbl->AddRef(This)
1396 #define ID3D10DeviceChild_Release(This) (This)->lpVtbl->Release(This)
1397 /*** ID3D10DeviceChild methods ***/
1398 #define ID3D10DeviceChild_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
1399 #define ID3D10DeviceChild_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
1400 #define ID3D10DeviceChild_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
1401 #define ID3D10DeviceChild_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
1402 #else
1403 /*** IUnknown methods ***/
1404 static FORCEINLINE HRESULT ID3D10DeviceChild_QueryInterface(ID3D10DeviceChild* This,REFIID riid,void **ppvObject) {
1405     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1406 }
1407 static FORCEINLINE ULONG ID3D10DeviceChild_AddRef(ID3D10DeviceChild* This) {
1408     return This->lpVtbl->AddRef(This);
1409 }
1410 static FORCEINLINE ULONG ID3D10DeviceChild_Release(ID3D10DeviceChild* This) {
1411     return This->lpVtbl->Release(This);
1412 }
1413 /*** ID3D10DeviceChild methods ***/
1414 static FORCEINLINE void ID3D10DeviceChild_GetDevice(ID3D10DeviceChild* This,ID3D10Device **ppDevice) {
1415     This->lpVtbl->GetDevice(This,ppDevice);
1416 }
1417 static FORCEINLINE HRESULT ID3D10DeviceChild_GetPrivateData(ID3D10DeviceChild* This,REFGUID guid,UINT *pDataSize,void *pData) {
1418     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
1419 }
1420 static FORCEINLINE HRESULT ID3D10DeviceChild_SetPrivateData(ID3D10DeviceChild* This,REFGUID guid,UINT DataSize,const void *pData) {
1421     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
1422 }
1423 static FORCEINLINE HRESULT ID3D10DeviceChild_SetPrivateDataInterface(ID3D10DeviceChild* This,REFGUID guid,const IUnknown *pData) {
1424     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
1425 }
1426 #endif
1427 #endif
1428 
1429 #endif
1430 
1431 
1432 #endif  /* __ID3D10DeviceChild_INTERFACE_DEFINED__ */
1433 
1434 /*****************************************************************************
1435  * ID3D10Resource interface
1436  */
1437 #ifndef __ID3D10Resource_INTERFACE_DEFINED__
1438 #define __ID3D10Resource_INTERFACE_DEFINED__
1439 
1440 DEFINE_GUID(IID_ID3D10Resource, 0x9b7e4c01, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
1441 #if defined(__cplusplus) && !defined(CINTERFACE)
1442 MIDL_INTERFACE("9b7e4c01-342c-4106-a19f-4f2704f689f0")
1443 ID3D10Resource : public ID3D10DeviceChild
1444 {
1445     virtual void STDMETHODCALLTYPE GetType(
1446         D3D10_RESOURCE_DIMENSION *rType) = 0;
1447 
1448     virtual void STDMETHODCALLTYPE SetEvictionPriority(
1449         UINT EvictionPriority) = 0;
1450 
1451     virtual UINT STDMETHODCALLTYPE GetEvictionPriority(
1452         ) = 0;
1453 
1454 };
1455 #ifdef __CRT_UUID_DECL
1456 __CRT_UUID_DECL(ID3D10Resource, 0x9b7e4c01, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
1457 #endif
1458 #else
1459 typedef struct ID3D10ResourceVtbl {
1460     BEGIN_INTERFACE
1461 
1462     /*** IUnknown methods ***/
1463     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1464         ID3D10Resource *This,
1465         REFIID riid,
1466         void **ppvObject);
1467 
1468     ULONG (STDMETHODCALLTYPE *AddRef)(
1469         ID3D10Resource *This);
1470 
1471     ULONG (STDMETHODCALLTYPE *Release)(
1472         ID3D10Resource *This);
1473 
1474     /*** ID3D10DeviceChild methods ***/
1475     void (STDMETHODCALLTYPE *GetDevice)(
1476         ID3D10Resource *This,
1477         ID3D10Device **ppDevice);
1478 
1479     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
1480         ID3D10Resource *This,
1481         REFGUID guid,
1482         UINT *pDataSize,
1483         void *pData);
1484 
1485     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
1486         ID3D10Resource *This,
1487         REFGUID guid,
1488         UINT DataSize,
1489         const void *pData);
1490 
1491     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
1492         ID3D10Resource *This,
1493         REFGUID guid,
1494         const IUnknown *pData);
1495 
1496     /*** ID3D10Resource methods ***/
1497     void (STDMETHODCALLTYPE *GetType)(
1498         ID3D10Resource *This,
1499         D3D10_RESOURCE_DIMENSION *rType);
1500 
1501     void (STDMETHODCALLTYPE *SetEvictionPriority)(
1502         ID3D10Resource *This,
1503         UINT EvictionPriority);
1504 
1505     UINT (STDMETHODCALLTYPE *GetEvictionPriority)(
1506         ID3D10Resource *This);
1507 
1508     END_INTERFACE
1509 } ID3D10ResourceVtbl;
1510 
1511 interface ID3D10Resource {
1512     CONST_VTBL ID3D10ResourceVtbl* lpVtbl;
1513 };
1514 
1515 #ifdef COBJMACROS
1516 #ifndef WIDL_C_INLINE_WRAPPERS
1517 /*** IUnknown methods ***/
1518 #define ID3D10Resource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1519 #define ID3D10Resource_AddRef(This) (This)->lpVtbl->AddRef(This)
1520 #define ID3D10Resource_Release(This) (This)->lpVtbl->Release(This)
1521 /*** ID3D10DeviceChild methods ***/
1522 #define ID3D10Resource_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
1523 #define ID3D10Resource_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
1524 #define ID3D10Resource_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
1525 #define ID3D10Resource_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
1526 /*** ID3D10Resource methods ***/
1527 #define ID3D10Resource_GetType(This,rType) (This)->lpVtbl->GetType(This,rType)
1528 #define ID3D10Resource_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority)
1529 #define ID3D10Resource_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This)
1530 #else
1531 /*** IUnknown methods ***/
1532 static FORCEINLINE HRESULT ID3D10Resource_QueryInterface(ID3D10Resource* This,REFIID riid,void **ppvObject) {
1533     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1534 }
1535 static FORCEINLINE ULONG ID3D10Resource_AddRef(ID3D10Resource* This) {
1536     return This->lpVtbl->AddRef(This);
1537 }
1538 static FORCEINLINE ULONG ID3D10Resource_Release(ID3D10Resource* This) {
1539     return This->lpVtbl->Release(This);
1540 }
1541 /*** ID3D10DeviceChild methods ***/
1542 static FORCEINLINE void ID3D10Resource_GetDevice(ID3D10Resource* This,ID3D10Device **ppDevice) {
1543     This->lpVtbl->GetDevice(This,ppDevice);
1544 }
1545 static FORCEINLINE HRESULT ID3D10Resource_GetPrivateData(ID3D10Resource* This,REFGUID guid,UINT *pDataSize,void *pData) {
1546     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
1547 }
1548 static FORCEINLINE HRESULT ID3D10Resource_SetPrivateData(ID3D10Resource* This,REFGUID guid,UINT DataSize,const void *pData) {
1549     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
1550 }
1551 static FORCEINLINE HRESULT ID3D10Resource_SetPrivateDataInterface(ID3D10Resource* This,REFGUID guid,const IUnknown *pData) {
1552     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
1553 }
1554 /*** ID3D10Resource methods ***/
1555 static FORCEINLINE void ID3D10Resource_GetType(ID3D10Resource* This,D3D10_RESOURCE_DIMENSION *rType) {
1556     This->lpVtbl->GetType(This,rType);
1557 }
1558 static FORCEINLINE void ID3D10Resource_SetEvictionPriority(ID3D10Resource* This,UINT EvictionPriority) {
1559     This->lpVtbl->SetEvictionPriority(This,EvictionPriority);
1560 }
1561 static FORCEINLINE UINT ID3D10Resource_GetEvictionPriority(ID3D10Resource* This) {
1562     return This->lpVtbl->GetEvictionPriority(This);
1563 }
1564 #endif
1565 #endif
1566 
1567 #endif
1568 
1569 
1570 #endif  /* __ID3D10Resource_INTERFACE_DEFINED__ */
1571 
1572 /*****************************************************************************
1573  * ID3D10Buffer interface
1574  */
1575 #ifndef __ID3D10Buffer_INTERFACE_DEFINED__
1576 #define __ID3D10Buffer_INTERFACE_DEFINED__
1577 
1578 DEFINE_GUID(IID_ID3D10Buffer, 0x9b7e4c02, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
1579 #if defined(__cplusplus) && !defined(CINTERFACE)
1580 MIDL_INTERFACE("9b7e4c02-342c-4106-a19f-4f2704f689f0")
1581 ID3D10Buffer : public ID3D10Resource
1582 {
1583     virtual HRESULT STDMETHODCALLTYPE Map(
1584         D3D10_MAP MapType,
1585         UINT MapFlags,
1586         void **ppData) = 0;
1587 
1588     virtual void STDMETHODCALLTYPE Unmap(
1589         ) = 0;
1590 
1591     virtual void STDMETHODCALLTYPE GetDesc(
1592         D3D10_BUFFER_DESC *pDesc) = 0;
1593 
1594 };
1595 #ifdef __CRT_UUID_DECL
1596 __CRT_UUID_DECL(ID3D10Buffer, 0x9b7e4c02, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
1597 #endif
1598 #else
1599 typedef struct ID3D10BufferVtbl {
1600     BEGIN_INTERFACE
1601 
1602     /*** IUnknown methods ***/
1603     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1604         ID3D10Buffer *This,
1605         REFIID riid,
1606         void **ppvObject);
1607 
1608     ULONG (STDMETHODCALLTYPE *AddRef)(
1609         ID3D10Buffer *This);
1610 
1611     ULONG (STDMETHODCALLTYPE *Release)(
1612         ID3D10Buffer *This);
1613 
1614     /*** ID3D10DeviceChild methods ***/
1615     void (STDMETHODCALLTYPE *GetDevice)(
1616         ID3D10Buffer *This,
1617         ID3D10Device **ppDevice);
1618 
1619     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
1620         ID3D10Buffer *This,
1621         REFGUID guid,
1622         UINT *pDataSize,
1623         void *pData);
1624 
1625     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
1626         ID3D10Buffer *This,
1627         REFGUID guid,
1628         UINT DataSize,
1629         const void *pData);
1630 
1631     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
1632         ID3D10Buffer *This,
1633         REFGUID guid,
1634         const IUnknown *pData);
1635 
1636     /*** ID3D10Resource methods ***/
1637     void (STDMETHODCALLTYPE *GetType)(
1638         ID3D10Buffer *This,
1639         D3D10_RESOURCE_DIMENSION *rType);
1640 
1641     void (STDMETHODCALLTYPE *SetEvictionPriority)(
1642         ID3D10Buffer *This,
1643         UINT EvictionPriority);
1644 
1645     UINT (STDMETHODCALLTYPE *GetEvictionPriority)(
1646         ID3D10Buffer *This);
1647 
1648     /*** ID3D10Buffer methods ***/
1649     HRESULT (STDMETHODCALLTYPE *Map)(
1650         ID3D10Buffer *This,
1651         D3D10_MAP MapType,
1652         UINT MapFlags,
1653         void **ppData);
1654 
1655     void (STDMETHODCALLTYPE *Unmap)(
1656         ID3D10Buffer *This);
1657 
1658     void (STDMETHODCALLTYPE *GetDesc)(
1659         ID3D10Buffer *This,
1660         D3D10_BUFFER_DESC *pDesc);
1661 
1662     END_INTERFACE
1663 } ID3D10BufferVtbl;
1664 
1665 interface ID3D10Buffer {
1666     CONST_VTBL ID3D10BufferVtbl* lpVtbl;
1667 };
1668 
1669 #ifdef COBJMACROS
1670 #ifndef WIDL_C_INLINE_WRAPPERS
1671 /*** IUnknown methods ***/
1672 #define ID3D10Buffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1673 #define ID3D10Buffer_AddRef(This) (This)->lpVtbl->AddRef(This)
1674 #define ID3D10Buffer_Release(This) (This)->lpVtbl->Release(This)
1675 /*** ID3D10DeviceChild methods ***/
1676 #define ID3D10Buffer_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
1677 #define ID3D10Buffer_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
1678 #define ID3D10Buffer_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
1679 #define ID3D10Buffer_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
1680 /*** ID3D10Resource methods ***/
1681 #define ID3D10Buffer_GetType(This,rType) (This)->lpVtbl->GetType(This,rType)
1682 #define ID3D10Buffer_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority)
1683 #define ID3D10Buffer_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This)
1684 /*** ID3D10Buffer methods ***/
1685 #define ID3D10Buffer_Map(This,MapType,MapFlags,ppData) (This)->lpVtbl->Map(This,MapType,MapFlags,ppData)
1686 #define ID3D10Buffer_Unmap(This) (This)->lpVtbl->Unmap(This)
1687 #define ID3D10Buffer_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
1688 #else
1689 /*** IUnknown methods ***/
1690 static FORCEINLINE HRESULT ID3D10Buffer_QueryInterface(ID3D10Buffer* This,REFIID riid,void **ppvObject) {
1691     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1692 }
1693 static FORCEINLINE ULONG ID3D10Buffer_AddRef(ID3D10Buffer* This) {
1694     return This->lpVtbl->AddRef(This);
1695 }
1696 static FORCEINLINE ULONG ID3D10Buffer_Release(ID3D10Buffer* This) {
1697     return This->lpVtbl->Release(This);
1698 }
1699 /*** ID3D10DeviceChild methods ***/
1700 static FORCEINLINE void ID3D10Buffer_GetDevice(ID3D10Buffer* This,ID3D10Device **ppDevice) {
1701     This->lpVtbl->GetDevice(This,ppDevice);
1702 }
1703 static FORCEINLINE HRESULT ID3D10Buffer_GetPrivateData(ID3D10Buffer* This,REFGUID guid,UINT *pDataSize,void *pData) {
1704     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
1705 }
1706 static FORCEINLINE HRESULT ID3D10Buffer_SetPrivateData(ID3D10Buffer* This,REFGUID guid,UINT DataSize,const void *pData) {
1707     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
1708 }
1709 static FORCEINLINE HRESULT ID3D10Buffer_SetPrivateDataInterface(ID3D10Buffer* This,REFGUID guid,const IUnknown *pData) {
1710     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
1711 }
1712 /*** ID3D10Resource methods ***/
1713 static FORCEINLINE void ID3D10Buffer_GetType(ID3D10Buffer* This,D3D10_RESOURCE_DIMENSION *rType) {
1714     This->lpVtbl->GetType(This,rType);
1715 }
1716 static FORCEINLINE void ID3D10Buffer_SetEvictionPriority(ID3D10Buffer* This,UINT EvictionPriority) {
1717     This->lpVtbl->SetEvictionPriority(This,EvictionPriority);
1718 }
1719 static FORCEINLINE UINT ID3D10Buffer_GetEvictionPriority(ID3D10Buffer* This) {
1720     return This->lpVtbl->GetEvictionPriority(This);
1721 }
1722 /*** ID3D10Buffer methods ***/
1723 static FORCEINLINE HRESULT ID3D10Buffer_Map(ID3D10Buffer* This,D3D10_MAP MapType,UINT MapFlags,void **ppData) {
1724     return This->lpVtbl->Map(This,MapType,MapFlags,ppData);
1725 }
1726 static FORCEINLINE void ID3D10Buffer_Unmap(ID3D10Buffer* This) {
1727     This->lpVtbl->Unmap(This);
1728 }
1729 static FORCEINLINE void ID3D10Buffer_GetDesc(ID3D10Buffer* This,D3D10_BUFFER_DESC *pDesc) {
1730     This->lpVtbl->GetDesc(This,pDesc);
1731 }
1732 #endif
1733 #endif
1734 
1735 #endif
1736 
1737 
1738 #endif  /* __ID3D10Buffer_INTERFACE_DEFINED__ */
1739 
1740 /*****************************************************************************
1741  * ID3D10Texture1D interface
1742  */
1743 #ifndef __ID3D10Texture1D_INTERFACE_DEFINED__
1744 #define __ID3D10Texture1D_INTERFACE_DEFINED__
1745 
1746 DEFINE_GUID(IID_ID3D10Texture1D, 0x9b7e4c03, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
1747 #if defined(__cplusplus) && !defined(CINTERFACE)
1748 MIDL_INTERFACE("9b7e4c03-342c-4106-a19f-4f2704f689f0")
1749 ID3D10Texture1D : public ID3D10Resource
1750 {
1751     virtual HRESULT STDMETHODCALLTYPE Map(
1752         UINT Subresource,
1753         D3D10_MAP MapType,
1754         UINT MapFlags,
1755         void **ppData) = 0;
1756 
1757     virtual void STDMETHODCALLTYPE Unmap(
1758         UINT Subresource) = 0;
1759 
1760     virtual void STDMETHODCALLTYPE GetDesc(
1761         D3D10_TEXTURE1D_DESC *pDesc) = 0;
1762 
1763 };
1764 #ifdef __CRT_UUID_DECL
1765 __CRT_UUID_DECL(ID3D10Texture1D, 0x9b7e4c03, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
1766 #endif
1767 #else
1768 typedef struct ID3D10Texture1DVtbl {
1769     BEGIN_INTERFACE
1770 
1771     /*** IUnknown methods ***/
1772     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1773         ID3D10Texture1D *This,
1774         REFIID riid,
1775         void **ppvObject);
1776 
1777     ULONG (STDMETHODCALLTYPE *AddRef)(
1778         ID3D10Texture1D *This);
1779 
1780     ULONG (STDMETHODCALLTYPE *Release)(
1781         ID3D10Texture1D *This);
1782 
1783     /*** ID3D10DeviceChild methods ***/
1784     void (STDMETHODCALLTYPE *GetDevice)(
1785         ID3D10Texture1D *This,
1786         ID3D10Device **ppDevice);
1787 
1788     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
1789         ID3D10Texture1D *This,
1790         REFGUID guid,
1791         UINT *pDataSize,
1792         void *pData);
1793 
1794     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
1795         ID3D10Texture1D *This,
1796         REFGUID guid,
1797         UINT DataSize,
1798         const void *pData);
1799 
1800     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
1801         ID3D10Texture1D *This,
1802         REFGUID guid,
1803         const IUnknown *pData);
1804 
1805     /*** ID3D10Resource methods ***/
1806     void (STDMETHODCALLTYPE *GetType)(
1807         ID3D10Texture1D *This,
1808         D3D10_RESOURCE_DIMENSION *rType);
1809 
1810     void (STDMETHODCALLTYPE *SetEvictionPriority)(
1811         ID3D10Texture1D *This,
1812         UINT EvictionPriority);
1813 
1814     UINT (STDMETHODCALLTYPE *GetEvictionPriority)(
1815         ID3D10Texture1D *This);
1816 
1817     /*** ID3D10Texture1D methods ***/
1818     HRESULT (STDMETHODCALLTYPE *Map)(
1819         ID3D10Texture1D *This,
1820         UINT Subresource,
1821         D3D10_MAP MapType,
1822         UINT MapFlags,
1823         void **ppData);
1824 
1825     void (STDMETHODCALLTYPE *Unmap)(
1826         ID3D10Texture1D *This,
1827         UINT Subresource);
1828 
1829     void (STDMETHODCALLTYPE *GetDesc)(
1830         ID3D10Texture1D *This,
1831         D3D10_TEXTURE1D_DESC *pDesc);
1832 
1833     END_INTERFACE
1834 } ID3D10Texture1DVtbl;
1835 
1836 interface ID3D10Texture1D {
1837     CONST_VTBL ID3D10Texture1DVtbl* lpVtbl;
1838 };
1839 
1840 #ifdef COBJMACROS
1841 #ifndef WIDL_C_INLINE_WRAPPERS
1842 /*** IUnknown methods ***/
1843 #define ID3D10Texture1D_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1844 #define ID3D10Texture1D_AddRef(This) (This)->lpVtbl->AddRef(This)
1845 #define ID3D10Texture1D_Release(This) (This)->lpVtbl->Release(This)
1846 /*** ID3D10DeviceChild methods ***/
1847 #define ID3D10Texture1D_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
1848 #define ID3D10Texture1D_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
1849 #define ID3D10Texture1D_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
1850 #define ID3D10Texture1D_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
1851 /*** ID3D10Resource methods ***/
1852 #define ID3D10Texture1D_GetType(This,rType) (This)->lpVtbl->GetType(This,rType)
1853 #define ID3D10Texture1D_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority)
1854 #define ID3D10Texture1D_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This)
1855 /*** ID3D10Texture1D methods ***/
1856 #define ID3D10Texture1D_Map(This,Subresource,MapType,MapFlags,ppData) (This)->lpVtbl->Map(This,Subresource,MapType,MapFlags,ppData)
1857 #define ID3D10Texture1D_Unmap(This,Subresource) (This)->lpVtbl->Unmap(This,Subresource)
1858 #define ID3D10Texture1D_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
1859 #else
1860 /*** IUnknown methods ***/
1861 static FORCEINLINE HRESULT ID3D10Texture1D_QueryInterface(ID3D10Texture1D* This,REFIID riid,void **ppvObject) {
1862     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1863 }
1864 static FORCEINLINE ULONG ID3D10Texture1D_AddRef(ID3D10Texture1D* This) {
1865     return This->lpVtbl->AddRef(This);
1866 }
1867 static FORCEINLINE ULONG ID3D10Texture1D_Release(ID3D10Texture1D* This) {
1868     return This->lpVtbl->Release(This);
1869 }
1870 /*** ID3D10DeviceChild methods ***/
1871 static FORCEINLINE void ID3D10Texture1D_GetDevice(ID3D10Texture1D* This,ID3D10Device **ppDevice) {
1872     This->lpVtbl->GetDevice(This,ppDevice);
1873 }
1874 static FORCEINLINE HRESULT ID3D10Texture1D_GetPrivateData(ID3D10Texture1D* This,REFGUID guid,UINT *pDataSize,void *pData) {
1875     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
1876 }
1877 static FORCEINLINE HRESULT ID3D10Texture1D_SetPrivateData(ID3D10Texture1D* This,REFGUID guid,UINT DataSize,const void *pData) {
1878     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
1879 }
1880 static FORCEINLINE HRESULT ID3D10Texture1D_SetPrivateDataInterface(ID3D10Texture1D* This,REFGUID guid,const IUnknown *pData) {
1881     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
1882 }
1883 /*** ID3D10Resource methods ***/
1884 static FORCEINLINE void ID3D10Texture1D_GetType(ID3D10Texture1D* This,D3D10_RESOURCE_DIMENSION *rType) {
1885     This->lpVtbl->GetType(This,rType);
1886 }
1887 static FORCEINLINE void ID3D10Texture1D_SetEvictionPriority(ID3D10Texture1D* This,UINT EvictionPriority) {
1888     This->lpVtbl->SetEvictionPriority(This,EvictionPriority);
1889 }
1890 static FORCEINLINE UINT ID3D10Texture1D_GetEvictionPriority(ID3D10Texture1D* This) {
1891     return This->lpVtbl->GetEvictionPriority(This);
1892 }
1893 /*** ID3D10Texture1D methods ***/
1894 static FORCEINLINE HRESULT ID3D10Texture1D_Map(ID3D10Texture1D* This,UINT Subresource,D3D10_MAP MapType,UINT MapFlags,void **ppData) {
1895     return This->lpVtbl->Map(This,Subresource,MapType,MapFlags,ppData);
1896 }
1897 static FORCEINLINE void ID3D10Texture1D_Unmap(ID3D10Texture1D* This,UINT Subresource) {
1898     This->lpVtbl->Unmap(This,Subresource);
1899 }
1900 static FORCEINLINE void ID3D10Texture1D_GetDesc(ID3D10Texture1D* This,D3D10_TEXTURE1D_DESC *pDesc) {
1901     This->lpVtbl->GetDesc(This,pDesc);
1902 }
1903 #endif
1904 #endif
1905 
1906 #endif
1907 
1908 
1909 #endif  /* __ID3D10Texture1D_INTERFACE_DEFINED__ */
1910 
1911 /*****************************************************************************
1912  * ID3D10Texture2D interface
1913  */
1914 #ifndef __ID3D10Texture2D_INTERFACE_DEFINED__
1915 #define __ID3D10Texture2D_INTERFACE_DEFINED__
1916 
1917 DEFINE_GUID(IID_ID3D10Texture2D, 0x9b7e4c04, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
1918 #if defined(__cplusplus) && !defined(CINTERFACE)
1919 MIDL_INTERFACE("9b7e4c04-342c-4106-a19f-4f2704f689f0")
1920 ID3D10Texture2D : public ID3D10Resource
1921 {
1922     virtual HRESULT STDMETHODCALLTYPE Map(
1923         UINT Subresource,
1924         D3D10_MAP MapType,
1925         UINT MapFlags,
1926         D3D10_MAPPED_TEXTURE2D *pMappedTex2D) = 0;
1927 
1928     virtual void STDMETHODCALLTYPE Unmap(
1929         UINT Subresource) = 0;
1930 
1931     virtual void STDMETHODCALLTYPE GetDesc(
1932         D3D10_TEXTURE2D_DESC *pDesc) = 0;
1933 
1934 };
1935 #ifdef __CRT_UUID_DECL
1936 __CRT_UUID_DECL(ID3D10Texture2D, 0x9b7e4c04, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
1937 #endif
1938 #else
1939 typedef struct ID3D10Texture2DVtbl {
1940     BEGIN_INTERFACE
1941 
1942     /*** IUnknown methods ***/
1943     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1944         ID3D10Texture2D *This,
1945         REFIID riid,
1946         void **ppvObject);
1947 
1948     ULONG (STDMETHODCALLTYPE *AddRef)(
1949         ID3D10Texture2D *This);
1950 
1951     ULONG (STDMETHODCALLTYPE *Release)(
1952         ID3D10Texture2D *This);
1953 
1954     /*** ID3D10DeviceChild methods ***/
1955     void (STDMETHODCALLTYPE *GetDevice)(
1956         ID3D10Texture2D *This,
1957         ID3D10Device **ppDevice);
1958 
1959     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
1960         ID3D10Texture2D *This,
1961         REFGUID guid,
1962         UINT *pDataSize,
1963         void *pData);
1964 
1965     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
1966         ID3D10Texture2D *This,
1967         REFGUID guid,
1968         UINT DataSize,
1969         const void *pData);
1970 
1971     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
1972         ID3D10Texture2D *This,
1973         REFGUID guid,
1974         const IUnknown *pData);
1975 
1976     /*** ID3D10Resource methods ***/
1977     void (STDMETHODCALLTYPE *GetType)(
1978         ID3D10Texture2D *This,
1979         D3D10_RESOURCE_DIMENSION *rType);
1980 
1981     void (STDMETHODCALLTYPE *SetEvictionPriority)(
1982         ID3D10Texture2D *This,
1983         UINT EvictionPriority);
1984 
1985     UINT (STDMETHODCALLTYPE *GetEvictionPriority)(
1986         ID3D10Texture2D *This);
1987 
1988     /*** ID3D10Texture2D methods ***/
1989     HRESULT (STDMETHODCALLTYPE *Map)(
1990         ID3D10Texture2D *This,
1991         UINT Subresource,
1992         D3D10_MAP MapType,
1993         UINT MapFlags,
1994         D3D10_MAPPED_TEXTURE2D *pMappedTex2D);
1995 
1996     void (STDMETHODCALLTYPE *Unmap)(
1997         ID3D10Texture2D *This,
1998         UINT Subresource);
1999 
2000     void (STDMETHODCALLTYPE *GetDesc)(
2001         ID3D10Texture2D *This,
2002         D3D10_TEXTURE2D_DESC *pDesc);
2003 
2004     END_INTERFACE
2005 } ID3D10Texture2DVtbl;
2006 
2007 interface ID3D10Texture2D {
2008     CONST_VTBL ID3D10Texture2DVtbl* lpVtbl;
2009 };
2010 
2011 #ifdef COBJMACROS
2012 #ifndef WIDL_C_INLINE_WRAPPERS
2013 /*** IUnknown methods ***/
2014 #define ID3D10Texture2D_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2015 #define ID3D10Texture2D_AddRef(This) (This)->lpVtbl->AddRef(This)
2016 #define ID3D10Texture2D_Release(This) (This)->lpVtbl->Release(This)
2017 /*** ID3D10DeviceChild methods ***/
2018 #define ID3D10Texture2D_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
2019 #define ID3D10Texture2D_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
2020 #define ID3D10Texture2D_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
2021 #define ID3D10Texture2D_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
2022 /*** ID3D10Resource methods ***/
2023 #define ID3D10Texture2D_GetType(This,rType) (This)->lpVtbl->GetType(This,rType)
2024 #define ID3D10Texture2D_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority)
2025 #define ID3D10Texture2D_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This)
2026 /*** ID3D10Texture2D methods ***/
2027 #define ID3D10Texture2D_Map(This,Subresource,MapType,MapFlags,pMappedTex2D) (This)->lpVtbl->Map(This,Subresource,MapType,MapFlags,pMappedTex2D)
2028 #define ID3D10Texture2D_Unmap(This,Subresource) (This)->lpVtbl->Unmap(This,Subresource)
2029 #define ID3D10Texture2D_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
2030 #else
2031 /*** IUnknown methods ***/
2032 static FORCEINLINE HRESULT ID3D10Texture2D_QueryInterface(ID3D10Texture2D* This,REFIID riid,void **ppvObject) {
2033     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2034 }
2035 static FORCEINLINE ULONG ID3D10Texture2D_AddRef(ID3D10Texture2D* This) {
2036     return This->lpVtbl->AddRef(This);
2037 }
2038 static FORCEINLINE ULONG ID3D10Texture2D_Release(ID3D10Texture2D* This) {
2039     return This->lpVtbl->Release(This);
2040 }
2041 /*** ID3D10DeviceChild methods ***/
2042 static FORCEINLINE void ID3D10Texture2D_GetDevice(ID3D10Texture2D* This,ID3D10Device **ppDevice) {
2043     This->lpVtbl->GetDevice(This,ppDevice);
2044 }
2045 static FORCEINLINE HRESULT ID3D10Texture2D_GetPrivateData(ID3D10Texture2D* This,REFGUID guid,UINT *pDataSize,void *pData) {
2046     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
2047 }
2048 static FORCEINLINE HRESULT ID3D10Texture2D_SetPrivateData(ID3D10Texture2D* This,REFGUID guid,UINT DataSize,const void *pData) {
2049     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
2050 }
2051 static FORCEINLINE HRESULT ID3D10Texture2D_SetPrivateDataInterface(ID3D10Texture2D* This,REFGUID guid,const IUnknown *pData) {
2052     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
2053 }
2054 /*** ID3D10Resource methods ***/
2055 static FORCEINLINE void ID3D10Texture2D_GetType(ID3D10Texture2D* This,D3D10_RESOURCE_DIMENSION *rType) {
2056     This->lpVtbl->GetType(This,rType);
2057 }
2058 static FORCEINLINE void ID3D10Texture2D_SetEvictionPriority(ID3D10Texture2D* This,UINT EvictionPriority) {
2059     This->lpVtbl->SetEvictionPriority(This,EvictionPriority);
2060 }
2061 static FORCEINLINE UINT ID3D10Texture2D_GetEvictionPriority(ID3D10Texture2D* This) {
2062     return This->lpVtbl->GetEvictionPriority(This);
2063 }
2064 /*** ID3D10Texture2D methods ***/
2065 static FORCEINLINE HRESULT ID3D10Texture2D_Map(ID3D10Texture2D* This,UINT Subresource,D3D10_MAP MapType,UINT MapFlags,D3D10_MAPPED_TEXTURE2D *pMappedTex2D) {
2066     return This->lpVtbl->Map(This,Subresource,MapType,MapFlags,pMappedTex2D);
2067 }
2068 static FORCEINLINE void ID3D10Texture2D_Unmap(ID3D10Texture2D* This,UINT Subresource) {
2069     This->lpVtbl->Unmap(This,Subresource);
2070 }
2071 static FORCEINLINE void ID3D10Texture2D_GetDesc(ID3D10Texture2D* This,D3D10_TEXTURE2D_DESC *pDesc) {
2072     This->lpVtbl->GetDesc(This,pDesc);
2073 }
2074 #endif
2075 #endif
2076 
2077 #endif
2078 
2079 
2080 #endif  /* __ID3D10Texture2D_INTERFACE_DEFINED__ */
2081 
2082 /*****************************************************************************
2083  * ID3D10Texture3D interface
2084  */
2085 #ifndef __ID3D10Texture3D_INTERFACE_DEFINED__
2086 #define __ID3D10Texture3D_INTERFACE_DEFINED__
2087 
2088 DEFINE_GUID(IID_ID3D10Texture3D, 0x9b7e4c05, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
2089 #if defined(__cplusplus) && !defined(CINTERFACE)
2090 MIDL_INTERFACE("9b7e4c05-342c-4106-a19f-4f2704f689f0")
2091 ID3D10Texture3D : public ID3D10Resource
2092 {
2093     virtual HRESULT STDMETHODCALLTYPE Map(
2094         UINT Subresource,
2095         D3D10_MAP MapType,
2096         UINT MapFlags,
2097         D3D10_MAPPED_TEXTURE3D *pMappedTex3D) = 0;
2098 
2099     virtual void STDMETHODCALLTYPE Unmap(
2100         UINT Subresource) = 0;
2101 
2102     virtual void STDMETHODCALLTYPE GetDesc(
2103         D3D10_TEXTURE3D_DESC *pDesc) = 0;
2104 
2105 };
2106 #ifdef __CRT_UUID_DECL
2107 __CRT_UUID_DECL(ID3D10Texture3D, 0x9b7e4c05, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
2108 #endif
2109 #else
2110 typedef struct ID3D10Texture3DVtbl {
2111     BEGIN_INTERFACE
2112 
2113     /*** IUnknown methods ***/
2114     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2115         ID3D10Texture3D *This,
2116         REFIID riid,
2117         void **ppvObject);
2118 
2119     ULONG (STDMETHODCALLTYPE *AddRef)(
2120         ID3D10Texture3D *This);
2121 
2122     ULONG (STDMETHODCALLTYPE *Release)(
2123         ID3D10Texture3D *This);
2124 
2125     /*** ID3D10DeviceChild methods ***/
2126     void (STDMETHODCALLTYPE *GetDevice)(
2127         ID3D10Texture3D *This,
2128         ID3D10Device **ppDevice);
2129 
2130     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
2131         ID3D10Texture3D *This,
2132         REFGUID guid,
2133         UINT *pDataSize,
2134         void *pData);
2135 
2136     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
2137         ID3D10Texture3D *This,
2138         REFGUID guid,
2139         UINT DataSize,
2140         const void *pData);
2141 
2142     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
2143         ID3D10Texture3D *This,
2144         REFGUID guid,
2145         const IUnknown *pData);
2146 
2147     /*** ID3D10Resource methods ***/
2148     void (STDMETHODCALLTYPE *GetType)(
2149         ID3D10Texture3D *This,
2150         D3D10_RESOURCE_DIMENSION *rType);
2151 
2152     void (STDMETHODCALLTYPE *SetEvictionPriority)(
2153         ID3D10Texture3D *This,
2154         UINT EvictionPriority);
2155 
2156     UINT (STDMETHODCALLTYPE *GetEvictionPriority)(
2157         ID3D10Texture3D *This);
2158 
2159     /*** ID3D10Texture3D methods ***/
2160     HRESULT (STDMETHODCALLTYPE *Map)(
2161         ID3D10Texture3D *This,
2162         UINT Subresource,
2163         D3D10_MAP MapType,
2164         UINT MapFlags,
2165         D3D10_MAPPED_TEXTURE3D *pMappedTex3D);
2166 
2167     void (STDMETHODCALLTYPE *Unmap)(
2168         ID3D10Texture3D *This,
2169         UINT Subresource);
2170 
2171     void (STDMETHODCALLTYPE *GetDesc)(
2172         ID3D10Texture3D *This,
2173         D3D10_TEXTURE3D_DESC *pDesc);
2174 
2175     END_INTERFACE
2176 } ID3D10Texture3DVtbl;
2177 
2178 interface ID3D10Texture3D {
2179     CONST_VTBL ID3D10Texture3DVtbl* lpVtbl;
2180 };
2181 
2182 #ifdef COBJMACROS
2183 #ifndef WIDL_C_INLINE_WRAPPERS
2184 /*** IUnknown methods ***/
2185 #define ID3D10Texture3D_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2186 #define ID3D10Texture3D_AddRef(This) (This)->lpVtbl->AddRef(This)
2187 #define ID3D10Texture3D_Release(This) (This)->lpVtbl->Release(This)
2188 /*** ID3D10DeviceChild methods ***/
2189 #define ID3D10Texture3D_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
2190 #define ID3D10Texture3D_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
2191 #define ID3D10Texture3D_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
2192 #define ID3D10Texture3D_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
2193 /*** ID3D10Resource methods ***/
2194 #define ID3D10Texture3D_GetType(This,rType) (This)->lpVtbl->GetType(This,rType)
2195 #define ID3D10Texture3D_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority)
2196 #define ID3D10Texture3D_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This)
2197 /*** ID3D10Texture3D methods ***/
2198 #define ID3D10Texture3D_Map(This,Subresource,MapType,MapFlags,pMappedTex3D) (This)->lpVtbl->Map(This,Subresource,MapType,MapFlags,pMappedTex3D)
2199 #define ID3D10Texture3D_Unmap(This,Subresource) (This)->lpVtbl->Unmap(This,Subresource)
2200 #define ID3D10Texture3D_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
2201 #else
2202 /*** IUnknown methods ***/
2203 static FORCEINLINE HRESULT ID3D10Texture3D_QueryInterface(ID3D10Texture3D* This,REFIID riid,void **ppvObject) {
2204     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2205 }
2206 static FORCEINLINE ULONG ID3D10Texture3D_AddRef(ID3D10Texture3D* This) {
2207     return This->lpVtbl->AddRef(This);
2208 }
2209 static FORCEINLINE ULONG ID3D10Texture3D_Release(ID3D10Texture3D* This) {
2210     return This->lpVtbl->Release(This);
2211 }
2212 /*** ID3D10DeviceChild methods ***/
2213 static FORCEINLINE void ID3D10Texture3D_GetDevice(ID3D10Texture3D* This,ID3D10Device **ppDevice) {
2214     This->lpVtbl->GetDevice(This,ppDevice);
2215 }
2216 static FORCEINLINE HRESULT ID3D10Texture3D_GetPrivateData(ID3D10Texture3D* This,REFGUID guid,UINT *pDataSize,void *pData) {
2217     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
2218 }
2219 static FORCEINLINE HRESULT ID3D10Texture3D_SetPrivateData(ID3D10Texture3D* This,REFGUID guid,UINT DataSize,const void *pData) {
2220     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
2221 }
2222 static FORCEINLINE HRESULT ID3D10Texture3D_SetPrivateDataInterface(ID3D10Texture3D* This,REFGUID guid,const IUnknown *pData) {
2223     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
2224 }
2225 /*** ID3D10Resource methods ***/
2226 static FORCEINLINE void ID3D10Texture3D_GetType(ID3D10Texture3D* This,D3D10_RESOURCE_DIMENSION *rType) {
2227     This->lpVtbl->GetType(This,rType);
2228 }
2229 static FORCEINLINE void ID3D10Texture3D_SetEvictionPriority(ID3D10Texture3D* This,UINT EvictionPriority) {
2230     This->lpVtbl->SetEvictionPriority(This,EvictionPriority);
2231 }
2232 static FORCEINLINE UINT ID3D10Texture3D_GetEvictionPriority(ID3D10Texture3D* This) {
2233     return This->lpVtbl->GetEvictionPriority(This);
2234 }
2235 /*** ID3D10Texture3D methods ***/
2236 static FORCEINLINE HRESULT ID3D10Texture3D_Map(ID3D10Texture3D* This,UINT Subresource,D3D10_MAP MapType,UINT MapFlags,D3D10_MAPPED_TEXTURE3D *pMappedTex3D) {
2237     return This->lpVtbl->Map(This,Subresource,MapType,MapFlags,pMappedTex3D);
2238 }
2239 static FORCEINLINE void ID3D10Texture3D_Unmap(ID3D10Texture3D* This,UINT Subresource) {
2240     This->lpVtbl->Unmap(This,Subresource);
2241 }
2242 static FORCEINLINE void ID3D10Texture3D_GetDesc(ID3D10Texture3D* This,D3D10_TEXTURE3D_DESC *pDesc) {
2243     This->lpVtbl->GetDesc(This,pDesc);
2244 }
2245 #endif
2246 #endif
2247 
2248 #endif
2249 
2250 
2251 #endif  /* __ID3D10Texture3D_INTERFACE_DEFINED__ */
2252 
2253 /*****************************************************************************
2254  * ID3D10View interface
2255  */
2256 #ifndef __ID3D10View_INTERFACE_DEFINED__
2257 #define __ID3D10View_INTERFACE_DEFINED__
2258 
2259 DEFINE_GUID(IID_ID3D10View, 0xc902b03f, 0x60a7, 0x49ba, 0x99,0x36, 0x2a,0x3a,0xb3,0x7a,0x7e,0x33);
2260 #if defined(__cplusplus) && !defined(CINTERFACE)
2261 MIDL_INTERFACE("c902b03f-60a7-49ba-9936-2a3ab37a7e33")
2262 ID3D10View : public ID3D10DeviceChild
2263 {
2264     virtual void STDMETHODCALLTYPE GetResource(
2265         ID3D10Resource **ppResource) = 0;
2266 
2267 };
2268 #ifdef __CRT_UUID_DECL
2269 __CRT_UUID_DECL(ID3D10View, 0xc902b03f, 0x60a7, 0x49ba, 0x99,0x36, 0x2a,0x3a,0xb3,0x7a,0x7e,0x33)
2270 #endif
2271 #else
2272 typedef struct ID3D10ViewVtbl {
2273     BEGIN_INTERFACE
2274 
2275     /*** IUnknown methods ***/
2276     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2277         ID3D10View *This,
2278         REFIID riid,
2279         void **ppvObject);
2280 
2281     ULONG (STDMETHODCALLTYPE *AddRef)(
2282         ID3D10View *This);
2283 
2284     ULONG (STDMETHODCALLTYPE *Release)(
2285         ID3D10View *This);
2286 
2287     /*** ID3D10DeviceChild methods ***/
2288     void (STDMETHODCALLTYPE *GetDevice)(
2289         ID3D10View *This,
2290         ID3D10Device **ppDevice);
2291 
2292     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
2293         ID3D10View *This,
2294         REFGUID guid,
2295         UINT *pDataSize,
2296         void *pData);
2297 
2298     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
2299         ID3D10View *This,
2300         REFGUID guid,
2301         UINT DataSize,
2302         const void *pData);
2303 
2304     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
2305         ID3D10View *This,
2306         REFGUID guid,
2307         const IUnknown *pData);
2308 
2309     /*** ID3D10View methods ***/
2310     void (STDMETHODCALLTYPE *GetResource)(
2311         ID3D10View *This,
2312         ID3D10Resource **ppResource);
2313 
2314     END_INTERFACE
2315 } ID3D10ViewVtbl;
2316 
2317 interface ID3D10View {
2318     CONST_VTBL ID3D10ViewVtbl* lpVtbl;
2319 };
2320 
2321 #ifdef COBJMACROS
2322 #ifndef WIDL_C_INLINE_WRAPPERS
2323 /*** IUnknown methods ***/
2324 #define ID3D10View_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2325 #define ID3D10View_AddRef(This) (This)->lpVtbl->AddRef(This)
2326 #define ID3D10View_Release(This) (This)->lpVtbl->Release(This)
2327 /*** ID3D10DeviceChild methods ***/
2328 #define ID3D10View_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
2329 #define ID3D10View_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
2330 #define ID3D10View_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
2331 #define ID3D10View_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
2332 /*** ID3D10View methods ***/
2333 #define ID3D10View_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource)
2334 #else
2335 /*** IUnknown methods ***/
2336 static FORCEINLINE HRESULT ID3D10View_QueryInterface(ID3D10View* This,REFIID riid,void **ppvObject) {
2337     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2338 }
2339 static FORCEINLINE ULONG ID3D10View_AddRef(ID3D10View* This) {
2340     return This->lpVtbl->AddRef(This);
2341 }
2342 static FORCEINLINE ULONG ID3D10View_Release(ID3D10View* This) {
2343     return This->lpVtbl->Release(This);
2344 }
2345 /*** ID3D10DeviceChild methods ***/
2346 static FORCEINLINE void ID3D10View_GetDevice(ID3D10View* This,ID3D10Device **ppDevice) {
2347     This->lpVtbl->GetDevice(This,ppDevice);
2348 }
2349 static FORCEINLINE HRESULT ID3D10View_GetPrivateData(ID3D10View* This,REFGUID guid,UINT *pDataSize,void *pData) {
2350     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
2351 }
2352 static FORCEINLINE HRESULT ID3D10View_SetPrivateData(ID3D10View* This,REFGUID guid,UINT DataSize,const void *pData) {
2353     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
2354 }
2355 static FORCEINLINE HRESULT ID3D10View_SetPrivateDataInterface(ID3D10View* This,REFGUID guid,const IUnknown *pData) {
2356     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
2357 }
2358 /*** ID3D10View methods ***/
2359 static FORCEINLINE void ID3D10View_GetResource(ID3D10View* This,ID3D10Resource **ppResource) {
2360     This->lpVtbl->GetResource(This,ppResource);
2361 }
2362 #endif
2363 #endif
2364 
2365 #endif
2366 
2367 
2368 #endif  /* __ID3D10View_INTERFACE_DEFINED__ */
2369 
2370 /*****************************************************************************
2371  * ID3D10DepthStencilView interface
2372  */
2373 #ifndef __ID3D10DepthStencilView_INTERFACE_DEFINED__
2374 #define __ID3D10DepthStencilView_INTERFACE_DEFINED__
2375 
2376 DEFINE_GUID(IID_ID3D10DepthStencilView, 0x9b7e4c09, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
2377 #if defined(__cplusplus) && !defined(CINTERFACE)
2378 MIDL_INTERFACE("9b7e4c09-342c-4106-a19f-4f2704f689f0")
2379 ID3D10DepthStencilView : public ID3D10View
2380 {
2381     virtual void STDMETHODCALLTYPE GetDesc(
2382         D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc) = 0;
2383 
2384 };
2385 #ifdef __CRT_UUID_DECL
2386 __CRT_UUID_DECL(ID3D10DepthStencilView, 0x9b7e4c09, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
2387 #endif
2388 #else
2389 typedef struct ID3D10DepthStencilViewVtbl {
2390     BEGIN_INTERFACE
2391 
2392     /*** IUnknown methods ***/
2393     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2394         ID3D10DepthStencilView *This,
2395         REFIID riid,
2396         void **ppvObject);
2397 
2398     ULONG (STDMETHODCALLTYPE *AddRef)(
2399         ID3D10DepthStencilView *This);
2400 
2401     ULONG (STDMETHODCALLTYPE *Release)(
2402         ID3D10DepthStencilView *This);
2403 
2404     /*** ID3D10DeviceChild methods ***/
2405     void (STDMETHODCALLTYPE *GetDevice)(
2406         ID3D10DepthStencilView *This,
2407         ID3D10Device **ppDevice);
2408 
2409     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
2410         ID3D10DepthStencilView *This,
2411         REFGUID guid,
2412         UINT *pDataSize,
2413         void *pData);
2414 
2415     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
2416         ID3D10DepthStencilView *This,
2417         REFGUID guid,
2418         UINT DataSize,
2419         const void *pData);
2420 
2421     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
2422         ID3D10DepthStencilView *This,
2423         REFGUID guid,
2424         const IUnknown *pData);
2425 
2426     /*** ID3D10View methods ***/
2427     void (STDMETHODCALLTYPE *GetResource)(
2428         ID3D10DepthStencilView *This,
2429         ID3D10Resource **ppResource);
2430 
2431     /*** ID3D10DepthStencilView methods ***/
2432     void (STDMETHODCALLTYPE *GetDesc)(
2433         ID3D10DepthStencilView *This,
2434         D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc);
2435 
2436     END_INTERFACE
2437 } ID3D10DepthStencilViewVtbl;
2438 
2439 interface ID3D10DepthStencilView {
2440     CONST_VTBL ID3D10DepthStencilViewVtbl* lpVtbl;
2441 };
2442 
2443 #ifdef COBJMACROS
2444 #ifndef WIDL_C_INLINE_WRAPPERS
2445 /*** IUnknown methods ***/
2446 #define ID3D10DepthStencilView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2447 #define ID3D10DepthStencilView_AddRef(This) (This)->lpVtbl->AddRef(This)
2448 #define ID3D10DepthStencilView_Release(This) (This)->lpVtbl->Release(This)
2449 /*** ID3D10DeviceChild methods ***/
2450 #define ID3D10DepthStencilView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
2451 #define ID3D10DepthStencilView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
2452 #define ID3D10DepthStencilView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
2453 #define ID3D10DepthStencilView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
2454 /*** ID3D10View methods ***/
2455 #define ID3D10DepthStencilView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource)
2456 /*** ID3D10DepthStencilView methods ***/
2457 #define ID3D10DepthStencilView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
2458 #else
2459 /*** IUnknown methods ***/
2460 static FORCEINLINE HRESULT ID3D10DepthStencilView_QueryInterface(ID3D10DepthStencilView* This,REFIID riid,void **ppvObject) {
2461     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2462 }
2463 static FORCEINLINE ULONG ID3D10DepthStencilView_AddRef(ID3D10DepthStencilView* This) {
2464     return This->lpVtbl->AddRef(This);
2465 }
2466 static FORCEINLINE ULONG ID3D10DepthStencilView_Release(ID3D10DepthStencilView* This) {
2467     return This->lpVtbl->Release(This);
2468 }
2469 /*** ID3D10DeviceChild methods ***/
2470 static FORCEINLINE void ID3D10DepthStencilView_GetDevice(ID3D10DepthStencilView* This,ID3D10Device **ppDevice) {
2471     This->lpVtbl->GetDevice(This,ppDevice);
2472 }
2473 static FORCEINLINE HRESULT ID3D10DepthStencilView_GetPrivateData(ID3D10DepthStencilView* This,REFGUID guid,UINT *pDataSize,void *pData) {
2474     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
2475 }
2476 static FORCEINLINE HRESULT ID3D10DepthStencilView_SetPrivateData(ID3D10DepthStencilView* This,REFGUID guid,UINT DataSize,const void *pData) {
2477     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
2478 }
2479 static FORCEINLINE HRESULT ID3D10DepthStencilView_SetPrivateDataInterface(ID3D10DepthStencilView* This,REFGUID guid,const IUnknown *pData) {
2480     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
2481 }
2482 /*** ID3D10View methods ***/
2483 static FORCEINLINE void ID3D10DepthStencilView_GetResource(ID3D10DepthStencilView* This,ID3D10Resource **ppResource) {
2484     This->lpVtbl->GetResource(This,ppResource);
2485 }
2486 /*** ID3D10DepthStencilView methods ***/
2487 static FORCEINLINE void ID3D10DepthStencilView_GetDesc(ID3D10DepthStencilView* This,D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc) {
2488     This->lpVtbl->GetDesc(This,pDesc);
2489 }
2490 #endif
2491 #endif
2492 
2493 #endif
2494 
2495 
2496 #endif  /* __ID3D10DepthStencilView_INTERFACE_DEFINED__ */
2497 
2498 /*****************************************************************************
2499  * ID3D10RenderTargetView interface
2500  */
2501 #ifndef __ID3D10RenderTargetView_INTERFACE_DEFINED__
2502 #define __ID3D10RenderTargetView_INTERFACE_DEFINED__
2503 
2504 DEFINE_GUID(IID_ID3D10RenderTargetView, 0x9b7e4c08, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
2505 #if defined(__cplusplus) && !defined(CINTERFACE)
2506 MIDL_INTERFACE("9b7e4c08-342c-4106-a19f-4f2704f689f0")
2507 ID3D10RenderTargetView : public ID3D10View
2508 {
2509     virtual void STDMETHODCALLTYPE GetDesc(
2510         D3D10_RENDER_TARGET_VIEW_DESC *pDesc) = 0;
2511 
2512 };
2513 #ifdef __CRT_UUID_DECL
2514 __CRT_UUID_DECL(ID3D10RenderTargetView, 0x9b7e4c08, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
2515 #endif
2516 #else
2517 typedef struct ID3D10RenderTargetViewVtbl {
2518     BEGIN_INTERFACE
2519 
2520     /*** IUnknown methods ***/
2521     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2522         ID3D10RenderTargetView *This,
2523         REFIID riid,
2524         void **ppvObject);
2525 
2526     ULONG (STDMETHODCALLTYPE *AddRef)(
2527         ID3D10RenderTargetView *This);
2528 
2529     ULONG (STDMETHODCALLTYPE *Release)(
2530         ID3D10RenderTargetView *This);
2531 
2532     /*** ID3D10DeviceChild methods ***/
2533     void (STDMETHODCALLTYPE *GetDevice)(
2534         ID3D10RenderTargetView *This,
2535         ID3D10Device **ppDevice);
2536 
2537     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
2538         ID3D10RenderTargetView *This,
2539         REFGUID guid,
2540         UINT *pDataSize,
2541         void *pData);
2542 
2543     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
2544         ID3D10RenderTargetView *This,
2545         REFGUID guid,
2546         UINT DataSize,
2547         const void *pData);
2548 
2549     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
2550         ID3D10RenderTargetView *This,
2551         REFGUID guid,
2552         const IUnknown *pData);
2553 
2554     /*** ID3D10View methods ***/
2555     void (STDMETHODCALLTYPE *GetResource)(
2556         ID3D10RenderTargetView *This,
2557         ID3D10Resource **ppResource);
2558 
2559     /*** ID3D10RenderTargetView methods ***/
2560     void (STDMETHODCALLTYPE *GetDesc)(
2561         ID3D10RenderTargetView *This,
2562         D3D10_RENDER_TARGET_VIEW_DESC *pDesc);
2563 
2564     END_INTERFACE
2565 } ID3D10RenderTargetViewVtbl;
2566 
2567 interface ID3D10RenderTargetView {
2568     CONST_VTBL ID3D10RenderTargetViewVtbl* lpVtbl;
2569 };
2570 
2571 #ifdef COBJMACROS
2572 #ifndef WIDL_C_INLINE_WRAPPERS
2573 /*** IUnknown methods ***/
2574 #define ID3D10RenderTargetView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2575 #define ID3D10RenderTargetView_AddRef(This) (This)->lpVtbl->AddRef(This)
2576 #define ID3D10RenderTargetView_Release(This) (This)->lpVtbl->Release(This)
2577 /*** ID3D10DeviceChild methods ***/
2578 #define ID3D10RenderTargetView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
2579 #define ID3D10RenderTargetView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
2580 #define ID3D10RenderTargetView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
2581 #define ID3D10RenderTargetView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
2582 /*** ID3D10View methods ***/
2583 #define ID3D10RenderTargetView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource)
2584 /*** ID3D10RenderTargetView methods ***/
2585 #define ID3D10RenderTargetView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
2586 #else
2587 /*** IUnknown methods ***/
2588 static FORCEINLINE HRESULT ID3D10RenderTargetView_QueryInterface(ID3D10RenderTargetView* This,REFIID riid,void **ppvObject) {
2589     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2590 }
2591 static FORCEINLINE ULONG ID3D10RenderTargetView_AddRef(ID3D10RenderTargetView* This) {
2592     return This->lpVtbl->AddRef(This);
2593 }
2594 static FORCEINLINE ULONG ID3D10RenderTargetView_Release(ID3D10RenderTargetView* This) {
2595     return This->lpVtbl->Release(This);
2596 }
2597 /*** ID3D10DeviceChild methods ***/
2598 static FORCEINLINE void ID3D10RenderTargetView_GetDevice(ID3D10RenderTargetView* This,ID3D10Device **ppDevice) {
2599     This->lpVtbl->GetDevice(This,ppDevice);
2600 }
2601 static FORCEINLINE HRESULT ID3D10RenderTargetView_GetPrivateData(ID3D10RenderTargetView* This,REFGUID guid,UINT *pDataSize,void *pData) {
2602     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
2603 }
2604 static FORCEINLINE HRESULT ID3D10RenderTargetView_SetPrivateData(ID3D10RenderTargetView* This,REFGUID guid,UINT DataSize,const void *pData) {
2605     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
2606 }
2607 static FORCEINLINE HRESULT ID3D10RenderTargetView_SetPrivateDataInterface(ID3D10RenderTargetView* This,REFGUID guid,const IUnknown *pData) {
2608     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
2609 }
2610 /*** ID3D10View methods ***/
2611 static FORCEINLINE void ID3D10RenderTargetView_GetResource(ID3D10RenderTargetView* This,ID3D10Resource **ppResource) {
2612     This->lpVtbl->GetResource(This,ppResource);
2613 }
2614 /*** ID3D10RenderTargetView methods ***/
2615 static FORCEINLINE void ID3D10RenderTargetView_GetDesc(ID3D10RenderTargetView* This,D3D10_RENDER_TARGET_VIEW_DESC *pDesc) {
2616     This->lpVtbl->GetDesc(This,pDesc);
2617 }
2618 #endif
2619 #endif
2620 
2621 #endif
2622 
2623 
2624 #endif  /* __ID3D10RenderTargetView_INTERFACE_DEFINED__ */
2625 
2626 /*****************************************************************************
2627  * ID3D10ShaderResourceView interface
2628  */
2629 #ifndef __ID3D10ShaderResourceView_INTERFACE_DEFINED__
2630 #define __ID3D10ShaderResourceView_INTERFACE_DEFINED__
2631 
2632 DEFINE_GUID(IID_ID3D10ShaderResourceView, 0x9b7e4c07, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
2633 #if defined(__cplusplus) && !defined(CINTERFACE)
2634 MIDL_INTERFACE("9b7e4c07-342c-4106-a19f-4f2704f689f0")
2635 ID3D10ShaderResourceView : public ID3D10View
2636 {
2637     virtual void STDMETHODCALLTYPE GetDesc(
2638         D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc) = 0;
2639 
2640 };
2641 #ifdef __CRT_UUID_DECL
2642 __CRT_UUID_DECL(ID3D10ShaderResourceView, 0x9b7e4c07, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
2643 #endif
2644 #else
2645 typedef struct ID3D10ShaderResourceViewVtbl {
2646     BEGIN_INTERFACE
2647 
2648     /*** IUnknown methods ***/
2649     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2650         ID3D10ShaderResourceView *This,
2651         REFIID riid,
2652         void **ppvObject);
2653 
2654     ULONG (STDMETHODCALLTYPE *AddRef)(
2655         ID3D10ShaderResourceView *This);
2656 
2657     ULONG (STDMETHODCALLTYPE *Release)(
2658         ID3D10ShaderResourceView *This);
2659 
2660     /*** ID3D10DeviceChild methods ***/
2661     void (STDMETHODCALLTYPE *GetDevice)(
2662         ID3D10ShaderResourceView *This,
2663         ID3D10Device **ppDevice);
2664 
2665     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
2666         ID3D10ShaderResourceView *This,
2667         REFGUID guid,
2668         UINT *pDataSize,
2669         void *pData);
2670 
2671     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
2672         ID3D10ShaderResourceView *This,
2673         REFGUID guid,
2674         UINT DataSize,
2675         const void *pData);
2676 
2677     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
2678         ID3D10ShaderResourceView *This,
2679         REFGUID guid,
2680         const IUnknown *pData);
2681 
2682     /*** ID3D10View methods ***/
2683     void (STDMETHODCALLTYPE *GetResource)(
2684         ID3D10ShaderResourceView *This,
2685         ID3D10Resource **ppResource);
2686 
2687     /*** ID3D10ShaderResourceView methods ***/
2688     void (STDMETHODCALLTYPE *GetDesc)(
2689         ID3D10ShaderResourceView *This,
2690         D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc);
2691 
2692     END_INTERFACE
2693 } ID3D10ShaderResourceViewVtbl;
2694 
2695 interface ID3D10ShaderResourceView {
2696     CONST_VTBL ID3D10ShaderResourceViewVtbl* lpVtbl;
2697 };
2698 
2699 #ifdef COBJMACROS
2700 #ifndef WIDL_C_INLINE_WRAPPERS
2701 /*** IUnknown methods ***/
2702 #define ID3D10ShaderResourceView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2703 #define ID3D10ShaderResourceView_AddRef(This) (This)->lpVtbl->AddRef(This)
2704 #define ID3D10ShaderResourceView_Release(This) (This)->lpVtbl->Release(This)
2705 /*** ID3D10DeviceChild methods ***/
2706 #define ID3D10ShaderResourceView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
2707 #define ID3D10ShaderResourceView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
2708 #define ID3D10ShaderResourceView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
2709 #define ID3D10ShaderResourceView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
2710 /*** ID3D10View methods ***/
2711 #define ID3D10ShaderResourceView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource)
2712 /*** ID3D10ShaderResourceView methods ***/
2713 #define ID3D10ShaderResourceView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
2714 #else
2715 /*** IUnknown methods ***/
2716 static FORCEINLINE HRESULT ID3D10ShaderResourceView_QueryInterface(ID3D10ShaderResourceView* This,REFIID riid,void **ppvObject) {
2717     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2718 }
2719 static FORCEINLINE ULONG ID3D10ShaderResourceView_AddRef(ID3D10ShaderResourceView* This) {
2720     return This->lpVtbl->AddRef(This);
2721 }
2722 static FORCEINLINE ULONG ID3D10ShaderResourceView_Release(ID3D10ShaderResourceView* This) {
2723     return This->lpVtbl->Release(This);
2724 }
2725 /*** ID3D10DeviceChild methods ***/
2726 static FORCEINLINE void ID3D10ShaderResourceView_GetDevice(ID3D10ShaderResourceView* This,ID3D10Device **ppDevice) {
2727     This->lpVtbl->GetDevice(This,ppDevice);
2728 }
2729 static FORCEINLINE HRESULT ID3D10ShaderResourceView_GetPrivateData(ID3D10ShaderResourceView* This,REFGUID guid,UINT *pDataSize,void *pData) {
2730     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
2731 }
2732 static FORCEINLINE HRESULT ID3D10ShaderResourceView_SetPrivateData(ID3D10ShaderResourceView* This,REFGUID guid,UINT DataSize,const void *pData) {
2733     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
2734 }
2735 static FORCEINLINE HRESULT ID3D10ShaderResourceView_SetPrivateDataInterface(ID3D10ShaderResourceView* This,REFGUID guid,const IUnknown *pData) {
2736     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
2737 }
2738 /*** ID3D10View methods ***/
2739 static FORCEINLINE void ID3D10ShaderResourceView_GetResource(ID3D10ShaderResourceView* This,ID3D10Resource **ppResource) {
2740     This->lpVtbl->GetResource(This,ppResource);
2741 }
2742 /*** ID3D10ShaderResourceView methods ***/
2743 static FORCEINLINE void ID3D10ShaderResourceView_GetDesc(ID3D10ShaderResourceView* This,D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc) {
2744     This->lpVtbl->GetDesc(This,pDesc);
2745 }
2746 #endif
2747 #endif
2748 
2749 #endif
2750 
2751 
2752 #endif  /* __ID3D10ShaderResourceView_INTERFACE_DEFINED__ */
2753 
2754 /*****************************************************************************
2755  * ID3D10BlendState interface
2756  */
2757 #ifndef __ID3D10BlendState_INTERFACE_DEFINED__
2758 #define __ID3D10BlendState_INTERFACE_DEFINED__
2759 
2760 DEFINE_GUID(IID_ID3D10BlendState, 0xedad8d19, 0x8a35, 0x4d6d, 0x85,0x66, 0x2e,0xa2,0x76,0xcd,0xe1,0x61);
2761 #if defined(__cplusplus) && !defined(CINTERFACE)
2762 MIDL_INTERFACE("edad8d19-8a35-4d6d-8566-2ea276cde161")
2763 ID3D10BlendState : public ID3D10DeviceChild
2764 {
2765     virtual void STDMETHODCALLTYPE GetDesc(
2766         D3D10_BLEND_DESC *pDesc) = 0;
2767 
2768 };
2769 #ifdef __CRT_UUID_DECL
2770 __CRT_UUID_DECL(ID3D10BlendState, 0xedad8d19, 0x8a35, 0x4d6d, 0x85,0x66, 0x2e,0xa2,0x76,0xcd,0xe1,0x61)
2771 #endif
2772 #else
2773 typedef struct ID3D10BlendStateVtbl {
2774     BEGIN_INTERFACE
2775 
2776     /*** IUnknown methods ***/
2777     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2778         ID3D10BlendState *This,
2779         REFIID riid,
2780         void **ppvObject);
2781 
2782     ULONG (STDMETHODCALLTYPE *AddRef)(
2783         ID3D10BlendState *This);
2784 
2785     ULONG (STDMETHODCALLTYPE *Release)(
2786         ID3D10BlendState *This);
2787 
2788     /*** ID3D10DeviceChild methods ***/
2789     void (STDMETHODCALLTYPE *GetDevice)(
2790         ID3D10BlendState *This,
2791         ID3D10Device **ppDevice);
2792 
2793     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
2794         ID3D10BlendState *This,
2795         REFGUID guid,
2796         UINT *pDataSize,
2797         void *pData);
2798 
2799     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
2800         ID3D10BlendState *This,
2801         REFGUID guid,
2802         UINT DataSize,
2803         const void *pData);
2804 
2805     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
2806         ID3D10BlendState *This,
2807         REFGUID guid,
2808         const IUnknown *pData);
2809 
2810     /*** ID3D10BlendState methods ***/
2811     void (STDMETHODCALLTYPE *GetDesc)(
2812         ID3D10BlendState *This,
2813         D3D10_BLEND_DESC *pDesc);
2814 
2815     END_INTERFACE
2816 } ID3D10BlendStateVtbl;
2817 
2818 interface ID3D10BlendState {
2819     CONST_VTBL ID3D10BlendStateVtbl* lpVtbl;
2820 };
2821 
2822 #ifdef COBJMACROS
2823 #ifndef WIDL_C_INLINE_WRAPPERS
2824 /*** IUnknown methods ***/
2825 #define ID3D10BlendState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2826 #define ID3D10BlendState_AddRef(This) (This)->lpVtbl->AddRef(This)
2827 #define ID3D10BlendState_Release(This) (This)->lpVtbl->Release(This)
2828 /*** ID3D10DeviceChild methods ***/
2829 #define ID3D10BlendState_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
2830 #define ID3D10BlendState_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
2831 #define ID3D10BlendState_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
2832 #define ID3D10BlendState_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
2833 /*** ID3D10BlendState methods ***/
2834 #define ID3D10BlendState_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
2835 #else
2836 /*** IUnknown methods ***/
2837 static FORCEINLINE HRESULT ID3D10BlendState_QueryInterface(ID3D10BlendState* This,REFIID riid,void **ppvObject) {
2838     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2839 }
2840 static FORCEINLINE ULONG ID3D10BlendState_AddRef(ID3D10BlendState* This) {
2841     return This->lpVtbl->AddRef(This);
2842 }
2843 static FORCEINLINE ULONG ID3D10BlendState_Release(ID3D10BlendState* This) {
2844     return This->lpVtbl->Release(This);
2845 }
2846 /*** ID3D10DeviceChild methods ***/
2847 static FORCEINLINE void ID3D10BlendState_GetDevice(ID3D10BlendState* This,ID3D10Device **ppDevice) {
2848     This->lpVtbl->GetDevice(This,ppDevice);
2849 }
2850 static FORCEINLINE HRESULT ID3D10BlendState_GetPrivateData(ID3D10BlendState* This,REFGUID guid,UINT *pDataSize,void *pData) {
2851     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
2852 }
2853 static FORCEINLINE HRESULT ID3D10BlendState_SetPrivateData(ID3D10BlendState* This,REFGUID guid,UINT DataSize,const void *pData) {
2854     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
2855 }
2856 static FORCEINLINE HRESULT ID3D10BlendState_SetPrivateDataInterface(ID3D10BlendState* This,REFGUID guid,const IUnknown *pData) {
2857     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
2858 }
2859 /*** ID3D10BlendState methods ***/
2860 static FORCEINLINE void ID3D10BlendState_GetDesc(ID3D10BlendState* This,D3D10_BLEND_DESC *pDesc) {
2861     This->lpVtbl->GetDesc(This,pDesc);
2862 }
2863 #endif
2864 #endif
2865 
2866 #endif
2867 
2868 
2869 #endif  /* __ID3D10BlendState_INTERFACE_DEFINED__ */
2870 
2871 /*****************************************************************************
2872  * ID3D10DepthStencilState interface
2873  */
2874 #ifndef __ID3D10DepthStencilState_INTERFACE_DEFINED__
2875 #define __ID3D10DepthStencilState_INTERFACE_DEFINED__
2876 
2877 DEFINE_GUID(IID_ID3D10DepthStencilState, 0x2b4b1cc8, 0xa4ad, 0x41f8, 0x83,0x22, 0xca,0x86,0xfc,0x3e,0xc6,0x75);
2878 #if defined(__cplusplus) && !defined(CINTERFACE)
2879 MIDL_INTERFACE("2b4b1cc8-a4ad-41f8-8322-ca86fc3ec675")
2880 ID3D10DepthStencilState : public ID3D10DeviceChild
2881 {
2882     virtual void STDMETHODCALLTYPE GetDesc(
2883         D3D10_DEPTH_STENCIL_DESC *pDesc) = 0;
2884 
2885 };
2886 #ifdef __CRT_UUID_DECL
2887 __CRT_UUID_DECL(ID3D10DepthStencilState, 0x2b4b1cc8, 0xa4ad, 0x41f8, 0x83,0x22, 0xca,0x86,0xfc,0x3e,0xc6,0x75)
2888 #endif
2889 #else
2890 typedef struct ID3D10DepthStencilStateVtbl {
2891     BEGIN_INTERFACE
2892 
2893     /*** IUnknown methods ***/
2894     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2895         ID3D10DepthStencilState *This,
2896         REFIID riid,
2897         void **ppvObject);
2898 
2899     ULONG (STDMETHODCALLTYPE *AddRef)(
2900         ID3D10DepthStencilState *This);
2901 
2902     ULONG (STDMETHODCALLTYPE *Release)(
2903         ID3D10DepthStencilState *This);
2904 
2905     /*** ID3D10DeviceChild methods ***/
2906     void (STDMETHODCALLTYPE *GetDevice)(
2907         ID3D10DepthStencilState *This,
2908         ID3D10Device **ppDevice);
2909 
2910     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
2911         ID3D10DepthStencilState *This,
2912         REFGUID guid,
2913         UINT *pDataSize,
2914         void *pData);
2915 
2916     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
2917         ID3D10DepthStencilState *This,
2918         REFGUID guid,
2919         UINT DataSize,
2920         const void *pData);
2921 
2922     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
2923         ID3D10DepthStencilState *This,
2924         REFGUID guid,
2925         const IUnknown *pData);
2926 
2927     /*** ID3D10DepthStencilState methods ***/
2928     void (STDMETHODCALLTYPE *GetDesc)(
2929         ID3D10DepthStencilState *This,
2930         D3D10_DEPTH_STENCIL_DESC *pDesc);
2931 
2932     END_INTERFACE
2933 } ID3D10DepthStencilStateVtbl;
2934 
2935 interface ID3D10DepthStencilState {
2936     CONST_VTBL ID3D10DepthStencilStateVtbl* lpVtbl;
2937 };
2938 
2939 #ifdef COBJMACROS
2940 #ifndef WIDL_C_INLINE_WRAPPERS
2941 /*** IUnknown methods ***/
2942 #define ID3D10DepthStencilState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2943 #define ID3D10DepthStencilState_AddRef(This) (This)->lpVtbl->AddRef(This)
2944 #define ID3D10DepthStencilState_Release(This) (This)->lpVtbl->Release(This)
2945 /*** ID3D10DeviceChild methods ***/
2946 #define ID3D10DepthStencilState_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
2947 #define ID3D10DepthStencilState_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
2948 #define ID3D10DepthStencilState_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
2949 #define ID3D10DepthStencilState_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
2950 /*** ID3D10DepthStencilState methods ***/
2951 #define ID3D10DepthStencilState_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
2952 #else
2953 /*** IUnknown methods ***/
2954 static FORCEINLINE HRESULT ID3D10DepthStencilState_QueryInterface(ID3D10DepthStencilState* This,REFIID riid,void **ppvObject) {
2955     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2956 }
2957 static FORCEINLINE ULONG ID3D10DepthStencilState_AddRef(ID3D10DepthStencilState* This) {
2958     return This->lpVtbl->AddRef(This);
2959 }
2960 static FORCEINLINE ULONG ID3D10DepthStencilState_Release(ID3D10DepthStencilState* This) {
2961     return This->lpVtbl->Release(This);
2962 }
2963 /*** ID3D10DeviceChild methods ***/
2964 static FORCEINLINE void ID3D10DepthStencilState_GetDevice(ID3D10DepthStencilState* This,ID3D10Device **ppDevice) {
2965     This->lpVtbl->GetDevice(This,ppDevice);
2966 }
2967 static FORCEINLINE HRESULT ID3D10DepthStencilState_GetPrivateData(ID3D10DepthStencilState* This,REFGUID guid,UINT *pDataSize,void *pData) {
2968     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
2969 }
2970 static FORCEINLINE HRESULT ID3D10DepthStencilState_SetPrivateData(ID3D10DepthStencilState* This,REFGUID guid,UINT DataSize,const void *pData) {
2971     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
2972 }
2973 static FORCEINLINE HRESULT ID3D10DepthStencilState_SetPrivateDataInterface(ID3D10DepthStencilState* This,REFGUID guid,const IUnknown *pData) {
2974     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
2975 }
2976 /*** ID3D10DepthStencilState methods ***/
2977 static FORCEINLINE void ID3D10DepthStencilState_GetDesc(ID3D10DepthStencilState* This,D3D10_DEPTH_STENCIL_DESC *pDesc) {
2978     This->lpVtbl->GetDesc(This,pDesc);
2979 }
2980 #endif
2981 #endif
2982 
2983 #endif
2984 
2985 
2986 #endif  /* __ID3D10DepthStencilState_INTERFACE_DEFINED__ */
2987 
2988 /*****************************************************************************
2989  * ID3D10GeometryShader interface
2990  */
2991 #ifndef __ID3D10GeometryShader_INTERFACE_DEFINED__
2992 #define __ID3D10GeometryShader_INTERFACE_DEFINED__
2993 
2994 DEFINE_GUID(IID_ID3D10GeometryShader, 0x6316be88, 0x54cd, 0x4040, 0xab,0x44, 0x20,0x46,0x1b,0xc8,0x1f,0x68);
2995 #if defined(__cplusplus) && !defined(CINTERFACE)
2996 MIDL_INTERFACE("6316be88-54cd-4040-ab44-20461bc81f68")
2997 ID3D10GeometryShader : public ID3D10DeviceChild
2998 {
2999 };
3000 #ifdef __CRT_UUID_DECL
3001 __CRT_UUID_DECL(ID3D10GeometryShader, 0x6316be88, 0x54cd, 0x4040, 0xab,0x44, 0x20,0x46,0x1b,0xc8,0x1f,0x68)
3002 #endif
3003 #else
3004 typedef struct ID3D10GeometryShaderVtbl {
3005     BEGIN_INTERFACE
3006 
3007     /*** IUnknown methods ***/
3008     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3009         ID3D10GeometryShader *This,
3010         REFIID riid,
3011         void **ppvObject);
3012 
3013     ULONG (STDMETHODCALLTYPE *AddRef)(
3014         ID3D10GeometryShader *This);
3015 
3016     ULONG (STDMETHODCALLTYPE *Release)(
3017         ID3D10GeometryShader *This);
3018 
3019     /*** ID3D10DeviceChild methods ***/
3020     void (STDMETHODCALLTYPE *GetDevice)(
3021         ID3D10GeometryShader *This,
3022         ID3D10Device **ppDevice);
3023 
3024     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
3025         ID3D10GeometryShader *This,
3026         REFGUID guid,
3027         UINT *pDataSize,
3028         void *pData);
3029 
3030     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
3031         ID3D10GeometryShader *This,
3032         REFGUID guid,
3033         UINT DataSize,
3034         const void *pData);
3035 
3036     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
3037         ID3D10GeometryShader *This,
3038         REFGUID guid,
3039         const IUnknown *pData);
3040 
3041     END_INTERFACE
3042 } ID3D10GeometryShaderVtbl;
3043 
3044 interface ID3D10GeometryShader {
3045     CONST_VTBL ID3D10GeometryShaderVtbl* lpVtbl;
3046 };
3047 
3048 #ifdef COBJMACROS
3049 #ifndef WIDL_C_INLINE_WRAPPERS
3050 /*** IUnknown methods ***/
3051 #define ID3D10GeometryShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3052 #define ID3D10GeometryShader_AddRef(This) (This)->lpVtbl->AddRef(This)
3053 #define ID3D10GeometryShader_Release(This) (This)->lpVtbl->Release(This)
3054 /*** ID3D10DeviceChild methods ***/
3055 #define ID3D10GeometryShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
3056 #define ID3D10GeometryShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
3057 #define ID3D10GeometryShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
3058 #define ID3D10GeometryShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
3059 #else
3060 /*** IUnknown methods ***/
3061 static FORCEINLINE HRESULT ID3D10GeometryShader_QueryInterface(ID3D10GeometryShader* This,REFIID riid,void **ppvObject) {
3062     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3063 }
3064 static FORCEINLINE ULONG ID3D10GeometryShader_AddRef(ID3D10GeometryShader* This) {
3065     return This->lpVtbl->AddRef(This);
3066 }
3067 static FORCEINLINE ULONG ID3D10GeometryShader_Release(ID3D10GeometryShader* This) {
3068     return This->lpVtbl->Release(This);
3069 }
3070 /*** ID3D10DeviceChild methods ***/
3071 static FORCEINLINE void ID3D10GeometryShader_GetDevice(ID3D10GeometryShader* This,ID3D10Device **ppDevice) {
3072     This->lpVtbl->GetDevice(This,ppDevice);
3073 }
3074 static FORCEINLINE HRESULT ID3D10GeometryShader_GetPrivateData(ID3D10GeometryShader* This,REFGUID guid,UINT *pDataSize,void *pData) {
3075     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
3076 }
3077 static FORCEINLINE HRESULT ID3D10GeometryShader_SetPrivateData(ID3D10GeometryShader* This,REFGUID guid,UINT DataSize,const void *pData) {
3078     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
3079 }
3080 static FORCEINLINE HRESULT ID3D10GeometryShader_SetPrivateDataInterface(ID3D10GeometryShader* This,REFGUID guid,const IUnknown *pData) {
3081     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
3082 }
3083 #endif
3084 #endif
3085 
3086 #endif
3087 
3088 
3089 #endif  /* __ID3D10GeometryShader_INTERFACE_DEFINED__ */
3090 
3091 /*****************************************************************************
3092  * ID3D10InputLayout interface
3093  */
3094 #ifndef __ID3D10InputLayout_INTERFACE_DEFINED__
3095 #define __ID3D10InputLayout_INTERFACE_DEFINED__
3096 
3097 DEFINE_GUID(IID_ID3D10InputLayout, 0x9b7e4c0b, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
3098 #if defined(__cplusplus) && !defined(CINTERFACE)
3099 MIDL_INTERFACE("9b7e4c0b-342c-4106-a19f-4f2704f689f0")
3100 ID3D10InputLayout : public ID3D10DeviceChild
3101 {
3102 };
3103 #ifdef __CRT_UUID_DECL
3104 __CRT_UUID_DECL(ID3D10InputLayout, 0x9b7e4c0b, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
3105 #endif
3106 #else
3107 typedef struct ID3D10InputLayoutVtbl {
3108     BEGIN_INTERFACE
3109 
3110     /*** IUnknown methods ***/
3111     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3112         ID3D10InputLayout *This,
3113         REFIID riid,
3114         void **ppvObject);
3115 
3116     ULONG (STDMETHODCALLTYPE *AddRef)(
3117         ID3D10InputLayout *This);
3118 
3119     ULONG (STDMETHODCALLTYPE *Release)(
3120         ID3D10InputLayout *This);
3121 
3122     /*** ID3D10DeviceChild methods ***/
3123     void (STDMETHODCALLTYPE *GetDevice)(
3124         ID3D10InputLayout *This,
3125         ID3D10Device **ppDevice);
3126 
3127     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
3128         ID3D10InputLayout *This,
3129         REFGUID guid,
3130         UINT *pDataSize,
3131         void *pData);
3132 
3133     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
3134         ID3D10InputLayout *This,
3135         REFGUID guid,
3136         UINT DataSize,
3137         const void *pData);
3138 
3139     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
3140         ID3D10InputLayout *This,
3141         REFGUID guid,
3142         const IUnknown *pData);
3143 
3144     END_INTERFACE
3145 } ID3D10InputLayoutVtbl;
3146 
3147 interface ID3D10InputLayout {
3148     CONST_VTBL ID3D10InputLayoutVtbl* lpVtbl;
3149 };
3150 
3151 #ifdef COBJMACROS
3152 #ifndef WIDL_C_INLINE_WRAPPERS
3153 /*** IUnknown methods ***/
3154 #define ID3D10InputLayout_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3155 #define ID3D10InputLayout_AddRef(This) (This)->lpVtbl->AddRef(This)
3156 #define ID3D10InputLayout_Release(This) (This)->lpVtbl->Release(This)
3157 /*** ID3D10DeviceChild methods ***/
3158 #define ID3D10InputLayout_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
3159 #define ID3D10InputLayout_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
3160 #define ID3D10InputLayout_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
3161 #define ID3D10InputLayout_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
3162 #else
3163 /*** IUnknown methods ***/
3164 static FORCEINLINE HRESULT ID3D10InputLayout_QueryInterface(ID3D10InputLayout* This,REFIID riid,void **ppvObject) {
3165     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3166 }
3167 static FORCEINLINE ULONG ID3D10InputLayout_AddRef(ID3D10InputLayout* This) {
3168     return This->lpVtbl->AddRef(This);
3169 }
3170 static FORCEINLINE ULONG ID3D10InputLayout_Release(ID3D10InputLayout* This) {
3171     return This->lpVtbl->Release(This);
3172 }
3173 /*** ID3D10DeviceChild methods ***/
3174 static FORCEINLINE void ID3D10InputLayout_GetDevice(ID3D10InputLayout* This,ID3D10Device **ppDevice) {
3175     This->lpVtbl->GetDevice(This,ppDevice);
3176 }
3177 static FORCEINLINE HRESULT ID3D10InputLayout_GetPrivateData(ID3D10InputLayout* This,REFGUID guid,UINT *pDataSize,void *pData) {
3178     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
3179 }
3180 static FORCEINLINE HRESULT ID3D10InputLayout_SetPrivateData(ID3D10InputLayout* This,REFGUID guid,UINT DataSize,const void *pData) {
3181     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
3182 }
3183 static FORCEINLINE HRESULT ID3D10InputLayout_SetPrivateDataInterface(ID3D10InputLayout* This,REFGUID guid,const IUnknown *pData) {
3184     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
3185 }
3186 #endif
3187 #endif
3188 
3189 #endif
3190 
3191 
3192 #endif  /* __ID3D10InputLayout_INTERFACE_DEFINED__ */
3193 
3194 /*****************************************************************************
3195  * ID3D10PixelShader interface
3196  */
3197 #ifndef __ID3D10PixelShader_INTERFACE_DEFINED__
3198 #define __ID3D10PixelShader_INTERFACE_DEFINED__
3199 
3200 DEFINE_GUID(IID_ID3D10PixelShader, 0x4968b601, 0x9d00, 0x4cde, 0x83,0x46, 0x8e,0x7f,0x67,0x58,0x19,0xb6);
3201 #if defined(__cplusplus) && !defined(CINTERFACE)
3202 MIDL_INTERFACE("4968b601-9d00-4cde-8346-8e7f675819b6")
3203 ID3D10PixelShader : public ID3D10DeviceChild
3204 {
3205 };
3206 #ifdef __CRT_UUID_DECL
3207 __CRT_UUID_DECL(ID3D10PixelShader, 0x4968b601, 0x9d00, 0x4cde, 0x83,0x46, 0x8e,0x7f,0x67,0x58,0x19,0xb6)
3208 #endif
3209 #else
3210 typedef struct ID3D10PixelShaderVtbl {
3211     BEGIN_INTERFACE
3212 
3213     /*** IUnknown methods ***/
3214     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3215         ID3D10PixelShader *This,
3216         REFIID riid,
3217         void **ppvObject);
3218 
3219     ULONG (STDMETHODCALLTYPE *AddRef)(
3220         ID3D10PixelShader *This);
3221 
3222     ULONG (STDMETHODCALLTYPE *Release)(
3223         ID3D10PixelShader *This);
3224 
3225     /*** ID3D10DeviceChild methods ***/
3226     void (STDMETHODCALLTYPE *GetDevice)(
3227         ID3D10PixelShader *This,
3228         ID3D10Device **ppDevice);
3229 
3230     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
3231         ID3D10PixelShader *This,
3232         REFGUID guid,
3233         UINT *pDataSize,
3234         void *pData);
3235 
3236     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
3237         ID3D10PixelShader *This,
3238         REFGUID guid,
3239         UINT DataSize,
3240         const void *pData);
3241 
3242     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
3243         ID3D10PixelShader *This,
3244         REFGUID guid,
3245         const IUnknown *pData);
3246 
3247     END_INTERFACE
3248 } ID3D10PixelShaderVtbl;
3249 
3250 interface ID3D10PixelShader {
3251     CONST_VTBL ID3D10PixelShaderVtbl* lpVtbl;
3252 };
3253 
3254 #ifdef COBJMACROS
3255 #ifndef WIDL_C_INLINE_WRAPPERS
3256 /*** IUnknown methods ***/
3257 #define ID3D10PixelShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3258 #define ID3D10PixelShader_AddRef(This) (This)->lpVtbl->AddRef(This)
3259 #define ID3D10PixelShader_Release(This) (This)->lpVtbl->Release(This)
3260 /*** ID3D10DeviceChild methods ***/
3261 #define ID3D10PixelShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
3262 #define ID3D10PixelShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
3263 #define ID3D10PixelShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
3264 #define ID3D10PixelShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
3265 #else
3266 /*** IUnknown methods ***/
3267 static FORCEINLINE HRESULT ID3D10PixelShader_QueryInterface(ID3D10PixelShader* This,REFIID riid,void **ppvObject) {
3268     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3269 }
3270 static FORCEINLINE ULONG ID3D10PixelShader_AddRef(ID3D10PixelShader* This) {
3271     return This->lpVtbl->AddRef(This);
3272 }
3273 static FORCEINLINE ULONG ID3D10PixelShader_Release(ID3D10PixelShader* This) {
3274     return This->lpVtbl->Release(This);
3275 }
3276 /*** ID3D10DeviceChild methods ***/
3277 static FORCEINLINE void ID3D10PixelShader_GetDevice(ID3D10PixelShader* This,ID3D10Device **ppDevice) {
3278     This->lpVtbl->GetDevice(This,ppDevice);
3279 }
3280 static FORCEINLINE HRESULT ID3D10PixelShader_GetPrivateData(ID3D10PixelShader* This,REFGUID guid,UINT *pDataSize,void *pData) {
3281     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
3282 }
3283 static FORCEINLINE HRESULT ID3D10PixelShader_SetPrivateData(ID3D10PixelShader* This,REFGUID guid,UINT DataSize,const void *pData) {
3284     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
3285 }
3286 static FORCEINLINE HRESULT ID3D10PixelShader_SetPrivateDataInterface(ID3D10PixelShader* This,REFGUID guid,const IUnknown *pData) {
3287     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
3288 }
3289 #endif
3290 #endif
3291 
3292 #endif
3293 
3294 
3295 #endif  /* __ID3D10PixelShader_INTERFACE_DEFINED__ */
3296 
3297 /*****************************************************************************
3298  * ID3D10RasterizerState interface
3299  */
3300 #ifndef __ID3D10RasterizerState_INTERFACE_DEFINED__
3301 #define __ID3D10RasterizerState_INTERFACE_DEFINED__
3302 
3303 DEFINE_GUID(IID_ID3D10RasterizerState, 0xa2a07292, 0x89af, 0x4345, 0xbe,0x2e, 0xc5,0x3d,0x9f,0xbb,0x6e,0x9f);
3304 #if defined(__cplusplus) && !defined(CINTERFACE)
3305 MIDL_INTERFACE("a2a07292-89af-4345-be2e-c53d9fbb6e9f")
3306 ID3D10RasterizerState : public ID3D10DeviceChild
3307 {
3308     virtual void STDMETHODCALLTYPE GetDesc(
3309         D3D10_RASTERIZER_DESC *pDesc) = 0;
3310 
3311 };
3312 #ifdef __CRT_UUID_DECL
3313 __CRT_UUID_DECL(ID3D10RasterizerState, 0xa2a07292, 0x89af, 0x4345, 0xbe,0x2e, 0xc5,0x3d,0x9f,0xbb,0x6e,0x9f)
3314 #endif
3315 #else
3316 typedef struct ID3D10RasterizerStateVtbl {
3317     BEGIN_INTERFACE
3318 
3319     /*** IUnknown methods ***/
3320     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3321         ID3D10RasterizerState *This,
3322         REFIID riid,
3323         void **ppvObject);
3324 
3325     ULONG (STDMETHODCALLTYPE *AddRef)(
3326         ID3D10RasterizerState *This);
3327 
3328     ULONG (STDMETHODCALLTYPE *Release)(
3329         ID3D10RasterizerState *This);
3330 
3331     /*** ID3D10DeviceChild methods ***/
3332     void (STDMETHODCALLTYPE *GetDevice)(
3333         ID3D10RasterizerState *This,
3334         ID3D10Device **ppDevice);
3335 
3336     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
3337         ID3D10RasterizerState *This,
3338         REFGUID guid,
3339         UINT *pDataSize,
3340         void *pData);
3341 
3342     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
3343         ID3D10RasterizerState *This,
3344         REFGUID guid,
3345         UINT DataSize,
3346         const void *pData);
3347 
3348     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
3349         ID3D10RasterizerState *This,
3350         REFGUID guid,
3351         const IUnknown *pData);
3352 
3353     /*** ID3D10RasterizerState methods ***/
3354     void (STDMETHODCALLTYPE *GetDesc)(
3355         ID3D10RasterizerState *This,
3356         D3D10_RASTERIZER_DESC *pDesc);
3357 
3358     END_INTERFACE
3359 } ID3D10RasterizerStateVtbl;
3360 
3361 interface ID3D10RasterizerState {
3362     CONST_VTBL ID3D10RasterizerStateVtbl* lpVtbl;
3363 };
3364 
3365 #ifdef COBJMACROS
3366 #ifndef WIDL_C_INLINE_WRAPPERS
3367 /*** IUnknown methods ***/
3368 #define ID3D10RasterizerState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3369 #define ID3D10RasterizerState_AddRef(This) (This)->lpVtbl->AddRef(This)
3370 #define ID3D10RasterizerState_Release(This) (This)->lpVtbl->Release(This)
3371 /*** ID3D10DeviceChild methods ***/
3372 #define ID3D10RasterizerState_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
3373 #define ID3D10RasterizerState_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
3374 #define ID3D10RasterizerState_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
3375 #define ID3D10RasterizerState_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
3376 /*** ID3D10RasterizerState methods ***/
3377 #define ID3D10RasterizerState_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
3378 #else
3379 /*** IUnknown methods ***/
3380 static FORCEINLINE HRESULT ID3D10RasterizerState_QueryInterface(ID3D10RasterizerState* This,REFIID riid,void **ppvObject) {
3381     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3382 }
3383 static FORCEINLINE ULONG ID3D10RasterizerState_AddRef(ID3D10RasterizerState* This) {
3384     return This->lpVtbl->AddRef(This);
3385 }
3386 static FORCEINLINE ULONG ID3D10RasterizerState_Release(ID3D10RasterizerState* This) {
3387     return This->lpVtbl->Release(This);
3388 }
3389 /*** ID3D10DeviceChild methods ***/
3390 static FORCEINLINE void ID3D10RasterizerState_GetDevice(ID3D10RasterizerState* This,ID3D10Device **ppDevice) {
3391     This->lpVtbl->GetDevice(This,ppDevice);
3392 }
3393 static FORCEINLINE HRESULT ID3D10RasterizerState_GetPrivateData(ID3D10RasterizerState* This,REFGUID guid,UINT *pDataSize,void *pData) {
3394     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
3395 }
3396 static FORCEINLINE HRESULT ID3D10RasterizerState_SetPrivateData(ID3D10RasterizerState* This,REFGUID guid,UINT DataSize,const void *pData) {
3397     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
3398 }
3399 static FORCEINLINE HRESULT ID3D10RasterizerState_SetPrivateDataInterface(ID3D10RasterizerState* This,REFGUID guid,const IUnknown *pData) {
3400     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
3401 }
3402 /*** ID3D10RasterizerState methods ***/
3403 static FORCEINLINE void ID3D10RasterizerState_GetDesc(ID3D10RasterizerState* This,D3D10_RASTERIZER_DESC *pDesc) {
3404     This->lpVtbl->GetDesc(This,pDesc);
3405 }
3406 #endif
3407 #endif
3408 
3409 #endif
3410 
3411 
3412 #endif  /* __ID3D10RasterizerState_INTERFACE_DEFINED__ */
3413 
3414 /*****************************************************************************
3415  * ID3D10SamplerState interface
3416  */
3417 #ifndef __ID3D10SamplerState_INTERFACE_DEFINED__
3418 #define __ID3D10SamplerState_INTERFACE_DEFINED__
3419 
3420 DEFINE_GUID(IID_ID3D10SamplerState, 0x9b7e4c0c, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
3421 #if defined(__cplusplus) && !defined(CINTERFACE)
3422 MIDL_INTERFACE("9b7e4c0c-342c-4106-a19f-4f2704f689f0")
3423 ID3D10SamplerState : public ID3D10DeviceChild
3424 {
3425     virtual void STDMETHODCALLTYPE GetDesc(
3426         D3D10_SAMPLER_DESC *pDesc) = 0;
3427 
3428 };
3429 #ifdef __CRT_UUID_DECL
3430 __CRT_UUID_DECL(ID3D10SamplerState, 0x9b7e4c0c, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
3431 #endif
3432 #else
3433 typedef struct ID3D10SamplerStateVtbl {
3434     BEGIN_INTERFACE
3435 
3436     /*** IUnknown methods ***/
3437     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3438         ID3D10SamplerState *This,
3439         REFIID riid,
3440         void **ppvObject);
3441 
3442     ULONG (STDMETHODCALLTYPE *AddRef)(
3443         ID3D10SamplerState *This);
3444 
3445     ULONG (STDMETHODCALLTYPE *Release)(
3446         ID3D10SamplerState *This);
3447 
3448     /*** ID3D10DeviceChild methods ***/
3449     void (STDMETHODCALLTYPE *GetDevice)(
3450         ID3D10SamplerState *This,
3451         ID3D10Device **ppDevice);
3452 
3453     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
3454         ID3D10SamplerState *This,
3455         REFGUID guid,
3456         UINT *pDataSize,
3457         void *pData);
3458 
3459     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
3460         ID3D10SamplerState *This,
3461         REFGUID guid,
3462         UINT DataSize,
3463         const void *pData);
3464 
3465     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
3466         ID3D10SamplerState *This,
3467         REFGUID guid,
3468         const IUnknown *pData);
3469 
3470     /*** ID3D10SamplerState methods ***/
3471     void (STDMETHODCALLTYPE *GetDesc)(
3472         ID3D10SamplerState *This,
3473         D3D10_SAMPLER_DESC *pDesc);
3474 
3475     END_INTERFACE
3476 } ID3D10SamplerStateVtbl;
3477 
3478 interface ID3D10SamplerState {
3479     CONST_VTBL ID3D10SamplerStateVtbl* lpVtbl;
3480 };
3481 
3482 #ifdef COBJMACROS
3483 #ifndef WIDL_C_INLINE_WRAPPERS
3484 /*** IUnknown methods ***/
3485 #define ID3D10SamplerState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3486 #define ID3D10SamplerState_AddRef(This) (This)->lpVtbl->AddRef(This)
3487 #define ID3D10SamplerState_Release(This) (This)->lpVtbl->Release(This)
3488 /*** ID3D10DeviceChild methods ***/
3489 #define ID3D10SamplerState_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
3490 #define ID3D10SamplerState_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
3491 #define ID3D10SamplerState_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
3492 #define ID3D10SamplerState_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
3493 /*** ID3D10SamplerState methods ***/
3494 #define ID3D10SamplerState_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
3495 #else
3496 /*** IUnknown methods ***/
3497 static FORCEINLINE HRESULT ID3D10SamplerState_QueryInterface(ID3D10SamplerState* This,REFIID riid,void **ppvObject) {
3498     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3499 }
3500 static FORCEINLINE ULONG ID3D10SamplerState_AddRef(ID3D10SamplerState* This) {
3501     return This->lpVtbl->AddRef(This);
3502 }
3503 static FORCEINLINE ULONG ID3D10SamplerState_Release(ID3D10SamplerState* This) {
3504     return This->lpVtbl->Release(This);
3505 }
3506 /*** ID3D10DeviceChild methods ***/
3507 static FORCEINLINE void ID3D10SamplerState_GetDevice(ID3D10SamplerState* This,ID3D10Device **ppDevice) {
3508     This->lpVtbl->GetDevice(This,ppDevice);
3509 }
3510 static FORCEINLINE HRESULT ID3D10SamplerState_GetPrivateData(ID3D10SamplerState* This,REFGUID guid,UINT *pDataSize,void *pData) {
3511     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
3512 }
3513 static FORCEINLINE HRESULT ID3D10SamplerState_SetPrivateData(ID3D10SamplerState* This,REFGUID guid,UINT DataSize,const void *pData) {
3514     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
3515 }
3516 static FORCEINLINE HRESULT ID3D10SamplerState_SetPrivateDataInterface(ID3D10SamplerState* This,REFGUID guid,const IUnknown *pData) {
3517     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
3518 }
3519 /*** ID3D10SamplerState methods ***/
3520 static FORCEINLINE void ID3D10SamplerState_GetDesc(ID3D10SamplerState* This,D3D10_SAMPLER_DESC *pDesc) {
3521     This->lpVtbl->GetDesc(This,pDesc);
3522 }
3523 #endif
3524 #endif
3525 
3526 #endif
3527 
3528 
3529 #endif  /* __ID3D10SamplerState_INTERFACE_DEFINED__ */
3530 
3531 /*****************************************************************************
3532  * ID3D10VertexShader interface
3533  */
3534 #ifndef __ID3D10VertexShader_INTERFACE_DEFINED__
3535 #define __ID3D10VertexShader_INTERFACE_DEFINED__
3536 
3537 DEFINE_GUID(IID_ID3D10VertexShader, 0x9b7e4c0a, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
3538 #if defined(__cplusplus) && !defined(CINTERFACE)
3539 MIDL_INTERFACE("9b7e4c0a-342c-4106-a19f-4f2704f689f0")
3540 ID3D10VertexShader : public ID3D10DeviceChild
3541 {
3542 };
3543 #ifdef __CRT_UUID_DECL
3544 __CRT_UUID_DECL(ID3D10VertexShader, 0x9b7e4c0a, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
3545 #endif
3546 #else
3547 typedef struct ID3D10VertexShaderVtbl {
3548     BEGIN_INTERFACE
3549 
3550     /*** IUnknown methods ***/
3551     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3552         ID3D10VertexShader *This,
3553         REFIID riid,
3554         void **ppvObject);
3555 
3556     ULONG (STDMETHODCALLTYPE *AddRef)(
3557         ID3D10VertexShader *This);
3558 
3559     ULONG (STDMETHODCALLTYPE *Release)(
3560         ID3D10VertexShader *This);
3561 
3562     /*** ID3D10DeviceChild methods ***/
3563     void (STDMETHODCALLTYPE *GetDevice)(
3564         ID3D10VertexShader *This,
3565         ID3D10Device **ppDevice);
3566 
3567     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
3568         ID3D10VertexShader *This,
3569         REFGUID guid,
3570         UINT *pDataSize,
3571         void *pData);
3572 
3573     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
3574         ID3D10VertexShader *This,
3575         REFGUID guid,
3576         UINT DataSize,
3577         const void *pData);
3578 
3579     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
3580         ID3D10VertexShader *This,
3581         REFGUID guid,
3582         const IUnknown *pData);
3583 
3584     END_INTERFACE
3585 } ID3D10VertexShaderVtbl;
3586 
3587 interface ID3D10VertexShader {
3588     CONST_VTBL ID3D10VertexShaderVtbl* lpVtbl;
3589 };
3590 
3591 #ifdef COBJMACROS
3592 #ifndef WIDL_C_INLINE_WRAPPERS
3593 /*** IUnknown methods ***/
3594 #define ID3D10VertexShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3595 #define ID3D10VertexShader_AddRef(This) (This)->lpVtbl->AddRef(This)
3596 #define ID3D10VertexShader_Release(This) (This)->lpVtbl->Release(This)
3597 /*** ID3D10DeviceChild methods ***/
3598 #define ID3D10VertexShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
3599 #define ID3D10VertexShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
3600 #define ID3D10VertexShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
3601 #define ID3D10VertexShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
3602 #else
3603 /*** IUnknown methods ***/
3604 static FORCEINLINE HRESULT ID3D10VertexShader_QueryInterface(ID3D10VertexShader* This,REFIID riid,void **ppvObject) {
3605     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3606 }
3607 static FORCEINLINE ULONG ID3D10VertexShader_AddRef(ID3D10VertexShader* This) {
3608     return This->lpVtbl->AddRef(This);
3609 }
3610 static FORCEINLINE ULONG ID3D10VertexShader_Release(ID3D10VertexShader* This) {
3611     return This->lpVtbl->Release(This);
3612 }
3613 /*** ID3D10DeviceChild methods ***/
3614 static FORCEINLINE void ID3D10VertexShader_GetDevice(ID3D10VertexShader* This,ID3D10Device **ppDevice) {
3615     This->lpVtbl->GetDevice(This,ppDevice);
3616 }
3617 static FORCEINLINE HRESULT ID3D10VertexShader_GetPrivateData(ID3D10VertexShader* This,REFGUID guid,UINT *pDataSize,void *pData) {
3618     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
3619 }
3620 static FORCEINLINE HRESULT ID3D10VertexShader_SetPrivateData(ID3D10VertexShader* This,REFGUID guid,UINT DataSize,const void *pData) {
3621     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
3622 }
3623 static FORCEINLINE HRESULT ID3D10VertexShader_SetPrivateDataInterface(ID3D10VertexShader* This,REFGUID guid,const IUnknown *pData) {
3624     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
3625 }
3626 #endif
3627 #endif
3628 
3629 #endif
3630 
3631 
3632 #endif  /* __ID3D10VertexShader_INTERFACE_DEFINED__ */
3633 
3634 /*****************************************************************************
3635  * ID3D10Asynchronous interface
3636  */
3637 #ifndef __ID3D10Asynchronous_INTERFACE_DEFINED__
3638 #define __ID3D10Asynchronous_INTERFACE_DEFINED__
3639 
3640 DEFINE_GUID(IID_ID3D10Asynchronous, 0x9b7e4c0d, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
3641 #if defined(__cplusplus) && !defined(CINTERFACE)
3642 MIDL_INTERFACE("9b7e4c0d-342c-4106-a19f-4f2704f689f0")
3643 ID3D10Asynchronous : public ID3D10DeviceChild
3644 {
3645     virtual void STDMETHODCALLTYPE Begin(
3646         ) = 0;
3647 
3648     virtual void STDMETHODCALLTYPE End(
3649         ) = 0;
3650 
3651     virtual HRESULT STDMETHODCALLTYPE GetData(
3652         void *pData,
3653         UINT DataSize,
3654         UINT GetDataFlags) = 0;
3655 
3656     virtual UINT STDMETHODCALLTYPE GetDataSize(
3657         ) = 0;
3658 
3659 };
3660 #ifdef __CRT_UUID_DECL
3661 __CRT_UUID_DECL(ID3D10Asynchronous, 0x9b7e4c0d, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
3662 #endif
3663 #else
3664 typedef struct ID3D10AsynchronousVtbl {
3665     BEGIN_INTERFACE
3666 
3667     /*** IUnknown methods ***/
3668     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3669         ID3D10Asynchronous *This,
3670         REFIID riid,
3671         void **ppvObject);
3672 
3673     ULONG (STDMETHODCALLTYPE *AddRef)(
3674         ID3D10Asynchronous *This);
3675 
3676     ULONG (STDMETHODCALLTYPE *Release)(
3677         ID3D10Asynchronous *This);
3678 
3679     /*** ID3D10DeviceChild methods ***/
3680     void (STDMETHODCALLTYPE *GetDevice)(
3681         ID3D10Asynchronous *This,
3682         ID3D10Device **ppDevice);
3683 
3684     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
3685         ID3D10Asynchronous *This,
3686         REFGUID guid,
3687         UINT *pDataSize,
3688         void *pData);
3689 
3690     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
3691         ID3D10Asynchronous *This,
3692         REFGUID guid,
3693         UINT DataSize,
3694         const void *pData);
3695 
3696     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
3697         ID3D10Asynchronous *This,
3698         REFGUID guid,
3699         const IUnknown *pData);
3700 
3701     /*** ID3D10Asynchronous methods ***/
3702     void (STDMETHODCALLTYPE *Begin)(
3703         ID3D10Asynchronous *This);
3704 
3705     void (STDMETHODCALLTYPE *End)(
3706         ID3D10Asynchronous *This);
3707 
3708     HRESULT (STDMETHODCALLTYPE *GetData)(
3709         ID3D10Asynchronous *This,
3710         void *pData,
3711         UINT DataSize,
3712         UINT GetDataFlags);
3713 
3714     UINT (STDMETHODCALLTYPE *GetDataSize)(
3715         ID3D10Asynchronous *This);
3716 
3717     END_INTERFACE
3718 } ID3D10AsynchronousVtbl;
3719 
3720 interface ID3D10Asynchronous {
3721     CONST_VTBL ID3D10AsynchronousVtbl* lpVtbl;
3722 };
3723 
3724 #ifdef COBJMACROS
3725 #ifndef WIDL_C_INLINE_WRAPPERS
3726 /*** IUnknown methods ***/
3727 #define ID3D10Asynchronous_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3728 #define ID3D10Asynchronous_AddRef(This) (This)->lpVtbl->AddRef(This)
3729 #define ID3D10Asynchronous_Release(This) (This)->lpVtbl->Release(This)
3730 /*** ID3D10DeviceChild methods ***/
3731 #define ID3D10Asynchronous_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
3732 #define ID3D10Asynchronous_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
3733 #define ID3D10Asynchronous_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
3734 #define ID3D10Asynchronous_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
3735 /*** ID3D10Asynchronous methods ***/
3736 #define ID3D10Asynchronous_Begin(This) (This)->lpVtbl->Begin(This)
3737 #define ID3D10Asynchronous_End(This) (This)->lpVtbl->End(This)
3738 #define ID3D10Asynchronous_GetData(This,pData,DataSize,GetDataFlags) (This)->lpVtbl->GetData(This,pData,DataSize,GetDataFlags)
3739 #define ID3D10Asynchronous_GetDataSize(This) (This)->lpVtbl->GetDataSize(This)
3740 #else
3741 /*** IUnknown methods ***/
3742 static FORCEINLINE HRESULT ID3D10Asynchronous_QueryInterface(ID3D10Asynchronous* This,REFIID riid,void **ppvObject) {
3743     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3744 }
3745 static FORCEINLINE ULONG ID3D10Asynchronous_AddRef(ID3D10Asynchronous* This) {
3746     return This->lpVtbl->AddRef(This);
3747 }
3748 static FORCEINLINE ULONG ID3D10Asynchronous_Release(ID3D10Asynchronous* This) {
3749     return This->lpVtbl->Release(This);
3750 }
3751 /*** ID3D10DeviceChild methods ***/
3752 static FORCEINLINE void ID3D10Asynchronous_GetDevice(ID3D10Asynchronous* This,ID3D10Device **ppDevice) {
3753     This->lpVtbl->GetDevice(This,ppDevice);
3754 }
3755 static FORCEINLINE HRESULT ID3D10Asynchronous_GetPrivateData(ID3D10Asynchronous* This,REFGUID guid,UINT *pDataSize,void *pData) {
3756     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
3757 }
3758 static FORCEINLINE HRESULT ID3D10Asynchronous_SetPrivateData(ID3D10Asynchronous* This,REFGUID guid,UINT DataSize,const void *pData) {
3759     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
3760 }
3761 static FORCEINLINE HRESULT ID3D10Asynchronous_SetPrivateDataInterface(ID3D10Asynchronous* This,REFGUID guid,const IUnknown *pData) {
3762     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
3763 }
3764 /*** ID3D10Asynchronous methods ***/
3765 static FORCEINLINE void ID3D10Asynchronous_Begin(ID3D10Asynchronous* This) {
3766     This->lpVtbl->Begin(This);
3767 }
3768 static FORCEINLINE void ID3D10Asynchronous_End(ID3D10Asynchronous* This) {
3769     This->lpVtbl->End(This);
3770 }
3771 static FORCEINLINE HRESULT ID3D10Asynchronous_GetData(ID3D10Asynchronous* This,void *pData,UINT DataSize,UINT GetDataFlags) {
3772     return This->lpVtbl->GetData(This,pData,DataSize,GetDataFlags);
3773 }
3774 static FORCEINLINE UINT ID3D10Asynchronous_GetDataSize(ID3D10Asynchronous* This) {
3775     return This->lpVtbl->GetDataSize(This);
3776 }
3777 #endif
3778 #endif
3779 
3780 #endif
3781 
3782 
3783 #endif  /* __ID3D10Asynchronous_INTERFACE_DEFINED__ */
3784 
3785 /*****************************************************************************
3786  * ID3D10Counter interface
3787  */
3788 #ifndef __ID3D10Counter_INTERFACE_DEFINED__
3789 #define __ID3D10Counter_INTERFACE_DEFINED__
3790 
3791 DEFINE_GUID(IID_ID3D10Counter, 0x9b7e4c11, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
3792 #if defined(__cplusplus) && !defined(CINTERFACE)
3793 MIDL_INTERFACE("9b7e4c11-342c-4106-a19f-4f2704f689f0")
3794 ID3D10Counter : public ID3D10Asynchronous
3795 {
3796     virtual void STDMETHODCALLTYPE GetDesc(
3797         D3D10_COUNTER_DESC *pDesc) = 0;
3798 
3799 };
3800 #ifdef __CRT_UUID_DECL
3801 __CRT_UUID_DECL(ID3D10Counter, 0x9b7e4c11, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
3802 #endif
3803 #else
3804 typedef struct ID3D10CounterVtbl {
3805     BEGIN_INTERFACE
3806 
3807     /*** IUnknown methods ***/
3808     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3809         ID3D10Counter *This,
3810         REFIID riid,
3811         void **ppvObject);
3812 
3813     ULONG (STDMETHODCALLTYPE *AddRef)(
3814         ID3D10Counter *This);
3815 
3816     ULONG (STDMETHODCALLTYPE *Release)(
3817         ID3D10Counter *This);
3818 
3819     /*** ID3D10DeviceChild methods ***/
3820     void (STDMETHODCALLTYPE *GetDevice)(
3821         ID3D10Counter *This,
3822         ID3D10Device **ppDevice);
3823 
3824     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
3825         ID3D10Counter *This,
3826         REFGUID guid,
3827         UINT *pDataSize,
3828         void *pData);
3829 
3830     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
3831         ID3D10Counter *This,
3832         REFGUID guid,
3833         UINT DataSize,
3834         const void *pData);
3835 
3836     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
3837         ID3D10Counter *This,
3838         REFGUID guid,
3839         const IUnknown *pData);
3840 
3841     /*** ID3D10Asynchronous methods ***/
3842     void (STDMETHODCALLTYPE *Begin)(
3843         ID3D10Counter *This);
3844 
3845     void (STDMETHODCALLTYPE *End)(
3846         ID3D10Counter *This);
3847 
3848     HRESULT (STDMETHODCALLTYPE *GetData)(
3849         ID3D10Counter *This,
3850         void *pData,
3851         UINT DataSize,
3852         UINT GetDataFlags);
3853 
3854     UINT (STDMETHODCALLTYPE *GetDataSize)(
3855         ID3D10Counter *This);
3856 
3857     /*** ID3D10Counter methods ***/
3858     void (STDMETHODCALLTYPE *GetDesc)(
3859         ID3D10Counter *This,
3860         D3D10_COUNTER_DESC *pDesc);
3861 
3862     END_INTERFACE
3863 } ID3D10CounterVtbl;
3864 
3865 interface ID3D10Counter {
3866     CONST_VTBL ID3D10CounterVtbl* lpVtbl;
3867 };
3868 
3869 #ifdef COBJMACROS
3870 #ifndef WIDL_C_INLINE_WRAPPERS
3871 /*** IUnknown methods ***/
3872 #define ID3D10Counter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3873 #define ID3D10Counter_AddRef(This) (This)->lpVtbl->AddRef(This)
3874 #define ID3D10Counter_Release(This) (This)->lpVtbl->Release(This)
3875 /*** ID3D10DeviceChild methods ***/
3876 #define ID3D10Counter_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
3877 #define ID3D10Counter_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
3878 #define ID3D10Counter_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
3879 #define ID3D10Counter_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
3880 /*** ID3D10Asynchronous methods ***/
3881 #define ID3D10Counter_Begin(This) (This)->lpVtbl->Begin(This)
3882 #define ID3D10Counter_End(This) (This)->lpVtbl->End(This)
3883 #define ID3D10Counter_GetData(This,pData,DataSize,GetDataFlags) (This)->lpVtbl->GetData(This,pData,DataSize,GetDataFlags)
3884 #define ID3D10Counter_GetDataSize(This) (This)->lpVtbl->GetDataSize(This)
3885 /*** ID3D10Counter methods ***/
3886 #define ID3D10Counter_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
3887 #else
3888 /*** IUnknown methods ***/
3889 static FORCEINLINE HRESULT ID3D10Counter_QueryInterface(ID3D10Counter* This,REFIID riid,void **ppvObject) {
3890     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3891 }
3892 static FORCEINLINE ULONG ID3D10Counter_AddRef(ID3D10Counter* This) {
3893     return This->lpVtbl->AddRef(This);
3894 }
3895 static FORCEINLINE ULONG ID3D10Counter_Release(ID3D10Counter* This) {
3896     return This->lpVtbl->Release(This);
3897 }
3898 /*** ID3D10DeviceChild methods ***/
3899 static FORCEINLINE void ID3D10Counter_GetDevice(ID3D10Counter* This,ID3D10Device **ppDevice) {
3900     This->lpVtbl->GetDevice(This,ppDevice);
3901 }
3902 static FORCEINLINE HRESULT ID3D10Counter_GetPrivateData(ID3D10Counter* This,REFGUID guid,UINT *pDataSize,void *pData) {
3903     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
3904 }
3905 static FORCEINLINE HRESULT ID3D10Counter_SetPrivateData(ID3D10Counter* This,REFGUID guid,UINT DataSize,const void *pData) {
3906     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
3907 }
3908 static FORCEINLINE HRESULT ID3D10Counter_SetPrivateDataInterface(ID3D10Counter* This,REFGUID guid,const IUnknown *pData) {
3909     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
3910 }
3911 /*** ID3D10Asynchronous methods ***/
3912 static FORCEINLINE void ID3D10Counter_Begin(ID3D10Counter* This) {
3913     This->lpVtbl->Begin(This);
3914 }
3915 static FORCEINLINE void ID3D10Counter_End(ID3D10Counter* This) {
3916     This->lpVtbl->End(This);
3917 }
3918 static FORCEINLINE HRESULT ID3D10Counter_GetData(ID3D10Counter* This,void *pData,UINT DataSize,UINT GetDataFlags) {
3919     return This->lpVtbl->GetData(This,pData,DataSize,GetDataFlags);
3920 }
3921 static FORCEINLINE UINT ID3D10Counter_GetDataSize(ID3D10Counter* This) {
3922     return This->lpVtbl->GetDataSize(This);
3923 }
3924 /*** ID3D10Counter methods ***/
3925 static FORCEINLINE void ID3D10Counter_GetDesc(ID3D10Counter* This,D3D10_COUNTER_DESC *pDesc) {
3926     This->lpVtbl->GetDesc(This,pDesc);
3927 }
3928 #endif
3929 #endif
3930 
3931 #endif
3932 
3933 
3934 #endif  /* __ID3D10Counter_INTERFACE_DEFINED__ */
3935 
3936 /*****************************************************************************
3937  * ID3D10Query interface
3938  */
3939 #ifndef __ID3D10Query_INTERFACE_DEFINED__
3940 #define __ID3D10Query_INTERFACE_DEFINED__
3941 
3942 DEFINE_GUID(IID_ID3D10Query, 0x9b7e4c0e, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
3943 #if defined(__cplusplus) && !defined(CINTERFACE)
3944 MIDL_INTERFACE("9b7e4c0e-342c-4106-a19f-4f2704f689f0")
3945 ID3D10Query : public ID3D10Asynchronous
3946 {
3947     virtual void STDMETHODCALLTYPE GetDesc(
3948         D3D10_QUERY_DESC *pDesc) = 0;
3949 
3950 };
3951 #ifdef __CRT_UUID_DECL
3952 __CRT_UUID_DECL(ID3D10Query, 0x9b7e4c0e, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
3953 #endif
3954 #else
3955 typedef struct ID3D10QueryVtbl {
3956     BEGIN_INTERFACE
3957 
3958     /*** IUnknown methods ***/
3959     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3960         ID3D10Query *This,
3961         REFIID riid,
3962         void **ppvObject);
3963 
3964     ULONG (STDMETHODCALLTYPE *AddRef)(
3965         ID3D10Query *This);
3966 
3967     ULONG (STDMETHODCALLTYPE *Release)(
3968         ID3D10Query *This);
3969 
3970     /*** ID3D10DeviceChild methods ***/
3971     void (STDMETHODCALLTYPE *GetDevice)(
3972         ID3D10Query *This,
3973         ID3D10Device **ppDevice);
3974 
3975     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
3976         ID3D10Query *This,
3977         REFGUID guid,
3978         UINT *pDataSize,
3979         void *pData);
3980 
3981     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
3982         ID3D10Query *This,
3983         REFGUID guid,
3984         UINT DataSize,
3985         const void *pData);
3986 
3987     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
3988         ID3D10Query *This,
3989         REFGUID guid,
3990         const IUnknown *pData);
3991 
3992     /*** ID3D10Asynchronous methods ***/
3993     void (STDMETHODCALLTYPE *Begin)(
3994         ID3D10Query *This);
3995 
3996     void (STDMETHODCALLTYPE *End)(
3997         ID3D10Query *This);
3998 
3999     HRESULT (STDMETHODCALLTYPE *GetData)(
4000         ID3D10Query *This,
4001         void *pData,
4002         UINT DataSize,
4003         UINT GetDataFlags);
4004 
4005     UINT (STDMETHODCALLTYPE *GetDataSize)(
4006         ID3D10Query *This);
4007 
4008     /*** ID3D10Query methods ***/
4009     void (STDMETHODCALLTYPE *GetDesc)(
4010         ID3D10Query *This,
4011         D3D10_QUERY_DESC *pDesc);
4012 
4013     END_INTERFACE
4014 } ID3D10QueryVtbl;
4015 
4016 interface ID3D10Query {
4017     CONST_VTBL ID3D10QueryVtbl* lpVtbl;
4018 };
4019 
4020 #ifdef COBJMACROS
4021 #ifndef WIDL_C_INLINE_WRAPPERS
4022 /*** IUnknown methods ***/
4023 #define ID3D10Query_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4024 #define ID3D10Query_AddRef(This) (This)->lpVtbl->AddRef(This)
4025 #define ID3D10Query_Release(This) (This)->lpVtbl->Release(This)
4026 /*** ID3D10DeviceChild methods ***/
4027 #define ID3D10Query_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
4028 #define ID3D10Query_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
4029 #define ID3D10Query_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
4030 #define ID3D10Query_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
4031 /*** ID3D10Asynchronous methods ***/
4032 #define ID3D10Query_Begin(This) (This)->lpVtbl->Begin(This)
4033 #define ID3D10Query_End(This) (This)->lpVtbl->End(This)
4034 #define ID3D10Query_GetData(This,pData,DataSize,GetDataFlags) (This)->lpVtbl->GetData(This,pData,DataSize,GetDataFlags)
4035 #define ID3D10Query_GetDataSize(This) (This)->lpVtbl->GetDataSize(This)
4036 /*** ID3D10Query methods ***/
4037 #define ID3D10Query_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
4038 #else
4039 /*** IUnknown methods ***/
4040 static FORCEINLINE HRESULT ID3D10Query_QueryInterface(ID3D10Query* This,REFIID riid,void **ppvObject) {
4041     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4042 }
4043 static FORCEINLINE ULONG ID3D10Query_AddRef(ID3D10Query* This) {
4044     return This->lpVtbl->AddRef(This);
4045 }
4046 static FORCEINLINE ULONG ID3D10Query_Release(ID3D10Query* This) {
4047     return This->lpVtbl->Release(This);
4048 }
4049 /*** ID3D10DeviceChild methods ***/
4050 static FORCEINLINE void ID3D10Query_GetDevice(ID3D10Query* This,ID3D10Device **ppDevice) {
4051     This->lpVtbl->GetDevice(This,ppDevice);
4052 }
4053 static FORCEINLINE HRESULT ID3D10Query_GetPrivateData(ID3D10Query* This,REFGUID guid,UINT *pDataSize,void *pData) {
4054     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
4055 }
4056 static FORCEINLINE HRESULT ID3D10Query_SetPrivateData(ID3D10Query* This,REFGUID guid,UINT DataSize,const void *pData) {
4057     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
4058 }
4059 static FORCEINLINE HRESULT ID3D10Query_SetPrivateDataInterface(ID3D10Query* This,REFGUID guid,const IUnknown *pData) {
4060     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
4061 }
4062 /*** ID3D10Asynchronous methods ***/
4063 static FORCEINLINE void ID3D10Query_Begin(ID3D10Query* This) {
4064     This->lpVtbl->Begin(This);
4065 }
4066 static FORCEINLINE void ID3D10Query_End(ID3D10Query* This) {
4067     This->lpVtbl->End(This);
4068 }
4069 static FORCEINLINE HRESULT ID3D10Query_GetData(ID3D10Query* This,void *pData,UINT DataSize,UINT GetDataFlags) {
4070     return This->lpVtbl->GetData(This,pData,DataSize,GetDataFlags);
4071 }
4072 static FORCEINLINE UINT ID3D10Query_GetDataSize(ID3D10Query* This) {
4073     return This->lpVtbl->GetDataSize(This);
4074 }
4075 /*** ID3D10Query methods ***/
4076 static FORCEINLINE void ID3D10Query_GetDesc(ID3D10Query* This,D3D10_QUERY_DESC *pDesc) {
4077     This->lpVtbl->GetDesc(This,pDesc);
4078 }
4079 #endif
4080 #endif
4081 
4082 #endif
4083 
4084 
4085 #endif  /* __ID3D10Query_INTERFACE_DEFINED__ */
4086 
4087 /*****************************************************************************
4088  * ID3D10Predicate interface
4089  */
4090 #ifndef __ID3D10Predicate_INTERFACE_DEFINED__
4091 #define __ID3D10Predicate_INTERFACE_DEFINED__
4092 
4093 DEFINE_GUID(IID_ID3D10Predicate, 0x9b7e4c10, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
4094 #if defined(__cplusplus) && !defined(CINTERFACE)
4095 MIDL_INTERFACE("9b7e4c10-342c-4106-a19f-4f2704f689f0")
4096 ID3D10Predicate : public ID3D10Query
4097 {
4098 };
4099 #ifdef __CRT_UUID_DECL
4100 __CRT_UUID_DECL(ID3D10Predicate, 0x9b7e4c10, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
4101 #endif
4102 #else
4103 typedef struct ID3D10PredicateVtbl {
4104     BEGIN_INTERFACE
4105 
4106     /*** IUnknown methods ***/
4107     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4108         ID3D10Predicate *This,
4109         REFIID riid,
4110         void **ppvObject);
4111 
4112     ULONG (STDMETHODCALLTYPE *AddRef)(
4113         ID3D10Predicate *This);
4114 
4115     ULONG (STDMETHODCALLTYPE *Release)(
4116         ID3D10Predicate *This);
4117 
4118     /*** ID3D10DeviceChild methods ***/
4119     void (STDMETHODCALLTYPE *GetDevice)(
4120         ID3D10Predicate *This,
4121         ID3D10Device **ppDevice);
4122 
4123     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
4124         ID3D10Predicate *This,
4125         REFGUID guid,
4126         UINT *pDataSize,
4127         void *pData);
4128 
4129     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
4130         ID3D10Predicate *This,
4131         REFGUID guid,
4132         UINT DataSize,
4133         const void *pData);
4134 
4135     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
4136         ID3D10Predicate *This,
4137         REFGUID guid,
4138         const IUnknown *pData);
4139 
4140     /*** ID3D10Asynchronous methods ***/
4141     void (STDMETHODCALLTYPE *Begin)(
4142         ID3D10Predicate *This);
4143 
4144     void (STDMETHODCALLTYPE *End)(
4145         ID3D10Predicate *This);
4146 
4147     HRESULT (STDMETHODCALLTYPE *GetData)(
4148         ID3D10Predicate *This,
4149         void *pData,
4150         UINT DataSize,
4151         UINT GetDataFlags);
4152 
4153     UINT (STDMETHODCALLTYPE *GetDataSize)(
4154         ID3D10Predicate *This);
4155 
4156     /*** ID3D10Query methods ***/
4157     void (STDMETHODCALLTYPE *GetDesc)(
4158         ID3D10Predicate *This,
4159         D3D10_QUERY_DESC *pDesc);
4160 
4161     END_INTERFACE
4162 } ID3D10PredicateVtbl;
4163 
4164 interface ID3D10Predicate {
4165     CONST_VTBL ID3D10PredicateVtbl* lpVtbl;
4166 };
4167 
4168 #ifdef COBJMACROS
4169 #ifndef WIDL_C_INLINE_WRAPPERS
4170 /*** IUnknown methods ***/
4171 #define ID3D10Predicate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4172 #define ID3D10Predicate_AddRef(This) (This)->lpVtbl->AddRef(This)
4173 #define ID3D10Predicate_Release(This) (This)->lpVtbl->Release(This)
4174 /*** ID3D10DeviceChild methods ***/
4175 #define ID3D10Predicate_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
4176 #define ID3D10Predicate_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
4177 #define ID3D10Predicate_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
4178 #define ID3D10Predicate_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
4179 /*** ID3D10Asynchronous methods ***/
4180 #define ID3D10Predicate_Begin(This) (This)->lpVtbl->Begin(This)
4181 #define ID3D10Predicate_End(This) (This)->lpVtbl->End(This)
4182 #define ID3D10Predicate_GetData(This,pData,DataSize,GetDataFlags) (This)->lpVtbl->GetData(This,pData,DataSize,GetDataFlags)
4183 #define ID3D10Predicate_GetDataSize(This) (This)->lpVtbl->GetDataSize(This)
4184 /*** ID3D10Query methods ***/
4185 #define ID3D10Predicate_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
4186 #else
4187 /*** IUnknown methods ***/
4188 static FORCEINLINE HRESULT ID3D10Predicate_QueryInterface(ID3D10Predicate* This,REFIID riid,void **ppvObject) {
4189     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4190 }
4191 static FORCEINLINE ULONG ID3D10Predicate_AddRef(ID3D10Predicate* This) {
4192     return This->lpVtbl->AddRef(This);
4193 }
4194 static FORCEINLINE ULONG ID3D10Predicate_Release(ID3D10Predicate* This) {
4195     return This->lpVtbl->Release(This);
4196 }
4197 /*** ID3D10DeviceChild methods ***/
4198 static FORCEINLINE void ID3D10Predicate_GetDevice(ID3D10Predicate* This,ID3D10Device **ppDevice) {
4199     This->lpVtbl->GetDevice(This,ppDevice);
4200 }
4201 static FORCEINLINE HRESULT ID3D10Predicate_GetPrivateData(ID3D10Predicate* This,REFGUID guid,UINT *pDataSize,void *pData) {
4202     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
4203 }
4204 static FORCEINLINE HRESULT ID3D10Predicate_SetPrivateData(ID3D10Predicate* This,REFGUID guid,UINT DataSize,const void *pData) {
4205     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
4206 }
4207 static FORCEINLINE HRESULT ID3D10Predicate_SetPrivateDataInterface(ID3D10Predicate* This,REFGUID guid,const IUnknown *pData) {
4208     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
4209 }
4210 /*** ID3D10Asynchronous methods ***/
4211 static FORCEINLINE void ID3D10Predicate_Begin(ID3D10Predicate* This) {
4212     This->lpVtbl->Begin(This);
4213 }
4214 static FORCEINLINE void ID3D10Predicate_End(ID3D10Predicate* This) {
4215     This->lpVtbl->End(This);
4216 }
4217 static FORCEINLINE HRESULT ID3D10Predicate_GetData(ID3D10Predicate* This,void *pData,UINT DataSize,UINT GetDataFlags) {
4218     return This->lpVtbl->GetData(This,pData,DataSize,GetDataFlags);
4219 }
4220 static FORCEINLINE UINT ID3D10Predicate_GetDataSize(ID3D10Predicate* This) {
4221     return This->lpVtbl->GetDataSize(This);
4222 }
4223 /*** ID3D10Query methods ***/
4224 static FORCEINLINE void ID3D10Predicate_GetDesc(ID3D10Predicate* This,D3D10_QUERY_DESC *pDesc) {
4225     This->lpVtbl->GetDesc(This,pDesc);
4226 }
4227 #endif
4228 #endif
4229 
4230 #endif
4231 
4232 
4233 #endif  /* __ID3D10Predicate_INTERFACE_DEFINED__ */
4234 
4235 /*****************************************************************************
4236  * ID3D10Device interface
4237  */
4238 #ifndef __ID3D10Device_INTERFACE_DEFINED__
4239 #define __ID3D10Device_INTERFACE_DEFINED__
4240 
4241 DEFINE_GUID(IID_ID3D10Device, 0x9b7e4c0f, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
4242 #if defined(__cplusplus) && !defined(CINTERFACE)
4243 MIDL_INTERFACE("9b7e4c0f-342c-4106-a19f-4f2704f689f0")
4244 ID3D10Device : public IUnknown
4245 {
4246     virtual void STDMETHODCALLTYPE VSSetConstantBuffers(
4247         UINT StartSlot,
4248         UINT NumBuffers,
4249         ID3D10Buffer *const *ppConstantBuffers) = 0;
4250 
4251     virtual void STDMETHODCALLTYPE PSSetShaderResources(
4252         UINT StartSlot,
4253         UINT NumViews,
4254         ID3D10ShaderResourceView *const *ppShaderResourceViews) = 0;
4255 
4256     virtual void STDMETHODCALLTYPE PSSetShader(
4257         ID3D10PixelShader *pPixelShader) = 0;
4258 
4259     virtual void STDMETHODCALLTYPE PSSetSamplers(
4260         UINT StartSlot,
4261         UINT NumSamplers,
4262         ID3D10SamplerState *const *ppSamplers) = 0;
4263 
4264     virtual void STDMETHODCALLTYPE VSSetShader(
4265         ID3D10VertexShader *pVertexShader) = 0;
4266 
4267     virtual void STDMETHODCALLTYPE DrawIndexed(
4268         UINT IndexCount,
4269         UINT StartIndexLocation,
4270         INT BaseVertexLocation) = 0;
4271 
4272     virtual void STDMETHODCALLTYPE Draw(
4273         UINT VertexCount,
4274         UINT StartVertexLocation) = 0;
4275 
4276     virtual void STDMETHODCALLTYPE PSSetConstantBuffers(
4277         UINT StartSlot,
4278         UINT NumBuffers,
4279         ID3D10Buffer *const *ppConstantBuffers) = 0;
4280 
4281     virtual void STDMETHODCALLTYPE IASetInputLayout(
4282         ID3D10InputLayout *pInputLayout) = 0;
4283 
4284     virtual void STDMETHODCALLTYPE IASetVertexBuffers(
4285         UINT StartSlot,
4286         UINT NumBuffers,
4287         ID3D10Buffer *const *ppVertexBuffers,
4288         const UINT *pStrides,
4289         const UINT *pOffsets) = 0;
4290 
4291     virtual void STDMETHODCALLTYPE IASetIndexBuffer(
4292         ID3D10Buffer *pIndexBuffer,
4293         DXGI_FORMAT Format,
4294         UINT Offset) = 0;
4295 
4296     virtual void STDMETHODCALLTYPE DrawIndexedInstanced(
4297         UINT IndexCountPerInstance,
4298         UINT InstanceCount,
4299         UINT StartIndexLocation,
4300         INT BaseVertexLocation,
4301         UINT StartInstanceLocation) = 0;
4302 
4303     virtual void STDMETHODCALLTYPE DrawInstanced(
4304         UINT VertexCountPerInstance,
4305         UINT InstanceCount,
4306         UINT StartVertexLocation,
4307         UINT StartInstanceLocation) = 0;
4308 
4309     virtual void STDMETHODCALLTYPE GSSetConstantBuffers(
4310         UINT StartSlot,
4311         UINT NumBuffers,
4312         ID3D10Buffer *const *ppConstantBuffers) = 0;
4313 
4314     virtual void STDMETHODCALLTYPE GSSetShader(
4315         ID3D10GeometryShader *pShader) = 0;
4316 
4317     virtual void STDMETHODCALLTYPE IASetPrimitiveTopology(
4318         D3D10_PRIMITIVE_TOPOLOGY Topology) = 0;
4319 
4320     virtual void STDMETHODCALLTYPE VSSetShaderResources(
4321         UINT StartSlot,
4322         UINT NumViews,
4323         ID3D10ShaderResourceView *const *ppShaderResourceViews) = 0;
4324 
4325     virtual void STDMETHODCALLTYPE VSSetSamplers(
4326         UINT StartSlot,
4327         UINT NumSamplers,
4328         ID3D10SamplerState *const *ppSamplers) = 0;
4329 
4330     virtual void STDMETHODCALLTYPE SetPredication(
4331         ID3D10Predicate *pPredicate,
4332         WINBOOL PredicateValue) = 0;
4333 
4334     virtual void STDMETHODCALLTYPE GSSetShaderResources(
4335         UINT StartSlot,
4336         UINT NumViews,
4337         ID3D10ShaderResourceView *const *ppShaderResourceViews) = 0;
4338 
4339     virtual void STDMETHODCALLTYPE GSSetSamplers(
4340         UINT StartSlot,
4341         UINT NumSamplers,
4342         ID3D10SamplerState *const *ppSamplers) = 0;
4343 
4344     virtual void STDMETHODCALLTYPE OMSetRenderTargets(
4345         UINT NumViews,
4346         ID3D10RenderTargetView *const *ppRenderTargetViews,
4347         ID3D10DepthStencilView *pDepthStencilView) = 0;
4348 
4349     virtual void STDMETHODCALLTYPE OMSetBlendState(
4350         ID3D10BlendState *pBlendState,
4351         const FLOAT BlendFactor[4],
4352         UINT SampleMask) = 0;
4353 
4354     virtual void STDMETHODCALLTYPE OMSetDepthStencilState(
4355         ID3D10DepthStencilState *pDepthStencilState,
4356         UINT StencilRef) = 0;
4357 
4358     virtual void STDMETHODCALLTYPE SOSetTargets(
4359         UINT NumBuffers,
4360         ID3D10Buffer *const *ppSOTargets,
4361         const UINT *pOffsets) = 0;
4362 
4363     virtual void STDMETHODCALLTYPE DrawAuto(
4364         ) = 0;
4365 
4366     virtual void STDMETHODCALLTYPE RSSetState(
4367         ID3D10RasterizerState *pRasterizerState) = 0;
4368 
4369     virtual void STDMETHODCALLTYPE RSSetViewports(
4370         UINT NumViewports,
4371         const D3D10_VIEWPORT *pViewports) = 0;
4372 
4373     virtual void STDMETHODCALLTYPE RSSetScissorRects(
4374         UINT NumRects,
4375         const D3D10_RECT *pRects) = 0;
4376 
4377     virtual void STDMETHODCALLTYPE CopySubresourceRegion(
4378         ID3D10Resource *pDstResource,
4379         UINT DstSubresource,
4380         UINT DstX,
4381         UINT DstY,
4382         UINT DstZ,
4383         ID3D10Resource *pSrcResource,
4384         UINT SrcSubresource,
4385         const D3D10_BOX *pSrcBox) = 0;
4386 
4387     virtual void STDMETHODCALLTYPE CopyResource(
4388         ID3D10Resource *pDstResource,
4389         ID3D10Resource *pSrcResource) = 0;
4390 
4391     virtual void STDMETHODCALLTYPE UpdateSubresource(
4392         ID3D10Resource *pDstResource,
4393         UINT DstSubresource,
4394         const D3D10_BOX *pDstBox,
4395         const void *pSrcData,
4396         UINT SrcRowPitch,
4397         UINT SrcDepthPitch) = 0;
4398 
4399     virtual void STDMETHODCALLTYPE ClearRenderTargetView(
4400         ID3D10RenderTargetView *pRenderTargetView,
4401         const FLOAT ColorRGBA[4]) = 0;
4402 
4403     virtual void STDMETHODCALLTYPE ClearDepthStencilView(
4404         ID3D10DepthStencilView *pDepthStencilView,
4405         UINT ClearFlags,
4406         FLOAT Depth,
4407         UINT8 Stencil) = 0;
4408 
4409     virtual void STDMETHODCALLTYPE GenerateMips(
4410         ID3D10ShaderResourceView *pShaderResourceView) = 0;
4411 
4412     virtual void STDMETHODCALLTYPE ResolveSubresource(
4413         ID3D10Resource *pDstResource,
4414         UINT DstSubresource,
4415         ID3D10Resource *pSrcResource,
4416         UINT SrcSubresource,
4417         DXGI_FORMAT Format) = 0;
4418 
4419     virtual void STDMETHODCALLTYPE VSGetConstantBuffers(
4420         UINT StartSlot,
4421         UINT NumBuffers,
4422         ID3D10Buffer **ppConstantBuffers) = 0;
4423 
4424     virtual void STDMETHODCALLTYPE PSGetShaderResources(
4425         UINT StartSlot,
4426         UINT NumViews,
4427         ID3D10ShaderResourceView **ppShaderResourceViews) = 0;
4428 
4429     virtual void STDMETHODCALLTYPE PSGetShader(
4430         ID3D10PixelShader **ppPixelShader) = 0;
4431 
4432     virtual void STDMETHODCALLTYPE PSGetSamplers(
4433         UINT StartSlot,
4434         UINT NumSamplers,
4435         ID3D10SamplerState **ppSamplers) = 0;
4436 
4437     virtual void STDMETHODCALLTYPE VSGetShader(
4438         ID3D10VertexShader **ppVertexShader) = 0;
4439 
4440     virtual void STDMETHODCALLTYPE PSGetConstantBuffers(
4441         UINT StartSlot,
4442         UINT NumBuffers,
4443         ID3D10Buffer **ppConstantBuffers) = 0;
4444 
4445     virtual void STDMETHODCALLTYPE IAGetInputLayout(
4446         ID3D10InputLayout **ppInputLayout) = 0;
4447 
4448     virtual void STDMETHODCALLTYPE IAGetVertexBuffers(
4449         UINT StartSlot,
4450         UINT NumBuffers,
4451         ID3D10Buffer **ppVertexBuffers,
4452         UINT *pStrides,
4453         UINT *pOffsets) = 0;
4454 
4455     virtual void STDMETHODCALLTYPE IAGetIndexBuffer(
4456         ID3D10Buffer **pIndexBuffer,
4457         DXGI_FORMAT *Format,
4458         UINT *Offset) = 0;
4459 
4460     virtual void STDMETHODCALLTYPE GSGetConstantBuffers(
4461         UINT StartSlot,
4462         UINT NumBuffers,
4463         ID3D10Buffer **ppConstantBuffers) = 0;
4464 
4465     virtual void STDMETHODCALLTYPE GSGetShader(
4466         ID3D10GeometryShader **ppGeometryShader) = 0;
4467 
4468     virtual void STDMETHODCALLTYPE IAGetPrimitiveTopology(
4469         D3D10_PRIMITIVE_TOPOLOGY *pTopology) = 0;
4470 
4471     virtual void STDMETHODCALLTYPE VSGetShaderResources(
4472         UINT StartSlot,
4473         UINT NumViews,
4474         ID3D10ShaderResourceView **ppShaderResourceViews) = 0;
4475 
4476     virtual void STDMETHODCALLTYPE VSGetSamplers(
4477         UINT StartSlot,
4478         UINT NumSamplers,
4479         ID3D10SamplerState **ppSamplers) = 0;
4480 
4481     virtual void STDMETHODCALLTYPE GetPredication(
4482         ID3D10Predicate **ppPredicate,
4483         WINBOOL *pPredicateValue) = 0;
4484 
4485     virtual void STDMETHODCALLTYPE GSGetShaderResources(
4486         UINT StartSlot,
4487         UINT NumViews,
4488         ID3D10ShaderResourceView **ppShaderResourceViews) = 0;
4489 
4490     virtual void STDMETHODCALLTYPE GSGetSamplers(
4491         UINT StartSlot,
4492         UINT NumSamplers,
4493         ID3D10SamplerState **ppSamplers) = 0;
4494 
4495     virtual void STDMETHODCALLTYPE OMGetRenderTargets(
4496         UINT NumViews,
4497         ID3D10RenderTargetView **ppRenderTargetViews,
4498         ID3D10DepthStencilView **ppDepthStencilView) = 0;
4499 
4500     virtual void STDMETHODCALLTYPE OMGetBlendState(
4501         ID3D10BlendState **ppBlendState,
4502         FLOAT BlendFactor[4],
4503         UINT *pSampleMask) = 0;
4504 
4505     virtual void STDMETHODCALLTYPE OMGetDepthStencilState(
4506         ID3D10DepthStencilState **ppDepthStencilState,
4507         UINT *pStencilRef) = 0;
4508 
4509     virtual void STDMETHODCALLTYPE SOGetTargets(
4510         UINT NumBuffers,
4511         ID3D10Buffer **ppSOTargets,
4512         UINT *pOffsets) = 0;
4513 
4514     virtual void STDMETHODCALLTYPE RSGetState(
4515         ID3D10RasterizerState **ppRasterizerState) = 0;
4516 
4517     virtual void STDMETHODCALLTYPE RSGetViewports(
4518         UINT *NumViewports,
4519         D3D10_VIEWPORT *pViewports) = 0;
4520 
4521     virtual void STDMETHODCALLTYPE RSGetScissorRects(
4522         UINT *NumRects,
4523         D3D10_RECT *pRects) = 0;
4524 
4525     virtual HRESULT STDMETHODCALLTYPE GetDeviceRemovedReason(
4526         ) = 0;
4527 
4528     virtual HRESULT STDMETHODCALLTYPE SetExceptionMode(
4529         UINT RaiseFlags) = 0;
4530 
4531     virtual UINT STDMETHODCALLTYPE GetExceptionMode(
4532         ) = 0;
4533 
4534     virtual HRESULT STDMETHODCALLTYPE GetPrivateData(
4535         REFGUID guid,
4536         UINT *pDataSize,
4537         void *pData) = 0;
4538 
4539     virtual HRESULT STDMETHODCALLTYPE SetPrivateData(
4540         REFGUID guid,
4541         UINT DataSize,
4542         const void *pData) = 0;
4543 
4544     virtual HRESULT STDMETHODCALLTYPE SetPrivateDataInterface(
4545         REFGUID guid,
4546         const IUnknown *pData) = 0;
4547 
4548     virtual void STDMETHODCALLTYPE ClearState(
4549         ) = 0;
4550 
4551     virtual void STDMETHODCALLTYPE Flush(
4552         ) = 0;
4553 
4554     virtual HRESULT STDMETHODCALLTYPE CreateBuffer(
4555         const D3D10_BUFFER_DESC *pDesc,
4556         const D3D10_SUBRESOURCE_DATA *pInitialData,
4557         ID3D10Buffer **ppBuffer) = 0;
4558 
4559     virtual HRESULT STDMETHODCALLTYPE CreateTexture1D(
4560         const D3D10_TEXTURE1D_DESC *pDesc,
4561         const D3D10_SUBRESOURCE_DATA *pInitialData,
4562         ID3D10Texture1D **ppTexture1D) = 0;
4563 
4564     virtual HRESULT STDMETHODCALLTYPE CreateTexture2D(
4565         const D3D10_TEXTURE2D_DESC *pDesc,
4566         const D3D10_SUBRESOURCE_DATA *pInitialData,
4567         ID3D10Texture2D **ppTexture2D) = 0;
4568 
4569     virtual HRESULT STDMETHODCALLTYPE CreateTexture3D(
4570         const D3D10_TEXTURE3D_DESC *pDesc,
4571         const D3D10_SUBRESOURCE_DATA *pInitialData,
4572         ID3D10Texture3D **ppTexture3D) = 0;
4573 
4574     virtual HRESULT STDMETHODCALLTYPE CreateShaderResourceView(
4575         ID3D10Resource *pResource,
4576         const D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc,
4577         ID3D10ShaderResourceView **ppSRView) = 0;
4578 
4579     virtual HRESULT STDMETHODCALLTYPE CreateRenderTargetView(
4580         ID3D10Resource *pResource,
4581         const D3D10_RENDER_TARGET_VIEW_DESC *pDesc,
4582         ID3D10RenderTargetView **ppRTView) = 0;
4583 
4584     virtual HRESULT STDMETHODCALLTYPE CreateDepthStencilView(
4585         ID3D10Resource *pResource,
4586         const D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc,
4587         ID3D10DepthStencilView **ppDepthStencilView) = 0;
4588 
4589     virtual HRESULT STDMETHODCALLTYPE CreateInputLayout(
4590         const D3D10_INPUT_ELEMENT_DESC *pInputElementDescs,
4591         UINT NumElements,
4592         const void *pShaderBytecodeWithInputSignature,
4593         SIZE_T BytecodeLength,
4594         ID3D10InputLayout **ppInputLayout) = 0;
4595 
4596     virtual HRESULT STDMETHODCALLTYPE CreateVertexShader(
4597         const void *pShaderBytecode,
4598         SIZE_T BytecodeLength,
4599         ID3D10VertexShader **ppVertexShader) = 0;
4600 
4601     virtual HRESULT STDMETHODCALLTYPE CreateGeometryShader(
4602         const void *pShaderBytecode,
4603         SIZE_T BytecodeLength,
4604         ID3D10GeometryShader **ppGeometryShader) = 0;
4605 
4606     virtual HRESULT STDMETHODCALLTYPE CreateGeometryShaderWithStreamOutput(
4607         const void *pShaderBytecode,
4608         SIZE_T BytecodeLength,
4609         const D3D10_SO_DECLARATION_ENTRY *pSODeclaration,
4610         UINT NumEntries,
4611         UINT OutputStreamStride,
4612         ID3D10GeometryShader **ppGeometryShader) = 0;
4613 
4614     virtual HRESULT STDMETHODCALLTYPE CreatePixelShader(
4615         const void *pShaderBytecode,
4616         SIZE_T BytecodeLength,
4617         ID3D10PixelShader **ppPixelShader) = 0;
4618 
4619     virtual HRESULT STDMETHODCALLTYPE CreateBlendState(
4620         const D3D10_BLEND_DESC *pBlendStateDesc,
4621         ID3D10BlendState **ppBlendState) = 0;
4622 
4623     virtual HRESULT STDMETHODCALLTYPE CreateDepthStencilState(
4624         const D3D10_DEPTH_STENCIL_DESC *pDepthStencilDesc,
4625         ID3D10DepthStencilState **ppDepthStencilState) = 0;
4626 
4627     virtual HRESULT STDMETHODCALLTYPE CreateRasterizerState(
4628         const D3D10_RASTERIZER_DESC *pRasterizerDesc,
4629         ID3D10RasterizerState **ppRasterizerState) = 0;
4630 
4631     virtual HRESULT STDMETHODCALLTYPE CreateSamplerState(
4632         const D3D10_SAMPLER_DESC *pSamplerDesc,
4633         ID3D10SamplerState **ppSamplerState) = 0;
4634 
4635     virtual HRESULT STDMETHODCALLTYPE CreateQuery(
4636         const D3D10_QUERY_DESC *pQueryDesc,
4637         ID3D10Query **ppQuery) = 0;
4638 
4639     virtual HRESULT STDMETHODCALLTYPE CreatePredicate(
4640         const D3D10_QUERY_DESC *pPredicateDesc,
4641         ID3D10Predicate **ppPredicate) = 0;
4642 
4643     virtual HRESULT STDMETHODCALLTYPE CreateCounter(
4644         const D3D10_COUNTER_DESC *pCounterDesc,
4645         ID3D10Counter **ppCounter) = 0;
4646 
4647     virtual HRESULT STDMETHODCALLTYPE CheckFormatSupport(
4648         DXGI_FORMAT Format,
4649         UINT *pFormatSupport) = 0;
4650 
4651     virtual HRESULT STDMETHODCALLTYPE CheckMultisampleQualityLevels(
4652         DXGI_FORMAT Format,
4653         UINT SampleCount,
4654         UINT *pNumQualityLevels) = 0;
4655 
4656     virtual void STDMETHODCALLTYPE CheckCounterInfo(
4657         D3D10_COUNTER_INFO *pCounterInfo) = 0;
4658 
4659     virtual HRESULT STDMETHODCALLTYPE CheckCounter(
4660         const D3D10_COUNTER_DESC *pDesc,
4661         D3D10_COUNTER_TYPE *pType,
4662         UINT *pActiveCounters,
4663         char *name,
4664         UINT *pNameLength,
4665         char *units,
4666         UINT *pUnitsLength,
4667         char *description,
4668         UINT *pDescriptionLength) = 0;
4669 
4670     virtual UINT STDMETHODCALLTYPE GetCreationFlags(
4671         ) = 0;
4672 
4673     virtual HRESULT STDMETHODCALLTYPE OpenSharedResource(
4674         HANDLE hResource,
4675         REFIID ReturnedInterface,
4676         void **ppResource) = 0;
4677 
4678     virtual void STDMETHODCALLTYPE SetTextFilterSize(
4679         UINT Width,
4680         UINT Height) = 0;
4681 
4682     virtual void STDMETHODCALLTYPE GetTextFilterSize(
4683         UINT *pWidth,
4684         UINT *pHeight) = 0;
4685 
4686 };
4687 #ifdef __CRT_UUID_DECL
4688 __CRT_UUID_DECL(ID3D10Device, 0x9b7e4c0f, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
4689 #endif
4690 #else
4691 typedef struct ID3D10DeviceVtbl {
4692     BEGIN_INTERFACE
4693 
4694     /*** IUnknown methods ***/
4695     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4696         ID3D10Device *This,
4697         REFIID riid,
4698         void **ppvObject);
4699 
4700     ULONG (STDMETHODCALLTYPE *AddRef)(
4701         ID3D10Device *This);
4702 
4703     ULONG (STDMETHODCALLTYPE *Release)(
4704         ID3D10Device *This);
4705 
4706     /*** ID3D10Device methods ***/
4707     void (STDMETHODCALLTYPE *VSSetConstantBuffers)(
4708         ID3D10Device *This,
4709         UINT StartSlot,
4710         UINT NumBuffers,
4711         ID3D10Buffer *const *ppConstantBuffers);
4712 
4713     void (STDMETHODCALLTYPE *PSSetShaderResources)(
4714         ID3D10Device *This,
4715         UINT StartSlot,
4716         UINT NumViews,
4717         ID3D10ShaderResourceView *const *ppShaderResourceViews);
4718 
4719     void (STDMETHODCALLTYPE *PSSetShader)(
4720         ID3D10Device *This,
4721         ID3D10PixelShader *pPixelShader);
4722 
4723     void (STDMETHODCALLTYPE *PSSetSamplers)(
4724         ID3D10Device *This,
4725         UINT StartSlot,
4726         UINT NumSamplers,
4727         ID3D10SamplerState *const *ppSamplers);
4728 
4729     void (STDMETHODCALLTYPE *VSSetShader)(
4730         ID3D10Device *This,
4731         ID3D10VertexShader *pVertexShader);
4732 
4733     void (STDMETHODCALLTYPE *DrawIndexed)(
4734         ID3D10Device *This,
4735         UINT IndexCount,
4736         UINT StartIndexLocation,
4737         INT BaseVertexLocation);
4738 
4739     void (STDMETHODCALLTYPE *Draw)(
4740         ID3D10Device *This,
4741         UINT VertexCount,
4742         UINT StartVertexLocation);
4743 
4744     void (STDMETHODCALLTYPE *PSSetConstantBuffers)(
4745         ID3D10Device *This,
4746         UINT StartSlot,
4747         UINT NumBuffers,
4748         ID3D10Buffer *const *ppConstantBuffers);
4749 
4750     void (STDMETHODCALLTYPE *IASetInputLayout)(
4751         ID3D10Device *This,
4752         ID3D10InputLayout *pInputLayout);
4753 
4754     void (STDMETHODCALLTYPE *IASetVertexBuffers)(
4755         ID3D10Device *This,
4756         UINT StartSlot,
4757         UINT NumBuffers,
4758         ID3D10Buffer *const *ppVertexBuffers,
4759         const UINT *pStrides,
4760         const UINT *pOffsets);
4761 
4762     void (STDMETHODCALLTYPE *IASetIndexBuffer)(
4763         ID3D10Device *This,
4764         ID3D10Buffer *pIndexBuffer,
4765         DXGI_FORMAT Format,
4766         UINT Offset);
4767 
4768     void (STDMETHODCALLTYPE *DrawIndexedInstanced)(
4769         ID3D10Device *This,
4770         UINT IndexCountPerInstance,
4771         UINT InstanceCount,
4772         UINT StartIndexLocation,
4773         INT BaseVertexLocation,
4774         UINT StartInstanceLocation);
4775 
4776     void (STDMETHODCALLTYPE *DrawInstanced)(
4777         ID3D10Device *This,
4778         UINT VertexCountPerInstance,
4779         UINT InstanceCount,
4780         UINT StartVertexLocation,
4781         UINT StartInstanceLocation);
4782 
4783     void (STDMETHODCALLTYPE *GSSetConstantBuffers)(
4784         ID3D10Device *This,
4785         UINT StartSlot,
4786         UINT NumBuffers,
4787         ID3D10Buffer *const *ppConstantBuffers);
4788 
4789     void (STDMETHODCALLTYPE *GSSetShader)(
4790         ID3D10Device *This,
4791         ID3D10GeometryShader *pShader);
4792 
4793     void (STDMETHODCALLTYPE *IASetPrimitiveTopology)(
4794         ID3D10Device *This,
4795         D3D10_PRIMITIVE_TOPOLOGY Topology);
4796 
4797     void (STDMETHODCALLTYPE *VSSetShaderResources)(
4798         ID3D10Device *This,
4799         UINT StartSlot,
4800         UINT NumViews,
4801         ID3D10ShaderResourceView *const *ppShaderResourceViews);
4802 
4803     void (STDMETHODCALLTYPE *VSSetSamplers)(
4804         ID3D10Device *This,
4805         UINT StartSlot,
4806         UINT NumSamplers,
4807         ID3D10SamplerState *const *ppSamplers);
4808 
4809     void (STDMETHODCALLTYPE *SetPredication)(
4810         ID3D10Device *This,
4811         ID3D10Predicate *pPredicate,
4812         WINBOOL PredicateValue);
4813 
4814     void (STDMETHODCALLTYPE *GSSetShaderResources)(
4815         ID3D10Device *This,
4816         UINT StartSlot,
4817         UINT NumViews,
4818         ID3D10ShaderResourceView *const *ppShaderResourceViews);
4819 
4820     void (STDMETHODCALLTYPE *GSSetSamplers)(
4821         ID3D10Device *This,
4822         UINT StartSlot,
4823         UINT NumSamplers,
4824         ID3D10SamplerState *const *ppSamplers);
4825 
4826     void (STDMETHODCALLTYPE *OMSetRenderTargets)(
4827         ID3D10Device *This,
4828         UINT NumViews,
4829         ID3D10RenderTargetView *const *ppRenderTargetViews,
4830         ID3D10DepthStencilView *pDepthStencilView);
4831 
4832     void (STDMETHODCALLTYPE *OMSetBlendState)(
4833         ID3D10Device *This,
4834         ID3D10BlendState *pBlendState,
4835         const FLOAT BlendFactor[4],
4836         UINT SampleMask);
4837 
4838     void (STDMETHODCALLTYPE *OMSetDepthStencilState)(
4839         ID3D10Device *This,
4840         ID3D10DepthStencilState *pDepthStencilState,
4841         UINT StencilRef);
4842 
4843     void (STDMETHODCALLTYPE *SOSetTargets)(
4844         ID3D10Device *This,
4845         UINT NumBuffers,
4846         ID3D10Buffer *const *ppSOTargets,
4847         const UINT *pOffsets);
4848 
4849     void (STDMETHODCALLTYPE *DrawAuto)(
4850         ID3D10Device *This);
4851 
4852     void (STDMETHODCALLTYPE *RSSetState)(
4853         ID3D10Device *This,
4854         ID3D10RasterizerState *pRasterizerState);
4855 
4856     void (STDMETHODCALLTYPE *RSSetViewports)(
4857         ID3D10Device *This,
4858         UINT NumViewports,
4859         const D3D10_VIEWPORT *pViewports);
4860 
4861     void (STDMETHODCALLTYPE *RSSetScissorRects)(
4862         ID3D10Device *This,
4863         UINT NumRects,
4864         const D3D10_RECT *pRects);
4865 
4866     void (STDMETHODCALLTYPE *CopySubresourceRegion)(
4867         ID3D10Device *This,
4868         ID3D10Resource *pDstResource,
4869         UINT DstSubresource,
4870         UINT DstX,
4871         UINT DstY,
4872         UINT DstZ,
4873         ID3D10Resource *pSrcResource,
4874         UINT SrcSubresource,
4875         const D3D10_BOX *pSrcBox);
4876 
4877     void (STDMETHODCALLTYPE *CopyResource)(
4878         ID3D10Device *This,
4879         ID3D10Resource *pDstResource,
4880         ID3D10Resource *pSrcResource);
4881 
4882     void (STDMETHODCALLTYPE *UpdateSubresource)(
4883         ID3D10Device *This,
4884         ID3D10Resource *pDstResource,
4885         UINT DstSubresource,
4886         const D3D10_BOX *pDstBox,
4887         const void *pSrcData,
4888         UINT SrcRowPitch,
4889         UINT SrcDepthPitch);
4890 
4891     void (STDMETHODCALLTYPE *ClearRenderTargetView)(
4892         ID3D10Device *This,
4893         ID3D10RenderTargetView *pRenderTargetView,
4894         const FLOAT ColorRGBA[4]);
4895 
4896     void (STDMETHODCALLTYPE *ClearDepthStencilView)(
4897         ID3D10Device *This,
4898         ID3D10DepthStencilView *pDepthStencilView,
4899         UINT ClearFlags,
4900         FLOAT Depth,
4901         UINT8 Stencil);
4902 
4903     void (STDMETHODCALLTYPE *GenerateMips)(
4904         ID3D10Device *This,
4905         ID3D10ShaderResourceView *pShaderResourceView);
4906 
4907     void (STDMETHODCALLTYPE *ResolveSubresource)(
4908         ID3D10Device *This,
4909         ID3D10Resource *pDstResource,
4910         UINT DstSubresource,
4911         ID3D10Resource *pSrcResource,
4912         UINT SrcSubresource,
4913         DXGI_FORMAT Format);
4914 
4915     void (STDMETHODCALLTYPE *VSGetConstantBuffers)(
4916         ID3D10Device *This,
4917         UINT StartSlot,
4918         UINT NumBuffers,
4919         ID3D10Buffer **ppConstantBuffers);
4920 
4921     void (STDMETHODCALLTYPE *PSGetShaderResources)(
4922         ID3D10Device *This,
4923         UINT StartSlot,
4924         UINT NumViews,
4925         ID3D10ShaderResourceView **ppShaderResourceViews);
4926 
4927     void (STDMETHODCALLTYPE *PSGetShader)(
4928         ID3D10Device *This,
4929         ID3D10PixelShader **ppPixelShader);
4930 
4931     void (STDMETHODCALLTYPE *PSGetSamplers)(
4932         ID3D10Device *This,
4933         UINT StartSlot,
4934         UINT NumSamplers,
4935         ID3D10SamplerState **ppSamplers);
4936 
4937     void (STDMETHODCALLTYPE *VSGetShader)(
4938         ID3D10Device *This,
4939         ID3D10VertexShader **ppVertexShader);
4940 
4941     void (STDMETHODCALLTYPE *PSGetConstantBuffers)(
4942         ID3D10Device *This,
4943         UINT StartSlot,
4944         UINT NumBuffers,
4945         ID3D10Buffer **ppConstantBuffers);
4946 
4947     void (STDMETHODCALLTYPE *IAGetInputLayout)(
4948         ID3D10Device *This,
4949         ID3D10InputLayout **ppInputLayout);
4950 
4951     void (STDMETHODCALLTYPE *IAGetVertexBuffers)(
4952         ID3D10Device *This,
4953         UINT StartSlot,
4954         UINT NumBuffers,
4955         ID3D10Buffer **ppVertexBuffers,
4956         UINT *pStrides,
4957         UINT *pOffsets);
4958 
4959     void (STDMETHODCALLTYPE *IAGetIndexBuffer)(
4960         ID3D10Device *This,
4961         ID3D10Buffer **pIndexBuffer,
4962         DXGI_FORMAT *Format,
4963         UINT *Offset);
4964 
4965     void (STDMETHODCALLTYPE *GSGetConstantBuffers)(
4966         ID3D10Device *This,
4967         UINT StartSlot,
4968         UINT NumBuffers,
4969         ID3D10Buffer **ppConstantBuffers);
4970 
4971     void (STDMETHODCALLTYPE *GSGetShader)(
4972         ID3D10Device *This,
4973         ID3D10GeometryShader **ppGeometryShader);
4974 
4975     void (STDMETHODCALLTYPE *IAGetPrimitiveTopology)(
4976         ID3D10Device *This,
4977         D3D10_PRIMITIVE_TOPOLOGY *pTopology);
4978 
4979     void (STDMETHODCALLTYPE *VSGetShaderResources)(
4980         ID3D10Device *This,
4981         UINT StartSlot,
4982         UINT NumViews,
4983         ID3D10ShaderResourceView **ppShaderResourceViews);
4984 
4985     void (STDMETHODCALLTYPE *VSGetSamplers)(
4986         ID3D10Device *This,
4987         UINT StartSlot,
4988         UINT NumSamplers,
4989         ID3D10SamplerState **ppSamplers);
4990 
4991     void (STDMETHODCALLTYPE *GetPredication)(
4992         ID3D10Device *This,
4993         ID3D10Predicate **ppPredicate,
4994         WINBOOL *pPredicateValue);
4995 
4996     void (STDMETHODCALLTYPE *GSGetShaderResources)(
4997         ID3D10Device *This,
4998         UINT StartSlot,
4999         UINT NumViews,
5000         ID3D10ShaderResourceView **ppShaderResourceViews);
5001 
5002     void (STDMETHODCALLTYPE *GSGetSamplers)(
5003         ID3D10Device *This,
5004         UINT StartSlot,
5005         UINT NumSamplers,
5006         ID3D10SamplerState **ppSamplers);
5007 
5008     void (STDMETHODCALLTYPE *OMGetRenderTargets)(
5009         ID3D10Device *This,
5010         UINT NumViews,
5011         ID3D10RenderTargetView **ppRenderTargetViews,
5012         ID3D10DepthStencilView **ppDepthStencilView);
5013 
5014     void (STDMETHODCALLTYPE *OMGetBlendState)(
5015         ID3D10Device *This,
5016         ID3D10BlendState **ppBlendState,
5017         FLOAT BlendFactor[4],
5018         UINT *pSampleMask);
5019 
5020     void (STDMETHODCALLTYPE *OMGetDepthStencilState)(
5021         ID3D10Device *This,
5022         ID3D10DepthStencilState **ppDepthStencilState,
5023         UINT *pStencilRef);
5024 
5025     void (STDMETHODCALLTYPE *SOGetTargets)(
5026         ID3D10Device *This,
5027         UINT NumBuffers,
5028         ID3D10Buffer **ppSOTargets,
5029         UINT *pOffsets);
5030 
5031     void (STDMETHODCALLTYPE *RSGetState)(
5032         ID3D10Device *This,
5033         ID3D10RasterizerState **ppRasterizerState);
5034 
5035     void (STDMETHODCALLTYPE *RSGetViewports)(
5036         ID3D10Device *This,
5037         UINT *NumViewports,
5038         D3D10_VIEWPORT *pViewports);
5039 
5040     void (STDMETHODCALLTYPE *RSGetScissorRects)(
5041         ID3D10Device *This,
5042         UINT *NumRects,
5043         D3D10_RECT *pRects);
5044 
5045     HRESULT (STDMETHODCALLTYPE *GetDeviceRemovedReason)(
5046         ID3D10Device *This);
5047 
5048     HRESULT (STDMETHODCALLTYPE *SetExceptionMode)(
5049         ID3D10Device *This,
5050         UINT RaiseFlags);
5051 
5052     UINT (STDMETHODCALLTYPE *GetExceptionMode)(
5053         ID3D10Device *This);
5054 
5055     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
5056         ID3D10Device *This,
5057         REFGUID guid,
5058         UINT *pDataSize,
5059         void *pData);
5060 
5061     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
5062         ID3D10Device *This,
5063         REFGUID guid,
5064         UINT DataSize,
5065         const void *pData);
5066 
5067     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
5068         ID3D10Device *This,
5069         REFGUID guid,
5070         const IUnknown *pData);
5071 
5072     void (STDMETHODCALLTYPE *ClearState)(
5073         ID3D10Device *This);
5074 
5075     void (STDMETHODCALLTYPE *Flush)(
5076         ID3D10Device *This);
5077 
5078     HRESULT (STDMETHODCALLTYPE *CreateBuffer)(
5079         ID3D10Device *This,
5080         const D3D10_BUFFER_DESC *pDesc,
5081         const D3D10_SUBRESOURCE_DATA *pInitialData,
5082         ID3D10Buffer **ppBuffer);
5083 
5084     HRESULT (STDMETHODCALLTYPE *CreateTexture1D)(
5085         ID3D10Device *This,
5086         const D3D10_TEXTURE1D_DESC *pDesc,
5087         const D3D10_SUBRESOURCE_DATA *pInitialData,
5088         ID3D10Texture1D **ppTexture1D);
5089 
5090     HRESULT (STDMETHODCALLTYPE *CreateTexture2D)(
5091         ID3D10Device *This,
5092         const D3D10_TEXTURE2D_DESC *pDesc,
5093         const D3D10_SUBRESOURCE_DATA *pInitialData,
5094         ID3D10Texture2D **ppTexture2D);
5095 
5096     HRESULT (STDMETHODCALLTYPE *CreateTexture3D)(
5097         ID3D10Device *This,
5098         const D3D10_TEXTURE3D_DESC *pDesc,
5099         const D3D10_SUBRESOURCE_DATA *pInitialData,
5100         ID3D10Texture3D **ppTexture3D);
5101 
5102     HRESULT (STDMETHODCALLTYPE *CreateShaderResourceView)(
5103         ID3D10Device *This,
5104         ID3D10Resource *pResource,
5105         const D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc,
5106         ID3D10ShaderResourceView **ppSRView);
5107 
5108     HRESULT (STDMETHODCALLTYPE *CreateRenderTargetView)(
5109         ID3D10Device *This,
5110         ID3D10Resource *pResource,
5111         const D3D10_RENDER_TARGET_VIEW_DESC *pDesc,
5112         ID3D10RenderTargetView **ppRTView);
5113 
5114     HRESULT (STDMETHODCALLTYPE *CreateDepthStencilView)(
5115         ID3D10Device *This,
5116         ID3D10Resource *pResource,
5117         const D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc,
5118         ID3D10DepthStencilView **ppDepthStencilView);
5119 
5120     HRESULT (STDMETHODCALLTYPE *CreateInputLayout)(
5121         ID3D10Device *This,
5122         const D3D10_INPUT_ELEMENT_DESC *pInputElementDescs,
5123         UINT NumElements,
5124         const void *pShaderBytecodeWithInputSignature,
5125         SIZE_T BytecodeLength,
5126         ID3D10InputLayout **ppInputLayout);
5127 
5128     HRESULT (STDMETHODCALLTYPE *CreateVertexShader)(
5129         ID3D10Device *This,
5130         const void *pShaderBytecode,
5131         SIZE_T BytecodeLength,
5132         ID3D10VertexShader **ppVertexShader);
5133 
5134     HRESULT (STDMETHODCALLTYPE *CreateGeometryShader)(
5135         ID3D10Device *This,
5136         const void *pShaderBytecode,
5137         SIZE_T BytecodeLength,
5138         ID3D10GeometryShader **ppGeometryShader);
5139 
5140     HRESULT (STDMETHODCALLTYPE *CreateGeometryShaderWithStreamOutput)(
5141         ID3D10Device *This,
5142         const void *pShaderBytecode,
5143         SIZE_T BytecodeLength,
5144         const D3D10_SO_DECLARATION_ENTRY *pSODeclaration,
5145         UINT NumEntries,
5146         UINT OutputStreamStride,
5147         ID3D10GeometryShader **ppGeometryShader);
5148 
5149     HRESULT (STDMETHODCALLTYPE *CreatePixelShader)(
5150         ID3D10Device *This,
5151         const void *pShaderBytecode,
5152         SIZE_T BytecodeLength,
5153         ID3D10PixelShader **ppPixelShader);
5154 
5155     HRESULT (STDMETHODCALLTYPE *CreateBlendState)(
5156         ID3D10Device *This,
5157         const D3D10_BLEND_DESC *pBlendStateDesc,
5158         ID3D10BlendState **ppBlendState);
5159 
5160     HRESULT (STDMETHODCALLTYPE *CreateDepthStencilState)(
5161         ID3D10Device *This,
5162         const D3D10_DEPTH_STENCIL_DESC *pDepthStencilDesc,
5163         ID3D10DepthStencilState **ppDepthStencilState);
5164 
5165     HRESULT (STDMETHODCALLTYPE *CreateRasterizerState)(
5166         ID3D10Device *This,
5167         const D3D10_RASTERIZER_DESC *pRasterizerDesc,
5168         ID3D10RasterizerState **ppRasterizerState);
5169 
5170     HRESULT (STDMETHODCALLTYPE *CreateSamplerState)(
5171         ID3D10Device *This,
5172         const D3D10_SAMPLER_DESC *pSamplerDesc,
5173         ID3D10SamplerState **ppSamplerState);
5174 
5175     HRESULT (STDMETHODCALLTYPE *CreateQuery)(
5176         ID3D10Device *This,
5177         const D3D10_QUERY_DESC *pQueryDesc,
5178         ID3D10Query **ppQuery);
5179 
5180     HRESULT (STDMETHODCALLTYPE *CreatePredicate)(
5181         ID3D10Device *This,
5182         const D3D10_QUERY_DESC *pPredicateDesc,
5183         ID3D10Predicate **ppPredicate);
5184 
5185     HRESULT (STDMETHODCALLTYPE *CreateCounter)(
5186         ID3D10Device *This,
5187         const D3D10_COUNTER_DESC *pCounterDesc,
5188         ID3D10Counter **ppCounter);
5189 
5190     HRESULT (STDMETHODCALLTYPE *CheckFormatSupport)(
5191         ID3D10Device *This,
5192         DXGI_FORMAT Format,
5193         UINT *pFormatSupport);
5194 
5195     HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels)(
5196         ID3D10Device *This,
5197         DXGI_FORMAT Format,
5198         UINT SampleCount,
5199         UINT *pNumQualityLevels);
5200 
5201     void (STDMETHODCALLTYPE *CheckCounterInfo)(
5202         ID3D10Device *This,
5203         D3D10_COUNTER_INFO *pCounterInfo);
5204 
5205     HRESULT (STDMETHODCALLTYPE *CheckCounter)(
5206         ID3D10Device *This,
5207         const D3D10_COUNTER_DESC *pDesc,
5208         D3D10_COUNTER_TYPE *pType,
5209         UINT *pActiveCounters,
5210         char *name,
5211         UINT *pNameLength,
5212         char *units,
5213         UINT *pUnitsLength,
5214         char *description,
5215         UINT *pDescriptionLength);
5216 
5217     UINT (STDMETHODCALLTYPE *GetCreationFlags)(
5218         ID3D10Device *This);
5219 
5220     HRESULT (STDMETHODCALLTYPE *OpenSharedResource)(
5221         ID3D10Device *This,
5222         HANDLE hResource,
5223         REFIID ReturnedInterface,
5224         void **ppResource);
5225 
5226     void (STDMETHODCALLTYPE *SetTextFilterSize)(
5227         ID3D10Device *This,
5228         UINT Width,
5229         UINT Height);
5230 
5231     void (STDMETHODCALLTYPE *GetTextFilterSize)(
5232         ID3D10Device *This,
5233         UINT *pWidth,
5234         UINT *pHeight);
5235 
5236     END_INTERFACE
5237 } ID3D10DeviceVtbl;
5238 
5239 interface ID3D10Device {
5240     CONST_VTBL ID3D10DeviceVtbl* lpVtbl;
5241 };
5242 
5243 #ifdef COBJMACROS
5244 #ifndef WIDL_C_INLINE_WRAPPERS
5245 /*** IUnknown methods ***/
5246 #define ID3D10Device_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5247 #define ID3D10Device_AddRef(This) (This)->lpVtbl->AddRef(This)
5248 #define ID3D10Device_Release(This) (This)->lpVtbl->Release(This)
5249 /*** ID3D10Device methods ***/
5250 #define ID3D10Device_VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
5251 #define ID3D10Device_PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
5252 #define ID3D10Device_PSSetShader(This,pPixelShader) (This)->lpVtbl->PSSetShader(This,pPixelShader)
5253 #define ID3D10Device_PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
5254 #define ID3D10Device_VSSetShader(This,pVertexShader) (This)->lpVtbl->VSSetShader(This,pVertexShader)
5255 #define ID3D10Device_DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) (This)->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation)
5256 #define ID3D10Device_Draw(This,VertexCount,StartVertexLocation) (This)->lpVtbl->Draw(This,VertexCount,StartVertexLocation)
5257 #define ID3D10Device_PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
5258 #define ID3D10Device_IASetInputLayout(This,pInputLayout) (This)->lpVtbl->IASetInputLayout(This,pInputLayout)
5259 #define ID3D10Device_IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets)
5260 #define ID3D10Device_IASetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset)
5261 #define ID3D10Device_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation)
5262 #define ID3D10Device_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation)
5263 #define ID3D10Device_GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
5264 #define ID3D10Device_GSSetShader(This,pShader) (This)->lpVtbl->GSSetShader(This,pShader)
5265 #define ID3D10Device_IASetPrimitiveTopology(This,Topology) (This)->lpVtbl->IASetPrimitiveTopology(This,Topology)
5266 #define ID3D10Device_VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
5267 #define ID3D10Device_VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
5268 #define ID3D10Device_SetPredication(This,pPredicate,PredicateValue) (This)->lpVtbl->SetPredication(This,pPredicate,PredicateValue)
5269 #define ID3D10Device_GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
5270 #define ID3D10Device_GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
5271 #define ID3D10Device_OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) (This)->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView)
5272 #define ID3D10Device_OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) (This)->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask)
5273 #define ID3D10Device_OMSetDepthStencilState(This,pDepthStencilState,StencilRef) (This)->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef)
5274 #define ID3D10Device_SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) (This)->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets)
5275 #define ID3D10Device_DrawAuto(This) (This)->lpVtbl->DrawAuto(This)
5276 #define ID3D10Device_RSSetState(This,pRasterizerState) (This)->lpVtbl->RSSetState(This,pRasterizerState)
5277 #define ID3D10Device_RSSetViewports(This,NumViewports,pViewports) (This)->lpVtbl->RSSetViewports(This,NumViewports,pViewports)
5278 #define ID3D10Device_RSSetScissorRects(This,NumRects,pRects) (This)->lpVtbl->RSSetScissorRects(This,NumRects,pRects)
5279 #define ID3D10Device_CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) (This)->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox)
5280 #define ID3D10Device_CopyResource(This,pDstResource,pSrcResource) (This)->lpVtbl->CopyResource(This,pDstResource,pSrcResource)
5281 #define ID3D10Device_UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) (This)->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch)
5282 #define ID3D10Device_ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) (This)->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA)
5283 #define ID3D10Device_ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) (This)->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil)
5284 #define ID3D10Device_GenerateMips(This,pShaderResourceView) (This)->lpVtbl->GenerateMips(This,pShaderResourceView)
5285 #define ID3D10Device_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) (This)->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format)
5286 #define ID3D10Device_VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
5287 #define ID3D10Device_PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
5288 #define ID3D10Device_PSGetShader(This,ppPixelShader) (This)->lpVtbl->PSGetShader(This,ppPixelShader)
5289 #define ID3D10Device_PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
5290 #define ID3D10Device_VSGetShader(This,ppVertexShader) (This)->lpVtbl->VSGetShader(This,ppVertexShader)
5291 #define ID3D10Device_PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
5292 #define ID3D10Device_IAGetInputLayout(This,ppInputLayout) (This)->lpVtbl->IAGetInputLayout(This,ppInputLayout)
5293 #define ID3D10Device_IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets)
5294 #define ID3D10Device_IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset)
5295 #define ID3D10Device_GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
5296 #define ID3D10Device_GSGetShader(This,ppGeometryShader) (This)->lpVtbl->GSGetShader(This,ppGeometryShader)
5297 #define ID3D10Device_IAGetPrimitiveTopology(This,pTopology) (This)->lpVtbl->IAGetPrimitiveTopology(This,pTopology)
5298 #define ID3D10Device_VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
5299 #define ID3D10Device_VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
5300 #define ID3D10Device_GetPredication(This,ppPredicate,pPredicateValue) (This)->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue)
5301 #define ID3D10Device_GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
5302 #define ID3D10Device_GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
5303 #define ID3D10Device_OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) (This)->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView)
5304 #define ID3D10Device_OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) (This)->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask)
5305 #define ID3D10Device_OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) (This)->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef)
5306 #define ID3D10Device_SOGetTargets(This,NumBuffers,ppSOTargets,pOffsets) (This)->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets,pOffsets)
5307 #define ID3D10Device_RSGetState(This,ppRasterizerState) (This)->lpVtbl->RSGetState(This,ppRasterizerState)
5308 #define ID3D10Device_RSGetViewports(This,NumViewports,pViewports) (This)->lpVtbl->RSGetViewports(This,NumViewports,pViewports)
5309 #define ID3D10Device_RSGetScissorRects(This,NumRects,pRects) (This)->lpVtbl->RSGetScissorRects(This,NumRects,pRects)
5310 #define ID3D10Device_GetDeviceRemovedReason(This) (This)->lpVtbl->GetDeviceRemovedReason(This)
5311 #define ID3D10Device_SetExceptionMode(This,RaiseFlags) (This)->lpVtbl->SetExceptionMode(This,RaiseFlags)
5312 #define ID3D10Device_GetExceptionMode(This) (This)->lpVtbl->GetExceptionMode(This)
5313 #define ID3D10Device_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
5314 #define ID3D10Device_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
5315 #define ID3D10Device_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
5316 #define ID3D10Device_ClearState(This) (This)->lpVtbl->ClearState(This)
5317 #define ID3D10Device_Flush(This) (This)->lpVtbl->Flush(This)
5318 #define ID3D10Device_CreateBuffer(This,pDesc,pInitialData,ppBuffer) (This)->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer)
5319 #define ID3D10Device_CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) (This)->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D)
5320 #define ID3D10Device_CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) (This)->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D)
5321 #define ID3D10Device_CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) (This)->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D)
5322 #define ID3D10Device_CreateShaderResourceView(This,pResource,pDesc,ppSRView) (This)->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView)
5323 #define ID3D10Device_CreateRenderTargetView(This,pResource,pDesc,ppRTView) (This)->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView)
5324 #define ID3D10Device_CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) (This)->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView)
5325 #define ID3D10Device_CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) (This)->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout)
5326 #define ID3D10Device_CreateVertexShader(This,pShaderBytecode,BytecodeLength,ppVertexShader) (This)->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,ppVertexShader)
5327 #define ID3D10Device_CreateGeometryShader(This,pShaderBytecode,BytecodeLength,ppGeometryShader) (This)->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,ppGeometryShader)
5328 #define ID3D10Device_CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,OutputStreamStride,ppGeometryShader) (This)->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,OutputStreamStride,ppGeometryShader)
5329 #define ID3D10Device_CreatePixelShader(This,pShaderBytecode,BytecodeLength,ppPixelShader) (This)->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,ppPixelShader)
5330 #define ID3D10Device_CreateBlendState(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState)
5331 #define ID3D10Device_CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) (This)->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState)
5332 #define ID3D10Device_CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState)
5333 #define ID3D10Device_CreateSamplerState(This,pSamplerDesc,ppSamplerState) (This)->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState)
5334 #define ID3D10Device_CreateQuery(This,pQueryDesc,ppQuery) (This)->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery)
5335 #define ID3D10Device_CreatePredicate(This,pPredicateDesc,ppPredicate) (This)->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate)
5336 #define ID3D10Device_CreateCounter(This,pCounterDesc,ppCounter) (This)->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter)
5337 #define ID3D10Device_CheckFormatSupport(This,Format,pFormatSupport) (This)->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport)
5338 #define ID3D10Device_CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) (This)->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels)
5339 #define ID3D10Device_CheckCounterInfo(This,pCounterInfo) (This)->lpVtbl->CheckCounterInfo(This,pCounterInfo)
5340 #define ID3D10Device_CheckCounter(This,pDesc,pType,pActiveCounters,name,pNameLength,units,pUnitsLength,description,pDescriptionLength) (This)->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,name,pNameLength,units,pUnitsLength,description,pDescriptionLength)
5341 #define ID3D10Device_GetCreationFlags(This) (This)->lpVtbl->GetCreationFlags(This)
5342 #define ID3D10Device_OpenSharedResource(This,hResource,ReturnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource)
5343 #define ID3D10Device_SetTextFilterSize(This,Width,Height) (This)->lpVtbl->SetTextFilterSize(This,Width,Height)
5344 #define ID3D10Device_GetTextFilterSize(This,pWidth,pHeight) (This)->lpVtbl->GetTextFilterSize(This,pWidth,pHeight)
5345 #else
5346 /*** IUnknown methods ***/
5347 static FORCEINLINE HRESULT ID3D10Device_QueryInterface(ID3D10Device* This,REFIID riid,void **ppvObject) {
5348     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5349 }
5350 static FORCEINLINE ULONG ID3D10Device_AddRef(ID3D10Device* This) {
5351     return This->lpVtbl->AddRef(This);
5352 }
5353 static FORCEINLINE ULONG ID3D10Device_Release(ID3D10Device* This) {
5354     return This->lpVtbl->Release(This);
5355 }
5356 /*** ID3D10Device methods ***/
5357 static FORCEINLINE void ID3D10Device_VSSetConstantBuffers(ID3D10Device* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer *const *ppConstantBuffers) {
5358     This->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
5359 }
5360 static FORCEINLINE void ID3D10Device_PSSetShaderResources(ID3D10Device* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView *const *ppShaderResourceViews) {
5361     This->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
5362 }
5363 static FORCEINLINE void ID3D10Device_PSSetShader(ID3D10Device* This,ID3D10PixelShader *pPixelShader) {
5364     This->lpVtbl->PSSetShader(This,pPixelShader);
5365 }
5366 static FORCEINLINE void ID3D10Device_PSSetSamplers(ID3D10Device* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState *const *ppSamplers) {
5367     This->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
5368 }
5369 static FORCEINLINE void ID3D10Device_VSSetShader(ID3D10Device* This,ID3D10VertexShader *pVertexShader) {
5370     This->lpVtbl->VSSetShader(This,pVertexShader);
5371 }
5372 static FORCEINLINE void ID3D10Device_DrawIndexed(ID3D10Device* This,UINT IndexCount,UINT StartIndexLocation,INT BaseVertexLocation) {
5373     This->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation);
5374 }
5375 static FORCEINLINE void ID3D10Device_Draw(ID3D10Device* This,UINT VertexCount,UINT StartVertexLocation) {
5376     This->lpVtbl->Draw(This,VertexCount,StartVertexLocation);
5377 }
5378 static FORCEINLINE void ID3D10Device_PSSetConstantBuffers(ID3D10Device* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer *const *ppConstantBuffers) {
5379     This->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
5380 }
5381 static FORCEINLINE void ID3D10Device_IASetInputLayout(ID3D10Device* This,ID3D10InputLayout *pInputLayout) {
5382     This->lpVtbl->IASetInputLayout(This,pInputLayout);
5383 }
5384 static FORCEINLINE void ID3D10Device_IASetVertexBuffers(ID3D10Device* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer *const *ppVertexBuffers,const UINT *pStrides,const UINT *pOffsets) {
5385     This->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets);
5386 }
5387 static FORCEINLINE void ID3D10Device_IASetIndexBuffer(ID3D10Device* This,ID3D10Buffer *pIndexBuffer,DXGI_FORMAT Format,UINT Offset) {
5388     This->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset);
5389 }
5390 static FORCEINLINE void ID3D10Device_DrawIndexedInstanced(ID3D10Device* This,UINT IndexCountPerInstance,UINT InstanceCount,UINT StartIndexLocation,INT BaseVertexLocation,UINT StartInstanceLocation) {
5391     This->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation);
5392 }
5393 static FORCEINLINE void ID3D10Device_DrawInstanced(ID3D10Device* This,UINT VertexCountPerInstance,UINT InstanceCount,UINT StartVertexLocation,UINT StartInstanceLocation) {
5394     This->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation);
5395 }
5396 static FORCEINLINE void ID3D10Device_GSSetConstantBuffers(ID3D10Device* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer *const *ppConstantBuffers) {
5397     This->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
5398 }
5399 static FORCEINLINE void ID3D10Device_GSSetShader(ID3D10Device* This,ID3D10GeometryShader *pShader) {
5400     This->lpVtbl->GSSetShader(This,pShader);
5401 }
5402 static FORCEINLINE void ID3D10Device_IASetPrimitiveTopology(ID3D10Device* This,D3D10_PRIMITIVE_TOPOLOGY Topology) {
5403     This->lpVtbl->IASetPrimitiveTopology(This,Topology);
5404 }
5405 static FORCEINLINE void ID3D10Device_VSSetShaderResources(ID3D10Device* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView *const *ppShaderResourceViews) {
5406     This->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
5407 }
5408 static FORCEINLINE void ID3D10Device_VSSetSamplers(ID3D10Device* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState *const *ppSamplers) {
5409     This->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
5410 }
5411 static FORCEINLINE void ID3D10Device_SetPredication(ID3D10Device* This,ID3D10Predicate *pPredicate,WINBOOL PredicateValue) {
5412     This->lpVtbl->SetPredication(This,pPredicate,PredicateValue);
5413 }
5414 static FORCEINLINE void ID3D10Device_GSSetShaderResources(ID3D10Device* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView *const *ppShaderResourceViews) {
5415     This->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
5416 }
5417 static FORCEINLINE void ID3D10Device_GSSetSamplers(ID3D10Device* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState *const *ppSamplers) {
5418     This->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
5419 }
5420 static FORCEINLINE void ID3D10Device_OMSetRenderTargets(ID3D10Device* This,UINT NumViews,ID3D10RenderTargetView *const *ppRenderTargetViews,ID3D10DepthStencilView *pDepthStencilView) {
5421     This->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView);
5422 }
5423 static FORCEINLINE void ID3D10Device_OMSetBlendState(ID3D10Device* This,ID3D10BlendState *pBlendState,const FLOAT BlendFactor[4],UINT SampleMask) {
5424     This->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask);
5425 }
5426 static FORCEINLINE void ID3D10Device_OMSetDepthStencilState(ID3D10Device* This,ID3D10DepthStencilState *pDepthStencilState,UINT StencilRef) {
5427     This->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef);
5428 }
5429 static FORCEINLINE void ID3D10Device_SOSetTargets(ID3D10Device* This,UINT NumBuffers,ID3D10Buffer *const *ppSOTargets,const UINT *pOffsets) {
5430     This->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets);
5431 }
5432 static FORCEINLINE void ID3D10Device_DrawAuto(ID3D10Device* This) {
5433     This->lpVtbl->DrawAuto(This);
5434 }
5435 static FORCEINLINE void ID3D10Device_RSSetState(ID3D10Device* This,ID3D10RasterizerState *pRasterizerState) {
5436     This->lpVtbl->RSSetState(This,pRasterizerState);
5437 }
5438 static FORCEINLINE void ID3D10Device_RSSetViewports(ID3D10Device* This,UINT NumViewports,const D3D10_VIEWPORT *pViewports) {
5439     This->lpVtbl->RSSetViewports(This,NumViewports,pViewports);
5440 }
5441 static FORCEINLINE void ID3D10Device_RSSetScissorRects(ID3D10Device* This,UINT NumRects,const D3D10_RECT *pRects) {
5442     This->lpVtbl->RSSetScissorRects(This,NumRects,pRects);
5443 }
5444 static FORCEINLINE void ID3D10Device_CopySubresourceRegion(ID3D10Device* This,ID3D10Resource *pDstResource,UINT DstSubresource,UINT DstX,UINT DstY,UINT DstZ,ID3D10Resource *pSrcResource,UINT SrcSubresource,const D3D10_BOX *pSrcBox) {
5445     This->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox);
5446 }
5447 static FORCEINLINE void ID3D10Device_CopyResource(ID3D10Device* This,ID3D10Resource *pDstResource,ID3D10Resource *pSrcResource) {
5448     This->lpVtbl->CopyResource(This,pDstResource,pSrcResource);
5449 }
5450 static FORCEINLINE void ID3D10Device_UpdateSubresource(ID3D10Device* This,ID3D10Resource *pDstResource,UINT DstSubresource,const D3D10_BOX *pDstBox,const void *pSrcData,UINT SrcRowPitch,UINT SrcDepthPitch) {
5451     This->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch);
5452 }
5453 static FORCEINLINE void ID3D10Device_ClearRenderTargetView(ID3D10Device* This,ID3D10RenderTargetView *pRenderTargetView,const FLOAT ColorRGBA[4]) {
5454     This->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA);
5455 }
5456 static FORCEINLINE void ID3D10Device_ClearDepthStencilView(ID3D10Device* This,ID3D10DepthStencilView *pDepthStencilView,UINT ClearFlags,FLOAT Depth,UINT8 Stencil) {
5457     This->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil);
5458 }
5459 static FORCEINLINE void ID3D10Device_GenerateMips(ID3D10Device* This,ID3D10ShaderResourceView *pShaderResourceView) {
5460     This->lpVtbl->GenerateMips(This,pShaderResourceView);
5461 }
5462 static FORCEINLINE void ID3D10Device_ResolveSubresource(ID3D10Device* This,ID3D10Resource *pDstResource,UINT DstSubresource,ID3D10Resource *pSrcResource,UINT SrcSubresource,DXGI_FORMAT Format) {
5463     This->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format);
5464 }
5465 static FORCEINLINE void ID3D10Device_VSGetConstantBuffers(ID3D10Device* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer **ppConstantBuffers) {
5466     This->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
5467 }
5468 static FORCEINLINE void ID3D10Device_PSGetShaderResources(ID3D10Device* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView **ppShaderResourceViews) {
5469     This->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
5470 }
5471 static FORCEINLINE void ID3D10Device_PSGetShader(ID3D10Device* This,ID3D10PixelShader **ppPixelShader) {
5472     This->lpVtbl->PSGetShader(This,ppPixelShader);
5473 }
5474 static FORCEINLINE void ID3D10Device_PSGetSamplers(ID3D10Device* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState **ppSamplers) {
5475     This->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
5476 }
5477 static FORCEINLINE void ID3D10Device_VSGetShader(ID3D10Device* This,ID3D10VertexShader **ppVertexShader) {
5478     This->lpVtbl->VSGetShader(This,ppVertexShader);
5479 }
5480 static FORCEINLINE void ID3D10Device_PSGetConstantBuffers(ID3D10Device* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer **ppConstantBuffers) {
5481     This->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
5482 }
5483 static FORCEINLINE void ID3D10Device_IAGetInputLayout(ID3D10Device* This,ID3D10InputLayout **ppInputLayout) {
5484     This->lpVtbl->IAGetInputLayout(This,ppInputLayout);
5485 }
5486 static FORCEINLINE void ID3D10Device_IAGetVertexBuffers(ID3D10Device* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer **ppVertexBuffers,UINT *pStrides,UINT *pOffsets) {
5487     This->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets);
5488 }
5489 static FORCEINLINE void ID3D10Device_IAGetIndexBuffer(ID3D10Device* This,ID3D10Buffer **pIndexBuffer,DXGI_FORMAT *Format,UINT *Offset) {
5490     This->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset);
5491 }
5492 static FORCEINLINE void ID3D10Device_GSGetConstantBuffers(ID3D10Device* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer **ppConstantBuffers) {
5493     This->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
5494 }
5495 static FORCEINLINE void ID3D10Device_GSGetShader(ID3D10Device* This,ID3D10GeometryShader **ppGeometryShader) {
5496     This->lpVtbl->GSGetShader(This,ppGeometryShader);
5497 }
5498 static FORCEINLINE void ID3D10Device_IAGetPrimitiveTopology(ID3D10Device* This,D3D10_PRIMITIVE_TOPOLOGY *pTopology) {
5499     This->lpVtbl->IAGetPrimitiveTopology(This,pTopology);
5500 }
5501 static FORCEINLINE void ID3D10Device_VSGetShaderResources(ID3D10Device* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView **ppShaderResourceViews) {
5502     This->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
5503 }
5504 static FORCEINLINE void ID3D10Device_VSGetSamplers(ID3D10Device* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState **ppSamplers) {
5505     This->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
5506 }
5507 static FORCEINLINE void ID3D10Device_GetPredication(ID3D10Device* This,ID3D10Predicate **ppPredicate,WINBOOL *pPredicateValue) {
5508     This->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue);
5509 }
5510 static FORCEINLINE void ID3D10Device_GSGetShaderResources(ID3D10Device* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView **ppShaderResourceViews) {
5511     This->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
5512 }
5513 static FORCEINLINE void ID3D10Device_GSGetSamplers(ID3D10Device* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState **ppSamplers) {
5514     This->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
5515 }
5516 static FORCEINLINE void ID3D10Device_OMGetRenderTargets(ID3D10Device* This,UINT NumViews,ID3D10RenderTargetView **ppRenderTargetViews,ID3D10DepthStencilView **ppDepthStencilView) {
5517     This->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView);
5518 }
5519 static FORCEINLINE void ID3D10Device_OMGetBlendState(ID3D10Device* This,ID3D10BlendState **ppBlendState,FLOAT BlendFactor[4],UINT *pSampleMask) {
5520     This->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask);
5521 }
5522 static FORCEINLINE void ID3D10Device_OMGetDepthStencilState(ID3D10Device* This,ID3D10DepthStencilState **ppDepthStencilState,UINT *pStencilRef) {
5523     This->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef);
5524 }
5525 static FORCEINLINE void ID3D10Device_SOGetTargets(ID3D10Device* This,UINT NumBuffers,ID3D10Buffer **ppSOTargets,UINT *pOffsets) {
5526     This->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets,pOffsets);
5527 }
5528 static FORCEINLINE void ID3D10Device_RSGetState(ID3D10Device* This,ID3D10RasterizerState **ppRasterizerState) {
5529     This->lpVtbl->RSGetState(This,ppRasterizerState);
5530 }
5531 static FORCEINLINE void ID3D10Device_RSGetViewports(ID3D10Device* This,UINT *NumViewports,D3D10_VIEWPORT *pViewports) {
5532     This->lpVtbl->RSGetViewports(This,NumViewports,pViewports);
5533 }
5534 static FORCEINLINE void ID3D10Device_RSGetScissorRects(ID3D10Device* This,UINT *NumRects,D3D10_RECT *pRects) {
5535     This->lpVtbl->RSGetScissorRects(This,NumRects,pRects);
5536 }
5537 static FORCEINLINE HRESULT ID3D10Device_GetDeviceRemovedReason(ID3D10Device* This) {
5538     return This->lpVtbl->GetDeviceRemovedReason(This);
5539 }
5540 static FORCEINLINE HRESULT ID3D10Device_SetExceptionMode(ID3D10Device* This,UINT RaiseFlags) {
5541     return This->lpVtbl->SetExceptionMode(This,RaiseFlags);
5542 }
5543 static FORCEINLINE UINT ID3D10Device_GetExceptionMode(ID3D10Device* This) {
5544     return This->lpVtbl->GetExceptionMode(This);
5545 }
5546 static FORCEINLINE HRESULT ID3D10Device_GetPrivateData(ID3D10Device* This,REFGUID guid,UINT *pDataSize,void *pData) {
5547     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
5548 }
5549 static FORCEINLINE HRESULT ID3D10Device_SetPrivateData(ID3D10Device* This,REFGUID guid,UINT DataSize,const void *pData) {
5550     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
5551 }
5552 static FORCEINLINE HRESULT ID3D10Device_SetPrivateDataInterface(ID3D10Device* This,REFGUID guid,const IUnknown *pData) {
5553     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
5554 }
5555 static FORCEINLINE void ID3D10Device_ClearState(ID3D10Device* This) {
5556     This->lpVtbl->ClearState(This);
5557 }
5558 static FORCEINLINE void ID3D10Device_Flush(ID3D10Device* This) {
5559     This->lpVtbl->Flush(This);
5560 }
5561 static FORCEINLINE HRESULT ID3D10Device_CreateBuffer(ID3D10Device* This,const D3D10_BUFFER_DESC *pDesc,const D3D10_SUBRESOURCE_DATA *pInitialData,ID3D10Buffer **ppBuffer) {
5562     return This->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer);
5563 }
5564 static FORCEINLINE HRESULT ID3D10Device_CreateTexture1D(ID3D10Device* This,const D3D10_TEXTURE1D_DESC *pDesc,const D3D10_SUBRESOURCE_DATA *pInitialData,ID3D10Texture1D **ppTexture1D) {
5565     return This->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D);
5566 }
5567 static FORCEINLINE HRESULT ID3D10Device_CreateTexture2D(ID3D10Device* This,const D3D10_TEXTURE2D_DESC *pDesc,const D3D10_SUBRESOURCE_DATA *pInitialData,ID3D10Texture2D **ppTexture2D) {
5568     return This->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D);
5569 }
5570 static FORCEINLINE HRESULT ID3D10Device_CreateTexture3D(ID3D10Device* This,const D3D10_TEXTURE3D_DESC *pDesc,const D3D10_SUBRESOURCE_DATA *pInitialData,ID3D10Texture3D **ppTexture3D) {
5571     return This->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D);
5572 }
5573 static FORCEINLINE HRESULT ID3D10Device_CreateShaderResourceView(ID3D10Device* This,ID3D10Resource *pResource,const D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc,ID3D10ShaderResourceView **ppSRView) {
5574     return This->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView);
5575 }
5576 static FORCEINLINE HRESULT ID3D10Device_CreateRenderTargetView(ID3D10Device* This,ID3D10Resource *pResource,const D3D10_RENDER_TARGET_VIEW_DESC *pDesc,ID3D10RenderTargetView **ppRTView) {
5577     return This->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView);
5578 }
5579 static FORCEINLINE HRESULT ID3D10Device_CreateDepthStencilView(ID3D10Device* This,ID3D10Resource *pResource,const D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc,ID3D10DepthStencilView **ppDepthStencilView) {
5580     return This->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView);
5581 }
5582 static FORCEINLINE HRESULT ID3D10Device_CreateInputLayout(ID3D10Device* This,const D3D10_INPUT_ELEMENT_DESC *pInputElementDescs,UINT NumElements,const void *pShaderBytecodeWithInputSignature,SIZE_T BytecodeLength,ID3D10InputLayout **ppInputLayout) {
5583     return This->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout);
5584 }
5585 static FORCEINLINE HRESULT ID3D10Device_CreateVertexShader(ID3D10Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D10VertexShader **ppVertexShader) {
5586     return This->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,ppVertexShader);
5587 }
5588 static FORCEINLINE HRESULT ID3D10Device_CreateGeometryShader(ID3D10Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D10GeometryShader **ppGeometryShader) {
5589     return This->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,ppGeometryShader);
5590 }
5591 static FORCEINLINE HRESULT ID3D10Device_CreateGeometryShaderWithStreamOutput(ID3D10Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,const D3D10_SO_DECLARATION_ENTRY *pSODeclaration,UINT NumEntries,UINT OutputStreamStride,ID3D10GeometryShader **ppGeometryShader) {
5592     return This->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,OutputStreamStride,ppGeometryShader);
5593 }
5594 static FORCEINLINE HRESULT ID3D10Device_CreatePixelShader(ID3D10Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D10PixelShader **ppPixelShader) {
5595     return This->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,ppPixelShader);
5596 }
5597 static FORCEINLINE HRESULT ID3D10Device_CreateBlendState(ID3D10Device* This,const D3D10_BLEND_DESC *pBlendStateDesc,ID3D10BlendState **ppBlendState) {
5598     return This->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState);
5599 }
5600 static FORCEINLINE HRESULT ID3D10Device_CreateDepthStencilState(ID3D10Device* This,const D3D10_DEPTH_STENCIL_DESC *pDepthStencilDesc,ID3D10DepthStencilState **ppDepthStencilState) {
5601     return This->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState);
5602 }
5603 static FORCEINLINE HRESULT ID3D10Device_CreateRasterizerState(ID3D10Device* This,const D3D10_RASTERIZER_DESC *pRasterizerDesc,ID3D10RasterizerState **ppRasterizerState) {
5604     return This->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState);
5605 }
5606 static FORCEINLINE HRESULT ID3D10Device_CreateSamplerState(ID3D10Device* This,const D3D10_SAMPLER_DESC *pSamplerDesc,ID3D10SamplerState **ppSamplerState) {
5607     return This->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState);
5608 }
5609 static FORCEINLINE HRESULT ID3D10Device_CreateQuery(ID3D10Device* This,const D3D10_QUERY_DESC *pQueryDesc,ID3D10Query **ppQuery) {
5610     return This->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery);
5611 }
5612 static FORCEINLINE HRESULT ID3D10Device_CreatePredicate(ID3D10Device* This,const D3D10_QUERY_DESC *pPredicateDesc,ID3D10Predicate **ppPredicate) {
5613     return This->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate);
5614 }
5615 static FORCEINLINE HRESULT ID3D10Device_CreateCounter(ID3D10Device* This,const D3D10_COUNTER_DESC *pCounterDesc,ID3D10Counter **ppCounter) {
5616     return This->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter);
5617 }
5618 static FORCEINLINE HRESULT ID3D10Device_CheckFormatSupport(ID3D10Device* This,DXGI_FORMAT Format,UINT *pFormatSupport) {
5619     return This->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport);
5620 }
5621 static FORCEINLINE HRESULT ID3D10Device_CheckMultisampleQualityLevels(ID3D10Device* This,DXGI_FORMAT Format,UINT SampleCount,UINT *pNumQualityLevels) {
5622     return This->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels);
5623 }
5624 static FORCEINLINE void ID3D10Device_CheckCounterInfo(ID3D10Device* This,D3D10_COUNTER_INFO *pCounterInfo) {
5625     This->lpVtbl->CheckCounterInfo(This,pCounterInfo);
5626 }
5627 static FORCEINLINE HRESULT ID3D10Device_CheckCounter(ID3D10Device* This,const D3D10_COUNTER_DESC *pDesc,D3D10_COUNTER_TYPE *pType,UINT *pActiveCounters,char *name,UINT *pNameLength,char *units,UINT *pUnitsLength,char *description,UINT *pDescriptionLength) {
5628     return This->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,name,pNameLength,units,pUnitsLength,description,pDescriptionLength);
5629 }
5630 static FORCEINLINE UINT ID3D10Device_GetCreationFlags(ID3D10Device* This) {
5631     return This->lpVtbl->GetCreationFlags(This);
5632 }
5633 static FORCEINLINE HRESULT ID3D10Device_OpenSharedResource(ID3D10Device* This,HANDLE hResource,REFIID ReturnedInterface,void **ppResource) {
5634     return This->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource);
5635 }
5636 static FORCEINLINE void ID3D10Device_SetTextFilterSize(ID3D10Device* This,UINT Width,UINT Height) {
5637     This->lpVtbl->SetTextFilterSize(This,Width,Height);
5638 }
5639 static FORCEINLINE void ID3D10Device_GetTextFilterSize(ID3D10Device* This,UINT *pWidth,UINT *pHeight) {
5640     This->lpVtbl->GetTextFilterSize(This,pWidth,pHeight);
5641 }
5642 #endif
5643 #endif
5644 
5645 #endif
5646 
5647 
5648 #endif  /* __ID3D10Device_INTERFACE_DEFINED__ */
5649 
5650 /*****************************************************************************
5651  * ID3D10Multithread interface
5652  */
5653 #ifndef __ID3D10Multithread_INTERFACE_DEFINED__
5654 #define __ID3D10Multithread_INTERFACE_DEFINED__
5655 
5656 DEFINE_GUID(IID_ID3D10Multithread, 0x9b7e4e00, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0);
5657 #if defined(__cplusplus) && !defined(CINTERFACE)
5658 MIDL_INTERFACE("9b7e4e00-342c-4106-a19f-4f2704f689f0")
5659 ID3D10Multithread : public IUnknown
5660 {
5661     virtual void STDMETHODCALLTYPE Enter(
5662         ) = 0;
5663 
5664     virtual void STDMETHODCALLTYPE Leave(
5665         ) = 0;
5666 
5667     virtual WINBOOL STDMETHODCALLTYPE SetMultithreadProtected(
5668         WINBOOL bMTProtect) = 0;
5669 
5670     virtual WINBOOL STDMETHODCALLTYPE GetMultithreadProtected(
5671         ) = 0;
5672 
5673 };
5674 #ifdef __CRT_UUID_DECL
5675 __CRT_UUID_DECL(ID3D10Multithread, 0x9b7e4e00, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0)
5676 #endif
5677 #else
5678 typedef struct ID3D10MultithreadVtbl {
5679     BEGIN_INTERFACE
5680 
5681     /*** IUnknown methods ***/
5682     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5683         ID3D10Multithread *This,
5684         REFIID riid,
5685         void **ppvObject);
5686 
5687     ULONG (STDMETHODCALLTYPE *AddRef)(
5688         ID3D10Multithread *This);
5689 
5690     ULONG (STDMETHODCALLTYPE *Release)(
5691         ID3D10Multithread *This);
5692 
5693     /*** ID3D10Multithread methods ***/
5694     void (STDMETHODCALLTYPE *Enter)(
5695         ID3D10Multithread *This);
5696 
5697     void (STDMETHODCALLTYPE *Leave)(
5698         ID3D10Multithread *This);
5699 
5700     WINBOOL (STDMETHODCALLTYPE *SetMultithreadProtected)(
5701         ID3D10Multithread *This,
5702         WINBOOL bMTProtect);
5703 
5704     WINBOOL (STDMETHODCALLTYPE *GetMultithreadProtected)(
5705         ID3D10Multithread *This);
5706 
5707     END_INTERFACE
5708 } ID3D10MultithreadVtbl;
5709 
5710 interface ID3D10Multithread {
5711     CONST_VTBL ID3D10MultithreadVtbl* lpVtbl;
5712 };
5713 
5714 #ifdef COBJMACROS
5715 #ifndef WIDL_C_INLINE_WRAPPERS
5716 /*** IUnknown methods ***/
5717 #define ID3D10Multithread_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5718 #define ID3D10Multithread_AddRef(This) (This)->lpVtbl->AddRef(This)
5719 #define ID3D10Multithread_Release(This) (This)->lpVtbl->Release(This)
5720 /*** ID3D10Multithread methods ***/
5721 #define ID3D10Multithread_Enter(This) (This)->lpVtbl->Enter(This)
5722 #define ID3D10Multithread_Leave(This) (This)->lpVtbl->Leave(This)
5723 #define ID3D10Multithread_SetMultithreadProtected(This,bMTProtect) (This)->lpVtbl->SetMultithreadProtected(This,bMTProtect)
5724 #define ID3D10Multithread_GetMultithreadProtected(This) (This)->lpVtbl->GetMultithreadProtected(This)
5725 #else
5726 /*** IUnknown methods ***/
5727 static FORCEINLINE HRESULT ID3D10Multithread_QueryInterface(ID3D10Multithread* This,REFIID riid,void **ppvObject) {
5728     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5729 }
5730 static FORCEINLINE ULONG ID3D10Multithread_AddRef(ID3D10Multithread* This) {
5731     return This->lpVtbl->AddRef(This);
5732 }
5733 static FORCEINLINE ULONG ID3D10Multithread_Release(ID3D10Multithread* This) {
5734     return This->lpVtbl->Release(This);
5735 }
5736 /*** ID3D10Multithread methods ***/
5737 static FORCEINLINE void ID3D10Multithread_Enter(ID3D10Multithread* This) {
5738     This->lpVtbl->Enter(This);
5739 }
5740 static FORCEINLINE void ID3D10Multithread_Leave(ID3D10Multithread* This) {
5741     This->lpVtbl->Leave(This);
5742 }
5743 static FORCEINLINE WINBOOL ID3D10Multithread_SetMultithreadProtected(ID3D10Multithread* This,WINBOOL bMTProtect) {
5744     return This->lpVtbl->SetMultithreadProtected(This,bMTProtect);
5745 }
5746 static FORCEINLINE WINBOOL ID3D10Multithread_GetMultithreadProtected(ID3D10Multithread* This) {
5747     return This->lpVtbl->GetMultithreadProtected(This);
5748 }
5749 #endif
5750 #endif
5751 
5752 #endif
5753 
5754 
5755 #endif  /* __ID3D10Multithread_INTERFACE_DEFINED__ */
5756 
5757 #ifndef D3D10_IGNORE_SDK_LAYERS
5758 #include "d3d10sdklayers.h"
5759 #endif
5760 #include "d3d10misc.h"
5761 #include "d3d10shader.h"
5762 #include "d3d10effect.h"
5763 /* Begin additional prototypes for all interfaces */
5764 
5765 
5766 /* End additional prototypes */
5767 
5768 #ifdef __cplusplus
5769 }
5770 #endif
5771 
5772 #endif /* __d3d10_h__ */
5773