zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

d3d10.h (220549B) - Raw


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