Home | History | Annotate | Download | only in include
      1 /*** Autogenerated by WIDL 1.6 from direct-x/include/d3d11.idl - Do not edit ***/
      2 
      3 #ifndef __REQUIRED_RPCNDR_H_VERSION__
      4 #define __REQUIRED_RPCNDR_H_VERSION__ 475
      5 #endif
      6 
      7 #include <rpc.h>
      8 #include <rpcndr.h>
      9 
     10 #ifndef COM_NO_WINDOWS_H
     11 #include <windows.h>
     12 #include <ole2.h>
     13 #endif
     14 
     15 #ifndef __d3d11_h__
     16 #define __d3d11_h__
     17 
     18 /* Forward declarations */
     19 
     20 #ifndef __ID3D11DeviceChild_FWD_DEFINED__
     21 #define __ID3D11DeviceChild_FWD_DEFINED__
     22 typedef interface ID3D11DeviceChild ID3D11DeviceChild;
     23 #endif
     24 
     25 #ifndef __ID3D11Asynchronous_FWD_DEFINED__
     26 #define __ID3D11Asynchronous_FWD_DEFINED__
     27 typedef interface ID3D11Asynchronous ID3D11Asynchronous;
     28 #endif
     29 
     30 #ifndef __ID3D11Query_FWD_DEFINED__
     31 #define __ID3D11Query_FWD_DEFINED__
     32 typedef interface ID3D11Query ID3D11Query;
     33 #endif
     34 
     35 #ifndef __ID3D11Resource_FWD_DEFINED__
     36 #define __ID3D11Resource_FWD_DEFINED__
     37 typedef interface ID3D11Resource ID3D11Resource;
     38 #endif
     39 
     40 #ifndef __ID3D11View_FWD_DEFINED__
     41 #define __ID3D11View_FWD_DEFINED__
     42 typedef interface ID3D11View ID3D11View;
     43 #endif
     44 
     45 #ifndef __ID3D11BlendState_FWD_DEFINED__
     46 #define __ID3D11BlendState_FWD_DEFINED__
     47 typedef interface ID3D11BlendState ID3D11BlendState;
     48 #endif
     49 
     50 #ifndef __ID3D11Buffer_FWD_DEFINED__
     51 #define __ID3D11Buffer_FWD_DEFINED__
     52 typedef interface ID3D11Buffer ID3D11Buffer;
     53 #endif
     54 
     55 #ifndef __ID3D11ClassInstance_FWD_DEFINED__
     56 #define __ID3D11ClassInstance_FWD_DEFINED__
     57 typedef interface ID3D11ClassInstance ID3D11ClassInstance;
     58 #endif
     59 
     60 #ifndef __ID3D11ClassLinkage_FWD_DEFINED__
     61 #define __ID3D11ClassLinkage_FWD_DEFINED__
     62 typedef interface ID3D11ClassLinkage ID3D11ClassLinkage;
     63 #endif
     64 
     65 #ifndef __ID3D11CommandList_FWD_DEFINED__
     66 #define __ID3D11CommandList_FWD_DEFINED__
     67 typedef interface ID3D11CommandList ID3D11CommandList;
     68 #endif
     69 
     70 #ifndef __ID3D11ComputeShader_FWD_DEFINED__
     71 #define __ID3D11ComputeShader_FWD_DEFINED__
     72 typedef interface ID3D11ComputeShader ID3D11ComputeShader;
     73 #endif
     74 
     75 #ifndef __ID3D11Counter_FWD_DEFINED__
     76 #define __ID3D11Counter_FWD_DEFINED__
     77 typedef interface ID3D11Counter ID3D11Counter;
     78 #endif
     79 
     80 #ifndef __ID3D11DepthStencilState_FWD_DEFINED__
     81 #define __ID3D11DepthStencilState_FWD_DEFINED__
     82 typedef interface ID3D11DepthStencilState ID3D11DepthStencilState;
     83 #endif
     84 
     85 #ifndef __ID3D11DepthStencilView_FWD_DEFINED__
     86 #define __ID3D11DepthStencilView_FWD_DEFINED__
     87 typedef interface ID3D11DepthStencilView ID3D11DepthStencilView;
     88 #endif
     89 
     90 #ifndef __ID3D11DomainShader_FWD_DEFINED__
     91 #define __ID3D11DomainShader_FWD_DEFINED__
     92 typedef interface ID3D11DomainShader ID3D11DomainShader;
     93 #endif
     94 
     95 #ifndef __ID3D11GeometryShader_FWD_DEFINED__
     96 #define __ID3D11GeometryShader_FWD_DEFINED__
     97 typedef interface ID3D11GeometryShader ID3D11GeometryShader;
     98 #endif
     99 
    100 #ifndef __ID3D11HullShader_FWD_DEFINED__
    101 #define __ID3D11HullShader_FWD_DEFINED__
    102 typedef interface ID3D11HullShader ID3D11HullShader;
    103 #endif
    104 
    105 #ifndef __ID3D11InputLayout_FWD_DEFINED__
    106 #define __ID3D11InputLayout_FWD_DEFINED__
    107 typedef interface ID3D11InputLayout ID3D11InputLayout;
    108 #endif
    109 
    110 #ifndef __ID3D11PixelShader_FWD_DEFINED__
    111 #define __ID3D11PixelShader_FWD_DEFINED__
    112 typedef interface ID3D11PixelShader ID3D11PixelShader;
    113 #endif
    114 
    115 #ifndef __ID3D11Predicate_FWD_DEFINED__
    116 #define __ID3D11Predicate_FWD_DEFINED__
    117 typedef interface ID3D11Predicate ID3D11Predicate;
    118 #endif
    119 
    120 #ifndef __ID3D11RasterizerState_FWD_DEFINED__
    121 #define __ID3D11RasterizerState_FWD_DEFINED__
    122 typedef interface ID3D11RasterizerState ID3D11RasterizerState;
    123 #endif
    124 
    125 #ifndef __ID3D11RenderTargetView_FWD_DEFINED__
    126 #define __ID3D11RenderTargetView_FWD_DEFINED__
    127 typedef interface ID3D11RenderTargetView ID3D11RenderTargetView;
    128 #endif
    129 
    130 #ifndef __ID3D11SamplerState_FWD_DEFINED__
    131 #define __ID3D11SamplerState_FWD_DEFINED__
    132 typedef interface ID3D11SamplerState ID3D11SamplerState;
    133 #endif
    134 
    135 #ifndef __ID3D11ShaderResourceView_FWD_DEFINED__
    136 #define __ID3D11ShaderResourceView_FWD_DEFINED__
    137 typedef interface ID3D11ShaderResourceView ID3D11ShaderResourceView;
    138 #endif
    139 
    140 #ifndef __ID3D11Texture1D_FWD_DEFINED__
    141 #define __ID3D11Texture1D_FWD_DEFINED__
    142 typedef interface ID3D11Texture1D ID3D11Texture1D;
    143 #endif
    144 
    145 #ifndef __ID3D11Texture2D_FWD_DEFINED__
    146 #define __ID3D11Texture2D_FWD_DEFINED__
    147 typedef interface ID3D11Texture2D ID3D11Texture2D;
    148 #endif
    149 
    150 #ifndef __ID3D11Texture3D_FWD_DEFINED__
    151 #define __ID3D11Texture3D_FWD_DEFINED__
    152 typedef interface ID3D11Texture3D ID3D11Texture3D;
    153 #endif
    154 
    155 #ifndef __ID3D11UnorderedAccessView_FWD_DEFINED__
    156 #define __ID3D11UnorderedAccessView_FWD_DEFINED__
    157 typedef interface ID3D11UnorderedAccessView ID3D11UnorderedAccessView;
    158 #endif
    159 
    160 #ifndef __ID3D11VertexShader_FWD_DEFINED__
    161 #define __ID3D11VertexShader_FWD_DEFINED__
    162 typedef interface ID3D11VertexShader ID3D11VertexShader;
    163 #endif
    164 
    165 #ifndef __ID3D11DeviceContext_FWD_DEFINED__
    166 #define __ID3D11DeviceContext_FWD_DEFINED__
    167 typedef interface ID3D11DeviceContext ID3D11DeviceContext;
    168 #endif
    169 
    170 #ifndef __ID3D11AuthenticatedChannel_FWD_DEFINED__
    171 #define __ID3D11AuthenticatedChannel_FWD_DEFINED__
    172 typedef interface ID3D11AuthenticatedChannel ID3D11AuthenticatedChannel;
    173 #endif
    174 
    175 #ifndef __ID3D11CryptoSession_FWD_DEFINED__
    176 #define __ID3D11CryptoSession_FWD_DEFINED__
    177 typedef interface ID3D11CryptoSession ID3D11CryptoSession;
    178 #endif
    179 
    180 #ifndef __ID3D11VideoDecoder_FWD_DEFINED__
    181 #define __ID3D11VideoDecoder_FWD_DEFINED__
    182 typedef interface ID3D11VideoDecoder ID3D11VideoDecoder;
    183 #endif
    184 
    185 #ifndef __ID3D11VideoProcessorEnumerator_FWD_DEFINED__
    186 #define __ID3D11VideoProcessorEnumerator_FWD_DEFINED__
    187 typedef interface ID3D11VideoProcessorEnumerator ID3D11VideoProcessorEnumerator;
    188 #endif
    189 
    190 #ifndef __ID3D11VideoProcessor_FWD_DEFINED__
    191 #define __ID3D11VideoProcessor_FWD_DEFINED__
    192 typedef interface ID3D11VideoProcessor ID3D11VideoProcessor;
    193 #endif
    194 
    195 #ifndef __ID3D11VideoDecoderOutputView_FWD_DEFINED__
    196 #define __ID3D11VideoDecoderOutputView_FWD_DEFINED__
    197 typedef interface ID3D11VideoDecoderOutputView ID3D11VideoDecoderOutputView;
    198 #endif
    199 
    200 #ifndef __ID3D11VideoProcessorInputView_FWD_DEFINED__
    201 #define __ID3D11VideoProcessorInputView_FWD_DEFINED__
    202 typedef interface ID3D11VideoProcessorInputView ID3D11VideoProcessorInputView;
    203 #endif
    204 
    205 #ifndef __ID3D11VideoProcessorOutputView_FWD_DEFINED__
    206 #define __ID3D11VideoProcessorOutputView_FWD_DEFINED__
    207 typedef interface ID3D11VideoProcessorOutputView ID3D11VideoProcessorOutputView;
    208 #endif
    209 
    210 #ifndef __ID3D11VideoDevice_FWD_DEFINED__
    211 #define __ID3D11VideoDevice_FWD_DEFINED__
    212 typedef interface ID3D11VideoDevice ID3D11VideoDevice;
    213 #endif
    214 
    215 #ifndef __ID3D11VideoContext_FWD_DEFINED__
    216 #define __ID3D11VideoContext_FWD_DEFINED__
    217 typedef interface ID3D11VideoContext ID3D11VideoContext;
    218 #endif
    219 
    220 #ifndef __ID3D11Device_FWD_DEFINED__
    221 #define __ID3D11Device_FWD_DEFINED__
    222 typedef interface ID3D11Device ID3D11Device;
    223 #endif
    224 
    225 /* Headers for imported files */
    226 
    227 #include <oaidl.h>
    228 #include <ocidl.h>
    229 #include <dxgi.h>
    230 #include <d3dcommon.h>
    231 
    232 #ifdef __cplusplus
    233 extern "C" {
    234 #endif
    235 
    236 typedef D3D_PRIMITIVE D3D11_PRIMITIVE;
    237 typedef D3D_PRIMITIVE_TOPOLOGY D3D11_PRIMITIVE_TOPOLOGY;
    238 typedef D3D_SRV_DIMENSION D3D11_SRV_DIMENSION;
    239 typedef RECT D3D11_RECT;
    240 #ifndef __ID3D11Device_FWD_DEFINED__
    241 #define __ID3D11Device_FWD_DEFINED__
    242 typedef interface ID3D11Device ID3D11Device;
    243 #endif
    244 
    245 #ifndef __ID3D11ClassLinkage_FWD_DEFINED__
    246 #define __ID3D11ClassLinkage_FWD_DEFINED__
    247 typedef interface ID3D11ClassLinkage ID3D11ClassLinkage;
    248 #endif
    249 
    250 #ifndef __ID3D11Resource_FWD_DEFINED__
    251 #define __ID3D11Resource_FWD_DEFINED__
    252 typedef interface ID3D11Resource ID3D11Resource;
    253 #endif
    254 
    255 #ifndef __ID3D11VideoProcessorInputView_FWD_DEFINED__
    256 #define __ID3D11VideoProcessorInputView_FWD_DEFINED__
    257 typedef interface ID3D11VideoProcessorInputView ID3D11VideoProcessorInputView;
    258 #endif
    259 
    260 #define D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT (14)
    261 
    262 #define D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENTS (4)
    263 
    264 #define D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT (32)
    265 
    266 #define D3D11_COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT (15)
    267 
    268 #define D3D11_COMMONSHADER_CONSTANT_BUFFER_PARTIAL_UPDATE_EXTENTS_BYTE_ALIGNMENT (16)
    269 
    270 #define D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS (4)
    271 
    272 #define D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT (15)
    273 
    274 #define D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST (1)
    275 
    276 #define D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS (1)
    277 
    278 #define D3D11_COMMONSHADER_FLOWCONTROL_NESTING_LIMIT (64)
    279 
    280 #define D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS (4)
    281 
    282 #define D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT (1)
    283 
    284 #define D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST (1)
    285 
    286 #define D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS (1)
    287 
    288 #define D3D11_COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT (32)
    289 
    290 #define D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS (1)
    291 
    292 #define D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT (128)
    293 
    294 #define D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST (1)
    295 
    296 #define D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS (1)
    297 
    298 #define D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT (128)
    299 
    300 #define D3D11_COMMONSHADER_SAMPLER_REGISTER_COMPONENTS (1)
    301 
    302 #define D3D11_COMMONSHADER_SAMPLER_REGISTER_COUNT (16)
    303 
    304 #define D3D11_COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST (1)
    305 
    306 #define D3D11_COMMONSHADER_SAMPLER_REGISTER_READ_PORTS (1)
    307 
    308 #define D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT (16)
    309 
    310 #define D3D11_COMMONSHADER_SUBROUTINE_NESTING_LIMIT (32)
    311 
    312 #define D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENTS (4)
    313 
    314 #define D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT (32)
    315 
    316 #define D3D11_COMMONSHADER_TEMP_REGISTER_COUNT (4096)
    317 
    318 #define D3D11_COMMONSHADER_TEMP_REGISTER_READS_PER_INST (3)
    319 
    320 #define D3D11_COMMONSHADER_TEMP_REGISTER_READ_PORTS (3)
    321 
    322 #define D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX (10)
    323 
    324 #define D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN (-10)
    325 
    326 #define D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE (-8)
    327 
    328 #define D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE (7)
    329 
    330 #define D3D11_DEFAULT_DEPTH_BIAS (0)
    331 
    332 #define D3D11_DEFAULT_DEPTH_BIAS_CLAMP 0.0f
    333 #define D3D11_DEFAULT_MAX_ANISOTROPY (16)
    334 
    335 #define D3D11_DEFAULT_MIP_LOD_BIAS 0.0f
    336 #define D3D11_DEFAULT_RENDER_TARGET_ARRAY_INDEX (0)
    337 
    338 #define D3D11_DEFAULT_SAMPLE_MASK (0xffffffff)
    339 
    340 #define D3D11_DEFAULT_SCISSOR_ENDX (0)
    341 
    342 #define D3D11_DEFAULT_SCISSOR_ENDY (0)
    343 
    344 #define D3D11_DEFAULT_SCISSOR_STARTX (0)
    345 
    346 #define D3D11_DEFAULT_SCISSOR_STARTY (0)
    347 
    348 #define D3D11_DEFAULT_SLOPE_SCALED_DEPTH_BIAS 0.0f
    349 #define D3D11_DEFAULT_STENCIL_READ_MASK (0xff)
    350 
    351 #define D3D11_DEFAULT_STENCIL_REFERENCE (0)
    352 
    353 #define D3D11_DEFAULT_STENCIL_WRITE_MASK (0xff)
    354 
    355 #define D3D11_DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX (0)
    356 
    357 #define D3D11_DEFAULT_VIEWPORT_HEIGHT (0)
    358 
    359 #define D3D11_DEFAULT_VIEWPORT_MAX_DEPTH 0.0f
    360 #define D3D11_DEFAULT_VIEWPORT_MIN_DEPTH 0.0f
    361 #define D3D11_DEFAULT_VIEWPORT_TOPLEFTX (0)
    362 
    363 #define D3D11_DEFAULT_VIEWPORT_TOPLEFTY (0)
    364 
    365 #define D3D11_DEFAULT_VIEWPORT_WIDTH (0)
    366 
    367 #define D3D11_FLOAT32_MAX         (3.402823466e+38f)
    368 #define D3D11_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT (32)
    369 
    370 #define D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT (8)
    371 
    372 #define D3D11_MAX_MAXANISOTROPY (16)
    373 
    374 #define D3D11_MAX_MULTISAMPLE_SAMPLE_COUNT (32)
    375 
    376 #define D3D11_VIEWPORT_BOUNDS_MAX (32767)
    377 
    378 #define D3D11_VIEWPORT_BOUNDS_MIN (-32768)
    379 
    380 #define D3D11_VIEWPORT_AND_SCISSORRECT_MAX_INDEX (15)
    381 
    382 #define D3D11_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE (16)
    383 
    384 #define D3D11_SHADER_MAJOR_VERSION (5)
    385 
    386 #define D3D11_SHADER_MAX_INSTANCES (65535)
    387 
    388 #define D3D11_SHADER_MAX_INTERFACES (253)
    389 
    390 #define D3D11_SHADER_MAX_INTERFACE_CALL_SITES (4096)
    391 
    392 #define D3D11_SHADER_MAX_TYPES (65535)
    393 
    394 #define D3D11_SHADER_MINOR_VERSION (0)
    395 
    396 #define D3D11_VS_OUTPUT_REGISTER_COUNT (32)
    397 
    398 #define D3D11_OMAC_SIZE (16)
    399 
    400 #define D3D11_PS_CS_UAV_REGISTER_COMPONENTS (1)
    401 
    402 #define D3D11_PS_CS_UAV_REGISTER_COUNT (8)
    403 
    404 #define D3D11_PS_CS_UAV_REGISTER_READS_PER_INST (1)
    405 
    406 #define D3D11_PS_CS_UAV_REGISTER_READ_PORTS (1)
    407 
    408 #define D3D11_PS_FRONTFACING_DEFAULT_VALUE (0xffffffff)
    409 
    410 #define D3D11_PS_FRONTFACING_FALSE_VALUE (0)
    411 
    412 #define D3D11_PS_FRONTFACING_TRUE_VALUE (0xffffffff)
    413 
    414 #define D3D11_PS_INPUT_REGISTER_COMPONENTS (4)
    415 
    416 #define D3D11_PS_INPUT_REGISTER_COMPONENT_BIT_COUNT (32)
    417 
    418 #define D3D11_PS_INPUT_REGISTER_COUNT (32)
    419 
    420 #define D3D11_PS_INPUT_REGISTER_READS_PER_INST (2)
    421 
    422 #define D3D11_PS_INPUT_REGISTER_READ_PORTS (1)
    423 
    424 #define D3D11_PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT (0.0f)
    425 #define D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENTS (1)
    426 
    427 #define D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT (32)
    428 
    429 #define D3D11_PS_OUTPUT_DEPTH_REGISTER_COUNT (1)
    430 
    431 #define D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENTS (1)
    432 
    433 #define D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENT_BIT_COUNT (32)
    434 
    435 #define D3D11_PS_OUTPUT_MASK_REGISTER_COUNT (1)
    436 
    437 #define D3D11_PS_OUTPUT_REGISTER_COMPONENTS (4)
    438 
    439 #define D3D11_PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT (32)
    440 
    441 #define D3D11_PS_OUTPUT_REGISTER_COUNT (8)
    442 
    443 #define D3D11_PS_PIXEL_CENTER_FRACTIONAL_COMPONENT (0.5f)
    444 #define D3D11_RAW_UAV_SRV_BYTE_ALIGNMENT (16)
    445 
    446 #define D3D11_REQ_BLEND_OBJECT_COUNT_PER_DEVICE (4096)
    447 
    448 #define D3D11_REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP (27)
    449 
    450 #define D3D11_REQ_CONSTANT_BUFFER_ELEMENT_COUNT (4096)
    451 
    452 #define D3D11_REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_DEVICE (4096)
    453 
    454 #define D3D11_REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP (32)
    455 
    456 #define D3D11_REQ_DRAW_VERTEX_COUNT_2_TO_EXP (32)
    457 
    458 #define D3D11_REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION (16384)
    459 
    460 #define D3D11_REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT (1024)
    461 
    462 #define D3D11_REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT (4096)
    463 
    464 #define D3D11_REQ_MAXANISOTROPY (16)
    465 
    466 #define D3D11_REQ_MIP_LEVELS (15)
    467 
    468 #define D3D11_REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES (2048)
    469 
    470 #define D3D11_REQ_RASTERIZER_OBJECT_COUNT_PER_DEVICE (4096)
    471 
    472 #define D3D11_REQ_RENDER_TO_BUFFER_WINDOW_WIDTH (16384)
    473 
    474 #define D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM (128)
    475 
    476 #define D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_B_TERM (0.25f)
    477 #define D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_C_TERM (2048)
    478 
    479 #define D3D11_REQ_RESOURCE_VIEW_COUNT_PER_DEVICE_2_TO_EXP (20)
    480 
    481 #define D3D11_REQ_SAMPLER_OBJECT_COUNT_PER_DEVICE (4096)
    482 
    483 #define D3D11_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION (2048)
    484 
    485 #define D3D11_REQ_TEXTURE1D_U_DIMENSION (16384)
    486 
    487 #define D3D11_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION (2048)
    488 
    489 #define D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION (16384)
    490 
    491 #define D3D11_REQ_TEXTURE3D_U_V_OR_W_DIMENSION (2048)
    492 
    493 #define D3D11_REQ_TEXTURECUBE_DIMENSION (16384)
    494 
    495 #define D3D11_RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL (0)
    496 
    497 #define D3D11_SHIFT_INSTRUCTION_PAD_VALUE (0)
    498 
    499 #define D3D11_SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT (5)
    500 
    501 #define D3D11_SO_BUFFER_MAX_STRIDE_IN_BYTES (2048)
    502 
    503 #define D3D11_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES (512)
    504 
    505 #define D3D11_SO_BUFFER_SLOT_COUNT (4)
    506 
    507 #define D3D11_SO_DDI_REGISTER_INDEX_DENOTING_GAP (0xffffffff)
    508 
    509 #define D3D11_SO_NO_RASTERIZED_STREAM (0xffffffff)
    510 
    511 #define D3D11_SO_OUTPUT_COMPONENT_COUNT (128)
    512 
    513 #define D3D11_SO_STREAM_COUNT (4)
    514 
    515 #define D3D11_SPEC_DATE_DAY (16)
    516 
    517 #define D3D11_SPEC_DATE_MONTH (5)
    518 
    519 #define D3D11_SPEC_DATE_YEAR (2011)
    520 
    521 #define D3D11_SPEC_VERSION                   (1.07)
    522 #define D3D11_SRGB_GAMMA                     (2.2f)
    523 #define D3D11_SRGB_TO_FLOAT_DENOMINATOR_1    (12.92f)
    524 #define D3D11_SRGB_TO_FLOAT_DENOMINATOR_2    (1.055f)
    525 #define D3D11_SRGB_TO_FLOAT_EXPONENT         (2.4f)
    526 #define D3D11_SRGB_TO_FLOAT_OFFSET           (0.055f)
    527 #define D3D11_SRGB_TO_FLOAT_THRESHOLD        (0.04045f)
    528 #define D3D11_SRGB_TO_FLOAT_TOLERANCE_IN_ULP (0.5f)
    529 #define D3D11_STANDARD_COMPONENT_BIT_COUNT (32)
    530 
    531 #define D3D11_STANDARD_COMPONENT_BIT_COUNT_DOUBLED (64)
    532 
    533 #define D3D11_STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE (4)
    534 
    535 #define D3D11_STANDARD_PIXEL_COMPONENT_COUNT (128)
    536 
    537 #define D3D11_STANDARD_PIXEL_ELEMENT_COUNT (32)
    538 
    539 #define D3D11_STANDARD_VECTOR_SIZE (4)
    540 
    541 #define D3D11_STANDARD_VERTEX_ELEMENT_COUNT (32)
    542 
    543 #define D3D11_STANDARD_VERTEX_TOTAL_COMPONENT_COUNT (64)
    544 
    545 #if !defined(D3D11_NO_HELPERS) && defined(__cplusplus)
    546 struct CD3D11_DEFAULT {};
    547 extern const DECLSPEC_SELECTANY CD3D11_DEFAULT D3D11_DEFAULT;
    548 #endif
    549 typedef enum D3D11_BLEND {
    550     D3D11_BLEND_ZERO = 1,
    551     D3D11_BLEND_ONE = 2,
    552     D3D11_BLEND_SRC_COLOR = 3,
    553     D3D11_BLEND_INV_SRC_COLOR = 4,
    554     D3D11_BLEND_SRC_ALPHA = 5,
    555     D3D11_BLEND_INV_SRC_ALPHA = 6,
    556     D3D11_BLEND_DEST_ALPHA = 7,
    557     D3D11_BLEND_INV_DEST_ALPHA = 8,
    558     D3D11_BLEND_DEST_COLOR = 9,
    559     D3D11_BLEND_INV_DEST_COLOR = 10,
    560     D3D11_BLEND_SRC_ALPHA_SAT = 11,
    561     D3D11_BLEND_BLEND_FACTOR = 14,
    562     D3D11_BLEND_INV_BLEND_FACTOR = 15,
    563     D3D11_BLEND_SRC1_COLOR = 16,
    564     D3D11_BLEND_INV_SRC1_COLOR = 17,
    565     D3D11_BLEND_SRC1_ALPHA = 18,
    566     D3D11_BLEND_INV_SRC1_ALPHA = 19
    567 } D3D11_BLEND;
    568 typedef enum D3D11_BLEND_OP {
    569     D3D11_BLEND_OP_ADD = 1,
    570     D3D11_BLEND_OP_SUBTRACT = 2,
    571     D3D11_BLEND_OP_REV_SUBTRACT = 3,
    572     D3D11_BLEND_OP_MIN = 4,
    573     D3D11_BLEND_OP_MAX = 5
    574 } D3D11_BLEND_OP;
    575 typedef enum D3D11_VIDEO_DECODER_BUFFER_TYPE {
    576     D3D11_VIDEO_DECODER_BUFFER_PICTURE_PARAMETERS = 0,
    577     D3D11_VIDEO_DECODER_BUFFER_MACROBLOCK_CONTROL = 1,
    578     D3D11_VIDEO_DECODER_BUFFER_RESIDUAL_DIFFERENCE = 2,
    579     D3D11_VIDEO_DECODER_BUFFER_DEBLOCKING_CONTROL = 3,
    580     D3D11_VIDEO_DECODER_BUFFER_INVERSE_QUANTIZATION_MATRIX = 4,
    581     D3D11_VIDEO_DECODER_BUFFER_SLICE_CONTROL = 5,
    582     D3D11_VIDEO_DECODER_BUFFER_BITSTREAM = 6,
    583     D3D11_VIDEO_DECODER_BUFFER_MOTION_VECTOR = 7,
    584     D3D11_VIDEO_DECODER_BUFFER_FILM_GRAIN = 8
    585 } D3D11_VIDEO_DECODER_BUFFER_TYPE;
    586 typedef enum D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE {
    587     D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_OPAQUE = 0,
    588     D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_BACKGROUND = 1,
    589     D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_DESTINATION = 2,
    590     D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_SOURCE_STREAM = 3
    591 } D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE;
    592 typedef enum D3D11_VIDEO_PROCESSOR_OUTPUT_RATE {
    593     D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_NORMAL = 0,
    594     D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_HALF = 1,
    595     D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_CUSTOM = 2
    596 } D3D11_VIDEO_PROCESSOR_OUTPUT_RATE;
    597 typedef enum D3D11_VIDEO_PROCESSOR_STEREO_FORMAT {
    598     D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO = 0,
    599     D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_HORIZONTAL = 1,
    600     D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_VERTICAL = 2,
    601     D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_SEPARATE = 3,
    602     D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO_OFFSET = 4,
    603     D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_ROW_INTERLEAVED = 5,
    604     D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_COLUMN_INTERLEAVED = 6,
    605     D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_CHECKERBOARD = 7
    606 } D3D11_VIDEO_PROCESSOR_STEREO_FORMAT;
    607 typedef enum D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE {
    608     D3D11_VIDEO_PROCESSOR_STEREO_FLIP_NONE = 0,
    609     D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME0 = 1,
    610     D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME1 = 2
    611 } D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE;
    612 typedef enum D3D11_VIDEO_PROCESSOR_ROTATION {
    613     D3D11_VIDEO_PROCESSOR_ROTATION_IDENTITY = 0,
    614     D3D11_VIDEO_PROCESSOR_ROTATION_90 = 1,
    615     D3D11_VIDEO_PROCESSOR_ROTATION_180 = 2,
    616     D3D11_VIDEO_PROCESSOR_ROTATION_270 = 3
    617 } D3D11_VIDEO_PROCESSOR_ROTATION;
    618 typedef struct D3D11_BOX {
    619     UINT left;
    620     UINT top;
    621     UINT front;
    622     UINT right;
    623     UINT bottom;
    624     UINT back;
    625 } D3D11_BOX;
    626 typedef struct D3D11_BUFFER_RTV {
    627     __C89_NAMELESS union {
    628         UINT FirstElement;
    629         UINT ElementOffset;
    630     } __C89_NAMELESSUNIONNAME1;
    631     __C89_NAMELESS union {
    632         UINT NumElements;
    633         UINT ElementWidth;
    634     } __C89_NAMELESSUNIONNAME2;
    635 } D3D11_BUFFER_RTV;
    636 typedef struct D3D11_BUFFER_SRV {
    637     __C89_NAMELESS union {
    638         UINT FirstElement;
    639         UINT ElementOffset;
    640     } __C89_NAMELESSUNIONNAME1;
    641     __C89_NAMELESS union {
    642         UINT NumElements;
    643         UINT ElementWidth;
    644     } __C89_NAMELESSUNIONNAME2;
    645 } D3D11_BUFFER_SRV;
    646 typedef struct D3D11_BUFFER_UAV {
    647     UINT FirstElement;
    648     UINT NumElements;
    649     UINT Flags;
    650 } D3D11_BUFFER_UAV;
    651 typedef struct D3D11_BUFFEREX_SRV {
    652     UINT FirstElement;
    653     UINT NumElements;
    654     UINT Flags;
    655 } D3D11_BUFFEREX_SRV;
    656 typedef struct D3D11_CLASS_INSTANCE_DESC {
    657     UINT InstanceId;
    658     UINT InstanceIndex;
    659     UINT TypeId;
    660     UINT ConstantBuffer;
    661     UINT BaseConstantBufferOffset;
    662     UINT BaseTexture;
    663     UINT BaseSampler;
    664     WINBOOL Created;
    665 } D3D11_CLASS_INSTANCE_DESC;
    666 typedef enum D3D11_COMPARISON_FUNC {
    667     D3D11_COMPARISON_NEVER = 1,
    668     D3D11_COMPARISON_LESS = 2,
    669     D3D11_COMPARISON_EQUAL = 3,
    670     D3D11_COMPARISON_LESS_EQUAL = 4,
    671     D3D11_COMPARISON_GREATER = 5,
    672     D3D11_COMPARISON_NOT_EQUAL = 6,
    673     D3D11_COMPARISON_GREATER_EQUAL = 7,
    674     D3D11_COMPARISON_ALWAYS = 8
    675 } D3D11_COMPARISON_FUNC;
    676 typedef enum D3D11_COUNTER {
    677     D3D11_COUNTER_DEVICE_DEPENDENT_0 = 0x40000000
    678 } D3D11_COUNTER;
    679 typedef struct D3D11_COUNTER_DESC {
    680     D3D11_COUNTER Counter;
    681     UINT MiscFlags;
    682 } D3D11_COUNTER_DESC;
    683 typedef struct D3D11_COUNTER_INFO {
    684     D3D11_COUNTER LastDeviceDependentCounter;
    685     UINT NumSimultaneousCounters;
    686     UINT8 NumDetectableParallelUnits;
    687 } D3D11_COUNTER_INFO;
    688 typedef enum D3D11_COUNTER_TYPE {
    689     D3D11_COUNTER_TYPE_FLOAT32 = 0,
    690     D3D11_COUNTER_TYPE_UINT16 = 1,
    691     D3D11_COUNTER_TYPE_UINT32 = 2,
    692     D3D11_COUNTER_TYPE_UINT64 = 3
    693 } D3D11_COUNTER_TYPE;
    694 typedef enum D3D11_CULL_MODE {
    695     D3D11_CULL_NONE = 1,
    696     D3D11_CULL_FRONT = 2,
    697     D3D11_CULL_BACK = 3
    698 } D3D11_CULL_MODE;
    699 typedef enum D3D11_DEPTH_WRITE_MASK {
    700     D3D11_DEPTH_WRITE_MASK_ZERO = 0,
    701     D3D11_DEPTH_WRITE_MASK_ALL = 1
    702 } D3D11_DEPTH_WRITE_MASK;
    703 typedef enum D3D11_DEVICE_CONTEXT_TYPE {
    704     D3D11_DEVICE_CONTEXT_IMMEDIATE = 0,
    705     D3D11_DEVICE_CONTEXT_DEFERRED = 1
    706 } D3D11_DEVICE_CONTEXT_TYPE;
    707 typedef enum D3D11_DSV_DIMENSION {
    708     D3D11_DSV_DIMENSION_UNKNOWN = 0,
    709     D3D11_DSV_DIMENSION_TEXTURE1D = 1,
    710     D3D11_DSV_DIMENSION_TEXTURE1DARRAY = 2,
    711     D3D11_DSV_DIMENSION_TEXTURE2D = 3,
    712     D3D11_DSV_DIMENSION_TEXTURE2DARRAY = 4,
    713     D3D11_DSV_DIMENSION_TEXTURE2DMS = 5,
    714     D3D11_DSV_DIMENSION_TEXTURE2DMSARRAY = 6
    715 } D3D11_DSV_DIMENSION;
    716 typedef enum D3D11_FEATURE {
    717     D3D11_FEATURE_THREADING = 0,
    718     D3D11_FEATURE_DOUBLES = 1,
    719     D3D11_FEATURE_FORMAT_SUPPORT = 2,
    720     D3D11_FEATURE_FORMAT_SUPPORT2 = 3,
    721     D3D11_FEATURE_D3D10_X_HARDWARE_OPTIONS = 4,
    722     D3D11_FEATURE_D3D11_OPTIONS = 5,
    723     D3D11_FEATURE_ARCHITECTURE_INFO = 6,
    724     D3D11_FEATURE_D3D9_OPTIONS = 7,
    725     D3D11_FEATURE_SHADER_MIN_PRECISION_SUPPORT = 8,
    726     D3D11_FEATURE_D3D9_SHADOW_SUPPORT = 9
    727 } D3D11_FEATURE;
    728 typedef struct D3D11_FEATURE_DATA_D3D11_OPTIONS {
    729     WINBOOL OutputMergerLogicOp;
    730     WINBOOL UAVOnlyRenderingForcedSampleCount;
    731     WINBOOL DiscardAPIsSeenByDriver;
    732     WINBOOL FlagsForUpdateAndCopySeenByDriver;
    733     WINBOOL ClearView;
    734     WINBOOL CopyWithOverlap;
    735     WINBOOL ConstantBufferPartialUpdate;
    736     WINBOOL ConstantBufferOffsetting;
    737     WINBOOL MapNoOverwriteOnDynamicConstantBuffer;
    738     WINBOOL MapNoOverwriteOnDynamicBufferSRV;
    739     WINBOOL MultisampleRTVWithForcedSampleCountOne;
    740     WINBOOL SAD4ShaderInstructions;
    741     WINBOOL ExtendedDoublesShaderInstructions;
    742     WINBOOL ExtendedResourceSharing;
    743 } D3D11_FEATURE_DATA_D3D11_OPTIONS;
    744 typedef enum D3D11_FILL_MODE {
    745     D3D11_FILL_WIREFRAME = 2,
    746     D3D11_FILL_SOLID = 3
    747 } D3D11_FILL_MODE;
    748 typedef enum D3D11_FILTER_TYPE {
    749     D3D11_FILTER_TYPE_POINT = 0,
    750     D3D11_FILTER_TYPE_LINEAR = 1
    751 } D3D11_FILTER_TYPE;
    752 #define D3D11_MIN_FILTER_SHIFT (4)
    753 
    754 #define D3D11_MAG_FILTER_SHIFT (2)
    755 
    756 #define D3D11_MIP_FILTER_SHIFT (0)
    757 
    758 #define D3D11_FILTER_TYPE_MASK (0x3)
    759 
    760 #define D3D11_COMPARISON_FILTERING_BIT (0x80)
    761 
    762 #define D3D11_ANISOTROPIC_FILTERING_BIT (0x40)
    763 
    764 #define D3D11_ENCODE_BASIC_FILTER(min, mag, mip, bComparison) \
    765     ((D3D11_FILTER)(((bComparison) ? D3D11_COMPARISON_FILTERING_BIT : 0 ) | \
    766                     (((min)&D3D11_FILTER_TYPE_MASK) << D3D11_MIN_FILTER_SHIFT) | \
    767                     (((mag)&D3D11_FILTER_TYPE_MASK) << D3D11_MAG_FILTER_SHIFT) | \
    768                     (((mip)&D3D11_FILTER_TYPE_MASK) << D3D11_MIP_FILTER_SHIFT)))
    769 #define D3D11_ENCODE_ANISOTROPIC_FILTER(bComparison) \
    770     ((D3D11_FILTER)(D3D11_ANISOTROPIC_FILTERING_BIT | \
    771                     D3D11_ENCODE_BASIC_FILTER(D3D11_FILTER_TYPE_LINEAR,D3D11_FILTER_TYPE_LINEAR, \
    772                                               D3D11_FILTER_TYPE_LINEAR,bComparison)))
    773 #define D3D11_DECODE_MIN_FILTER(d3d11Filter) \
    774     ((D3D11_FILTER_TYPE)(((d3d11Filter) >> D3D11_MIN_FILTER_SHIFT) & D3D11_FILTER_TYPE_MASK))
    775 #define D3D11_DECODE_MAG_FILTER(d3d11Filter) \
    776     ((D3D11_FILTER_TYPE)(((d3d11Filter) >> D3D11_MAG_FILTER_SHIFT) & D3D11_FILTER_TYPE_MASK))
    777 #define D3D11_DECODE_MIP_FILTER(d3d11Filter) \
    778     ((D3D11_FILTER_TYPE)(((d3d11Filter) >> D3D11_MIP_FILTER_SHIFT) & D3D11_FILTER_TYPE_MASK))
    779 #define D3D11_DECODE_IS_COMPARISON_FILTER(d3d11Filter) ((d3d11Filter) & D3D11_COMPARISON_FILTERING_BIT)
    780 #define D3D11_DECODE_IS_ANISOTROPIC_FILTER(d3d11Filter) \
    781     (((d3d11Filter) & D3D11_ANISOTROPIC_FILTERING_BIT ) \
    782      && (D3D11_FILTER_TYPE_LINEAR == D3D11_DECODE_MIN_FILTER(d3d11Filter)) \
    783      && (D3D11_FILTER_TYPE_LINEAR == D3D11_DECODE_MAG_FILTER(d3d11Filter)) \
    784      && (D3D11_FILTER_TYPE_LINEAR == D3D11_DECODE_MIP_FILTER(d3d11Filter)))
    785 typedef enum D3D11_FILTER {
    786     D3D11_FILTER_MIN_MAG_MIP_POINT = 0x0,
    787     D3D11_FILTER_MIN_MAG_POINT_MIP_LINEAR = 0x1,
    788     D3D11_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x4,
    789     D3D11_FILTER_MIN_POINT_MAG_MIP_LINEAR = 0x5,
    790     D3D11_FILTER_MIN_LINEAR_MAG_MIP_POINT = 0x10,
    791     D3D11_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x11,
    792     D3D11_FILTER_MIN_MAG_LINEAR_MIP_POINT = 0x14,
    793     D3D11_FILTER_MIN_MAG_MIP_LINEAR = 0x15,
    794     D3D11_FILTER_ANISOTROPIC = 0x55,
    795     D3D11_FILTER_COMPARISON_MIN_MAG_MIP_POINT = 0x80,
    796     D3D11_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR = 0x81,
    797     D3D11_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x84,
    798     D3D11_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR = 0x85,
    799     D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT = 0x90,
    800     D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x91,
    801     D3D11_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT = 0x94,
    802     D3D11_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR = 0x95,
    803     D3D11_FILTER_COMPARISON_ANISOTROPIC = 0xd5
    804 } D3D11_FILTER;
    805 typedef enum D3D11_DSV_FLAG {
    806     D3D11_DSV_READ_ONLY_DEPTH = 0x1,
    807     D3D11_DSV_READ_ONLY_STENCIL = 0x2
    808 } D3D11_DSV_FLAG;
    809 typedef enum D3D11_INPUT_CLASSIFICATION {
    810     D3D11_INPUT_PER_VERTEX_DATA = 0,
    811     D3D11_INPUT_PER_INSTANCE_DATA = 1
    812 } D3D11_INPUT_CLASSIFICATION;
    813 #define D3D11_APPEND_ALIGNED_ELEMENT (0xffffffff)
    814 
    815 typedef struct D3D11_INPUT_ELEMENT_DESC {
    816     LPCSTR SemanticName;
    817     UINT SemanticIndex;
    818     DXGI_FORMAT Format;
    819     UINT InputSlot;
    820     UINT AlignedByteOffset;
    821     D3D11_INPUT_CLASSIFICATION InputSlotClass;
    822     UINT InstanceDataStepRate;
    823 } D3D11_INPUT_ELEMENT_DESC;
    824 typedef enum D3D11_MAP {
    825     D3D11_MAP_READ = 1,
    826     D3D11_MAP_WRITE = 2,
    827     D3D11_MAP_READ_WRITE = 3,
    828     D3D11_MAP_WRITE_DISCARD = 4,
    829     D3D11_MAP_WRITE_NO_OVERWRITE = 5
    830 } D3D11_MAP;
    831 typedef enum D3D11_MAP_FLAG {
    832     D3D11_MAP_FLAG_DO_NOT_WAIT = 0x100000
    833 } D3D11_MAP_FLAG;
    834 typedef struct D3D11_QUERY_DATA_SO_STATISTICS {
    835     UINT64 NumPrimitivesWritten;
    836     UINT64 PrimitivesStorageNeeded;
    837 } D3D11_QUERY_DATA_SO_STATISTICS;
    838 typedef struct D3D11_MAPPED_SUBRESOURCE {
    839     void *pData;
    840     UINT RowPitch;
    841     UINT DepthPitch;
    842 } D3D11_MAPPED_SUBRESOURCE;
    843 typedef enum D3D11_QUERY {
    844     D3D11_QUERY_EVENT = 0,
    845     D3D11_QUERY_OCCLUSION = 1,
    846     D3D11_QUERY_TIMESTAMP = 2,
    847     D3D11_QUERY_TIMESTAMP_DISJOINT = 3,
    848     D3D11_QUERY_PIPELINE_STATISTICS = 4,
    849     D3D11_QUERY_OCCLUSION_PREDICATE = 5,
    850     D3D11_QUERY_SO_STATISTICS = 6,
    851     D3D11_QUERY_SO_OVERFLOW_PREDICATE = 7,
    852     D3D11_QUERY_SO_STATISTICS_STREAM0 = 8,
    853     D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM0 = 9,
    854     D3D11_QUERY_SO_STATISTICS_STREAM1 = 10,
    855     D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM1 = 11,
    856     D3D11_QUERY_SO_STATISTICS_STREAM2 = 12,
    857     D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM2 = 13,
    858     D3D11_QUERY_SO_STATISTICS_STREAM3 = 14,
    859     D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM3 = 15
    860 } D3D11_QUERY;
    861 typedef enum D3D11_QUERY_MISC_FLAG {
    862     D3D11_QUERY_MISC_PREDICATEHINT = 0x1
    863 } D3D11_QUERY_MISC_FLAG;
    864 typedef enum D3D11_ASYNC_GETDATA_FLAG {
    865     D3D11_ASYNC_GETDATA_DONOTFLUSH = 0x1
    866 } D3D11_ASYNC_GETDATA_FLAG;
    867 typedef enum D3D11_RESOURCE_MISC_FLAG {
    868     D3D11_RESOURCE_MISC_GENERATE_MIPS = 0x1,
    869     D3D11_RESOURCE_MISC_SHARED = 0x2,
    870     D3D11_RESOURCE_MISC_TEXTURECUBE = 0x4,
    871     D3D11_RESOURCE_MISC_DRAWINDIRECT_ARGS = 0x10,
    872     D3D11_RESOURCE_MISC_BUFFER_ALLOW_RAW_VIEWS = 0x20,
    873     D3D11_RESOURCE_MISC_BUFFER_STRUCTURED = 0x40,
    874     D3D11_RESOURCE_MISC_RESOURCE_CLAMP = 0x80,
    875     D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX = 0x100,
    876     D3D11_RESOURCE_MISC_GDI_COMPATIBLE = 0x200,
    877     D3D11_RESOURCE_MISC_SHARED_NTHANDLE = 0x800,
    878     D3D11_RESOURCE_MISC_RESTRICTED_CONTENT = 0x1000,
    879     D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE = 0x2000,
    880     D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE_DRIVER = 0x4000,
    881     D3D11_RESOURCE_MISC_GUARDED = 0x8000
    882 } D3D11_RESOURCE_MISC_FLAG;
    883 typedef struct D3D11_QUERY_DESC {
    884     D3D11_QUERY Query;
    885     UINT MiscFlags;
    886 } D3D11_QUERY_DESC;
    887 typedef struct D3D11_RASTERIZER_DESC {
    888     D3D11_FILL_MODE FillMode;
    889     D3D11_CULL_MODE CullMode;
    890     WINBOOL FrontCounterClockwise;
    891     INT DepthBias;
    892     FLOAT DepthBiasClamp;
    893     FLOAT SlopeScaledDepthBias;
    894     WINBOOL DepthClipEnable;
    895     WINBOOL ScissorEnable;
    896     WINBOOL MultisampleEnable;
    897     WINBOOL AntialiasedLineEnable;
    898 } D3D11_RASTERIZER_DESC;
    899 #if !defined(D3D11_NO_HELPERS) && defined(__cplusplus)
    900 struct CD3D11_RASTERIZER_DESC : public D3D11_RASTERIZER_DESC {
    901     CD3D11_RASTERIZER_DESC() {}
    902     explicit CD3D11_RASTERIZER_DESC(const D3D11_RASTERIZER_DESC &o) : D3D11_RASTERIZER_DESC(o) {}
    903     explicit CD3D11_RASTERIZER_DESC(CD3D11_DEFAULT) {
    904         FillMode = D3D11_FILL_SOLID;
    905         CullMode = D3D11_CULL_BACK;
    906         FrontCounterClockwise = FALSE;
    907         DepthBias = D3D11_DEFAULT_DEPTH_BIAS;
    908         DepthBiasClamp = D3D11_DEFAULT_DEPTH_BIAS_CLAMP;
    909         SlopeScaledDepthBias = D3D11_DEFAULT_SLOPE_SCALED_DEPTH_BIAS;
    910         DepthClipEnable = TRUE;
    911         ScissorEnable = FALSE;
    912         MultisampleEnable = FALSE;
    913         AntialiasedLineEnable = FALSE;
    914     }
    915     explicit CD3D11_RASTERIZER_DESC(D3D11_FILL_MODE fillMode, D3D11_CULL_MODE cullMode,
    916             WINBOOL frontCounterClockwise, INT depthBias, FLOAT depthBiasClamp, FLOAT slopeScaledDepthBias,
    917             BOOL depthClipEnable, WINBOOL scissorEnable, WINBOOL multisampleEnable, WINBOOL antialiasedLineEnable) {
    918         FillMode = fillMode;
    919         CullMode = cullMode;
    920         FrontCounterClockwise = frontCounterClockwise;
    921         DepthBias = depthBias;
    922         DepthBiasClamp = depthBiasClamp;
    923         SlopeScaledDepthBias = slopeScaledDepthBias;
    924         DepthClipEnable = depthClipEnable;
    925         ScissorEnable = scissorEnable;
    926         MultisampleEnable = multisampleEnable;
    927         AntialiasedLineEnable = antialiasedLineEnable;
    928     }
    929     ~CD3D11_RASTERIZER_DESC() {}
    930     operator const D3D11_RASTERIZER_DESC&() const { return *this; }
    931 };
    932 #endif
    933 typedef enum D3D11_RESOURCE_DIMENSION {
    934     D3D11_RESOURCE_DIMENSION_UNKNOWN = 0,
    935     D3D11_RESOURCE_DIMENSION_BUFFER = 1,
    936     D3D11_RESOURCE_DIMENSION_TEXTURE1D = 2,
    937     D3D11_RESOURCE_DIMENSION_TEXTURE2D = 3,
    938     D3D11_RESOURCE_DIMENSION_TEXTURE3D = 4
    939 } D3D11_RESOURCE_DIMENSION;
    940 typedef enum D3D11_RTV_DIMENSION {
    941     D3D11_RTV_DIMENSION_UNKNOWN = 0,
    942     D3D11_RTV_DIMENSION_BUFFER = 1,
    943     D3D11_RTV_DIMENSION_TEXTURE1D = 2,
    944     D3D11_RTV_DIMENSION_TEXTURE1DARRAY = 3,
    945     D3D11_RTV_DIMENSION_TEXTURE2D = 4,
    946     D3D11_RTV_DIMENSION_TEXTURE2DARRAY = 5,
    947     D3D11_RTV_DIMENSION_TEXTURE2DMS = 6,
    948     D3D11_RTV_DIMENSION_TEXTURE2DMSARRAY = 7,
    949     D3D11_RTV_DIMENSION_TEXTURE3D = 8
    950 } D3D11_RTV_DIMENSION;
    951 typedef struct D3D11_SO_DECLARATION_ENTRY {
    952     UINT Stream;
    953     LPCSTR SemanticName;
    954     UINT SemanticIndex;
    955     BYTE StartComponent;
    956     BYTE ComponentCount;
    957     BYTE OutputSlot;
    958 } D3D11_SO_DECLARATION_ENTRY;
    959 typedef enum D3D11_STENCIL_OP {
    960     D3D11_STENCIL_OP_KEEP = 1,
    961     D3D11_STENCIL_OP_ZERO = 2,
    962     D3D11_STENCIL_OP_REPLACE = 3,
    963     D3D11_STENCIL_OP_INCR_SAT = 4,
    964     D3D11_STENCIL_OP_DECR_SAT = 5,
    965     D3D11_STENCIL_OP_INVERT = 6,
    966     D3D11_STENCIL_OP_INCR = 7,
    967     D3D11_STENCIL_OP_DECR = 8
    968 } D3D11_STENCIL_OP;
    969 #if !defined(D3D11_NO_HELPERS) && defined(__cplusplus)
    970 }
    971 inline UINT D3D11CalcSubresource(UINT MipSlice, UINT ArraySlice, UINT MipLevels) {
    972     return MipSlice + ArraySlice * MipLevels;
    973 }
    974 extern "C"{
    975 #endif
    976 typedef struct D3D11_SUBRESOURCE_DATA {
    977     const void *pSysMem;
    978     UINT SysMemPitch;
    979     UINT SysMemSlicePitch;
    980 } D3D11_SUBRESOURCE_DATA;
    981 typedef struct D3D11_TEX1D_ARRAY_DSV {
    982     UINT MipSlice;
    983     UINT FirstArraySlice;
    984     UINT ArraySize;
    985 } D3D11_TEX1D_ARRAY_DSV;
    986 typedef struct D3D11_TEX1D_ARRAY_RTV {
    987     UINT MipSlice;
    988     UINT FirstArraySlice;
    989     UINT ArraySize;
    990 } D3D11_TEX1D_ARRAY_RTV;
    991 typedef struct D3D11_TEX1D_ARRAY_SRV {
    992     UINT MostDetailedMip;
    993     UINT MipLevels;
    994     UINT FirstArraySlice;
    995     UINT ArraySize;
    996 } D3D11_TEX1D_ARRAY_SRV;
    997 typedef struct D3D11_TEX1D_ARRAY_UAV {
    998     UINT MipSlice;
    999     UINT FirstArraySlice;
   1000     UINT ArraySize;
   1001 } D3D11_TEX1D_ARRAY_UAV;
   1002 typedef struct D3D11_TEX1D_DSV {
   1003     UINT MipSlice;
   1004 } D3D11_TEX1D_DSV;
   1005 typedef struct D3D11_TEX1D_RTV {
   1006     UINT MipSlice;
   1007 } D3D11_TEX1D_RTV;
   1008 typedef struct D3D11_TEX1D_SRV {
   1009     UINT MostDetailedMip;
   1010     UINT MipLevels;
   1011 } D3D11_TEX1D_SRV;
   1012 typedef struct D3D11_TEX1D_UAV {
   1013     UINT MipSlice;
   1014 } D3D11_TEX1D_UAV;
   1015 typedef struct D3D11_TEX2D_ARRAY_DSV {
   1016     UINT MipSlice;
   1017     UINT FirstArraySlice;
   1018     UINT ArraySize;
   1019 } D3D11_TEX2D_ARRAY_DSV;
   1020 typedef struct D3D11_TEX2D_ARRAY_RTV {
   1021     UINT MipSlice;
   1022     UINT FirstArraySlice;
   1023     UINT ArraySize;
   1024 } D3D11_TEX2D_ARRAY_RTV;
   1025 typedef struct D3D11_TEX2D_ARRAY_SRV {
   1026     UINT MostDetailedMip;
   1027     UINT MipLevels;
   1028     UINT FirstArraySlice;
   1029     UINT ArraySize;
   1030 } D3D11_TEX2D_ARRAY_SRV;
   1031 typedef struct D3D11_TEX2D_ARRAY_UAV {
   1032     UINT MipSlice;
   1033     UINT FirstArraySlice;
   1034     UINT ArraySize;
   1035 } D3D11_TEX2D_ARRAY_UAV;
   1036 typedef struct D3D11_TEX2D_DSV {
   1037     UINT MipSlice;
   1038 } D3D11_TEX2D_DSV;
   1039 typedef struct D3D11_TEX2D_RTV {
   1040     UINT MipSlice;
   1041 } D3D11_TEX2D_RTV;
   1042 typedef struct D3D11_TEX2D_SRV {
   1043     UINT MostDetailedMip;
   1044     UINT MipLevels;
   1045 } D3D11_TEX2D_SRV;
   1046 typedef struct D3D11_TEX2D_UAV {
   1047     UINT MipSlice;
   1048 } D3D11_TEX2D_UAV;
   1049 typedef struct D3D11_TEX2DMS_ARRAY_DSV {
   1050     UINT FirstArraySlice;
   1051     UINT ArraySize;
   1052 } D3D11_TEX2DMS_ARRAY_DSV;
   1053 typedef struct D3D11_TEX2DMS_ARRAY_RTV {
   1054     UINT FirstArraySlice;
   1055     UINT ArraySize;
   1056 } D3D11_TEX2DMS_ARRAY_RTV;
   1057 typedef struct D3D11_TEX2DMS_ARRAY_SRV {
   1058     UINT FirstArraySlice;
   1059     UINT ArraySize;
   1060 } D3D11_TEX2DMS_ARRAY_SRV;
   1061 typedef struct D3D11_TEX2DMS_DSV {
   1062     UINT UnusedField_NothingToDefine;
   1063 } D3D11_TEX2DMS_DSV;
   1064 typedef struct D3D11_TEX2DMS_RTV {
   1065     UINT UnusedField_NothingToDefine;
   1066 } D3D11_TEX2DMS_RTV;
   1067 typedef struct D3D11_TEX2DMS_SRV {
   1068     UINT UnusedField_NothingToDefine;
   1069 } D3D11_TEX2DMS_SRV;
   1070 typedef struct D3D11_TEX3D_RTV {
   1071     UINT MipSlice;
   1072     UINT FirstWSlice;
   1073     UINT WSize;
   1074 } D3D11_TEX3D_RTV;
   1075 typedef struct D3D11_TEX3D_SRV {
   1076     UINT MostDetailedMip;
   1077     UINT MipLevels;
   1078 } D3D11_TEX3D_SRV;
   1079 typedef struct D3D11_TEX3D_UAV {
   1080     UINT MipSlice;
   1081     UINT FirstWSlice;
   1082     UINT WSize;
   1083 } D3D11_TEX3D_UAV;
   1084 typedef struct D3D11_TEXCUBE_ARRAY_SRV {
   1085     UINT MostDetailedMip;
   1086     UINT MipLevels;
   1087     UINT First2DArrayFace;
   1088     UINT NumCubes;
   1089 } D3D11_TEXCUBE_ARRAY_SRV;
   1090 typedef struct D3D11_TEXCUBE_SRV {
   1091     UINT MostDetailedMip;
   1092     UINT MipLevels;
   1093 } D3D11_TEXCUBE_SRV;
   1094 typedef enum D3D11_TEXTURE_ADDRESS_MODE {
   1095     D3D11_TEXTURE_ADDRESS_WRAP = 1,
   1096     D3D11_TEXTURE_ADDRESS_MIRROR = 2,
   1097     D3D11_TEXTURE_ADDRESS_CLAMP = 3,
   1098     D3D11_TEXTURE_ADDRESS_BORDER = 4,
   1099     D3D11_TEXTURE_ADDRESS_MIRROR_ONCE = 5
   1100 } D3D11_TEXTURE_ADDRESS_MODE;
   1101 typedef enum D3D11_UAV_DIMENSION {
   1102     D3D11_UAV_DIMENSION_UNKNOWN = 0,
   1103     D3D11_UAV_DIMENSION_BUFFER = 1,
   1104     D3D11_UAV_DIMENSION_TEXTURE1D = 2,
   1105     D3D11_UAV_DIMENSION_TEXTURE1DARRAY = 3,
   1106     D3D11_UAV_DIMENSION_TEXTURE2D = 4,
   1107     D3D11_UAV_DIMENSION_TEXTURE2DARRAY = 5,
   1108     D3D11_UAV_DIMENSION_TEXTURE3D = 8
   1109 } D3D11_UAV_DIMENSION;
   1110 typedef struct D3D11_UNORDERED_ACCESS_VIEW_DESC {
   1111     DXGI_FORMAT Format;
   1112     D3D11_UAV_DIMENSION ViewDimension;
   1113     __C89_NAMELESS union {
   1114         D3D11_BUFFER_UAV Buffer;
   1115         D3D11_TEX1D_UAV Texture1D;
   1116         D3D11_TEX1D_ARRAY_UAV Texture1DArray;
   1117         D3D11_TEX2D_UAV Texture2D;
   1118         D3D11_TEX2D_ARRAY_UAV Texture2DArray;
   1119         D3D11_TEX3D_UAV Texture3D;
   1120     } __C89_NAMELESSUNIONNAME;
   1121 } D3D11_UNORDERED_ACCESS_VIEW_DESC;
   1122 typedef enum D3D11_USAGE {
   1123     D3D11_USAGE_DEFAULT = 0,
   1124     D3D11_USAGE_IMMUTABLE = 1,
   1125     D3D11_USAGE_DYNAMIC = 2,
   1126     D3D11_USAGE_STAGING = 3
   1127 } D3D11_USAGE;
   1128 typedef enum D3D11_BIND_FLAG {
   1129     D3D11_BIND_VERTEX_BUFFER = 0x1,
   1130     D3D11_BIND_INDEX_BUFFER = 0x2,
   1131     D3D11_BIND_CONSTANT_BUFFER = 0x4,
   1132     D3D11_BIND_SHADER_RESOURCE = 0x8,
   1133     D3D11_BIND_STREAM_OUTPUT = 0x10,
   1134     D3D11_BIND_RENDER_TARGET = 0x20,
   1135     D3D11_BIND_DEPTH_STENCIL = 0x40,
   1136     D3D11_BIND_UNORDERED_ACCESS = 0x80,
   1137     D3D11_BIND_DECODER = 0x200,
   1138     D3D11_BIND_VIDEO_ENCODER = 0x400
   1139 } D3D11_BIND_FLAG;
   1140 typedef enum D3D11_CPU_ACCESS_FLAG {
   1141     D3D11_CPU_ACCESS_WRITE = 0x10000,
   1142     D3D11_CPU_ACCESS_READ = 0x20000
   1143 } D3D11_CPU_ACCESS_FLAG;
   1144 typedef struct D3D11_VIEWPORT {
   1145     FLOAT TopLeftX;
   1146     FLOAT TopLeftY;
   1147     FLOAT Width;
   1148     FLOAT Height;
   1149     FLOAT MinDepth;
   1150     FLOAT MaxDepth;
   1151 } D3D11_VIEWPORT;
   1152 typedef enum D3D11_COLOR_WRITE_ENABLE {
   1153     D3D11_COLOR_WRITE_ENABLE_RED = 1,
   1154     D3D11_COLOR_WRITE_ENABLE_GREEN = 2,
   1155     D3D11_COLOR_WRITE_ENABLE_BLUE = 4,
   1156     D3D11_COLOR_WRITE_ENABLE_ALPHA = 8,
   1157     D3D11_COLOR_WRITE_ENABLE_ALL = ((D3D11_COLOR_WRITE_ENABLE_RED | D3D11_COLOR_WRITE_ENABLE_GREEN) | D3D11_COLOR_WRITE_ENABLE_BLUE) | D3D11_COLOR_WRITE_ENABLE_ALPHA
   1158 } D3D11_COLOR_WRITE_ENABLE;
   1159 typedef enum D3D11_FORMAT_SUPPORT {
   1160     D3D11_FORMAT_SUPPORT_BUFFER = 0x1,
   1161     D3D11_FORMAT_SUPPORT_IA_VERTEX_BUFFER = 0x2,
   1162     D3D11_FORMAT_SUPPORT_IA_INDEX_BUFFER = 0x4,
   1163     D3D11_FORMAT_SUPPORT_SO_BUFFER = 0x8,
   1164     D3D11_FORMAT_SUPPORT_TEXTURE1D = 0x10,
   1165     D3D11_FORMAT_SUPPORT_TEXTURE2D = 0x20,
   1166     D3D11_FORMAT_SUPPORT_TEXTURE3D = 0x40,
   1167     D3D11_FORMAT_SUPPORT_TEXTURECUBE = 0x80,
   1168     D3D11_FORMAT_SUPPORT_SHADER_LOAD = 0x100,
   1169     D3D11_FORMAT_SUPPORT_SHADER_SAMPLE = 0x200,
   1170     D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_COMPARISON = 0x400,
   1171     D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_MONO_TEXT = 0x800,
   1172     D3D11_FORMAT_SUPPORT_MIP = 0x1000,
   1173     D3D11_FORMAT_SUPPORT_MIP_AUTOGEN = 0x2000,
   1174     D3D11_FORMAT_SUPPORT_RENDER_TARGET = 0x4000,
   1175     D3D11_FORMAT_SUPPORT_BLENDABLE = 0x8000,
   1176     D3D11_FORMAT_SUPPORT_DEPTH_STENCIL = 0x10000,
   1177     D3D11_FORMAT_SUPPORT_CPU_LOCKABLE = 0x20000,
   1178     D3D11_FORMAT_SUPPORT_MULTISAMPLE_RESOLVE = 0x40000,
   1179     D3D11_FORMAT_SUPPORT_DISPLAY = 0x80000,
   1180     D3D11_FORMAT_SUPPORT_CAST_WITHIN_BIT_LAYOUT = 0x100000,
   1181     D3D11_FORMAT_SUPPORT_MULTISAMPLE_RENDERTARGET = 0x200000,
   1182     D3D11_FORMAT_SUPPORT_MULTISAMPLE_LOAD = 0x400000,
   1183     D3D11_FORMAT_SUPPORT_SHADER_GATHER = 0x800000,
   1184     D3D11_FORMAT_SUPPORT_BACK_BUFFER_CAST = 0x1000000,
   1185     D3D11_FORMAT_SUPPORT_TYPED_UNORDERED_ACCESS_VIEW = 0x2000000,
   1186     D3D11_FORMAT_SUPPORT_SHADER_GATHER_COMPARISON = 0x4000000,
   1187     D3D11_FORMAT_SUPPORT_DECODER_OUTPUT = 0x8000000,
   1188     D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_OUTPUT = 0x10000000,
   1189     D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_INPUT = 0x20000000,
   1190     D3D11_FORMAT_SUPPORT_VIDEO_ENCODER = 0x40000000
   1191 } D3D11_FORMAT_SUPPORT;
   1192 typedef enum D3D11_CLEAR_FLAG {
   1193     D3D11_CLEAR_DEPTH = 0x1,
   1194     D3D11_CLEAR_STENCIL = 0x2
   1195 } D3D11_CLEAR_FLAG;
   1196 typedef struct D3D11_RENDER_TARGET_BLEND_DESC {
   1197     WINBOOL BlendEnable;
   1198     D3D11_BLEND SrcBlend;
   1199     D3D11_BLEND DestBlend;
   1200     D3D11_BLEND_OP BlendOp;
   1201     D3D11_BLEND SrcBlendAlpha;
   1202     D3D11_BLEND DestBlendAlpha;
   1203     D3D11_BLEND_OP BlendOpAlpha;
   1204     UINT8 RenderTargetWriteMask;
   1205 } D3D11_RENDER_TARGET_BLEND_DESC;
   1206 typedef struct D3D11_BLEND_DESC {
   1207     WINBOOL AlphaToCoverageEnable;
   1208     WINBOOL IndependentBlendEnable;
   1209     D3D11_RENDER_TARGET_BLEND_DESC RenderTarget[8];
   1210 } D3D11_BLEND_DESC;
   1211 #if !defined(D3D11_NO_HELPERS) && defined(__cplusplus)
   1212 struct CD3D11_BLEND_DESC : public D3D11_BLEND_DESC {
   1213     CD3D11_BLEND_DESC() {}
   1214     explicit CD3D11_BLEND_DESC(const D3D11_BLEND_DESC &o) : D3D11_BLEND_DESC(o) {}
   1215     explicit CD3D11_BLEND_DESC(CD3D11_DEFAULT) {
   1216         AlphaToCoverageEnable = FALSE;
   1217         IndependentBlendEnable = FALSE;
   1218         for(D3D11_RENDER_TARGET_BLEND_DESC *target; target < RenderTarget+D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT; target++) {
   1219             target->BlendEnable = FALSE;
   1220             target->SrcBlend = target->SrcBlendAlpha = D3D11_BLEND_ONE;
   1221             target->DestBlend = target->DestBlendAlpha = D3D11_BLEND_ZERO;
   1222             target->BlendOp = target->BlendOpAlpha = D3D11_BLEND_OP_ADD;
   1223             target->RenderTargetWriteMask = D3D11_COLOR_WRITE_ENABLE_ALL;
   1224         }
   1225     }
   1226     ~CD3D11_BLEND_DESC() {}
   1227     operator const D3D11_BLEND_DESC&() const { return *this; }
   1228 };
   1229 #endif
   1230 typedef struct D3D11_BUFFER_DESC {
   1231     UINT ByteWidth;
   1232     D3D11_USAGE Usage;
   1233     UINT BindFlags;
   1234     UINT CPUAccessFlags;
   1235     UINT MiscFlags;
   1236     UINT StructureByteStride;
   1237 } D3D11_BUFFER_DESC;
   1238 #if !defined(D3D11_NO_HELPERS) && defined(__cplusplus)
   1239 struct CD3D11_BUFFER_DESC : public D3D11_BUFFER_DESC {
   1240     CD3D11_BUFFER_DESC() {}
   1241     explicit CD3D11_BUFFER_DESC(const D3D11_BUFFER_DESC &o) : D3D11_BUFFER_DESC(o) {}
   1242     explicit CD3D11_BUFFER_DESC(UINT byteWidth,UINT bindFlags,
   1243             D3D11_USAGE usage = D3D11_USAGE_DEFAULT, UINT cpuaccessFlags = 0,
   1244             UINT miscFlags = 0, UINT structureByteStride = 0 ) {
   1245         ByteWidth = byteWidth;
   1246         Usage = usage;
   1247         BindFlags = bindFlags;
   1248         CPUAccessFlags = cpuaccessFlags;
   1249         MiscFlags = miscFlags;
   1250         StructureByteStride = structureByteStride;
   1251     }
   1252     ~CD3D11_BUFFER_DESC() {}
   1253     operator const D3D11_BUFFER_DESC&() const { return *this; }
   1254 };
   1255 #endif
   1256 typedef struct D3D11_DEPTH_STENCIL_VIEW_DESC {
   1257     DXGI_FORMAT Format;
   1258     D3D11_DSV_DIMENSION ViewDimension;
   1259     UINT Flags;
   1260     __C89_NAMELESS union {
   1261         D3D11_TEX1D_DSV Texture1D;
   1262         D3D11_TEX1D_ARRAY_DSV Texture1DArray;
   1263         D3D11_TEX2D_DSV Texture2D;
   1264         D3D11_TEX2D_ARRAY_DSV Texture2DArray;
   1265         D3D11_TEX2DMS_DSV Texture2DMS;
   1266         D3D11_TEX2DMS_ARRAY_DSV Texture2DMSArray;
   1267     } __C89_NAMELESSUNIONNAME;
   1268 } D3D11_DEPTH_STENCIL_VIEW_DESC;
   1269 typedef struct D3D11_DEPTH_STENCILOP_DESC {
   1270     D3D11_STENCIL_OP StencilFailOp;
   1271     D3D11_STENCIL_OP StencilDepthFailOp;
   1272     D3D11_STENCIL_OP StencilPassOp;
   1273     D3D11_COMPARISON_FUNC StencilFunc;
   1274 } D3D11_DEPTH_STENCILOP_DESC;
   1275 typedef struct D3D11_DEPTH_STENCIL_DESC {
   1276     WINBOOL DepthEnable;
   1277     D3D11_DEPTH_WRITE_MASK DepthWriteMask;
   1278     D3D11_COMPARISON_FUNC DepthFunc;
   1279     WINBOOL StencilEnable;
   1280     UINT8 StencilReadMask;
   1281     UINT8 StencilWriteMask;
   1282     D3D11_DEPTH_STENCILOP_DESC FrontFace;
   1283     D3D11_DEPTH_STENCILOP_DESC BackFace;
   1284 } D3D11_DEPTH_STENCIL_DESC;
   1285 typedef struct D3D11_RENDER_TARGET_VIEW_DESC {
   1286     DXGI_FORMAT Format;
   1287     D3D11_RTV_DIMENSION ViewDimension;
   1288     __C89_NAMELESS union {
   1289         D3D11_BUFFER_RTV Buffer;
   1290         D3D11_TEX1D_RTV Texture1D;
   1291         D3D11_TEX1D_ARRAY_RTV Texture1DArray;
   1292         D3D11_TEX2D_RTV Texture2D;
   1293         D3D11_TEX2D_ARRAY_RTV Texture2DArray;
   1294         D3D11_TEX2DMS_RTV Texture2DMS;
   1295         D3D11_TEX2DMS_ARRAY_RTV Texture2DMSArray;
   1296         D3D11_TEX3D_RTV Texture3D;
   1297     } __C89_NAMELESSUNIONNAME;
   1298 } D3D11_RENDER_TARGET_VIEW_DESC;
   1299 #if !defined(D3D11_NO_HELPERS) && defined(__cplusplus)
   1300 struct CD3D11_RENDER_TARGET_VIEW_DESC : public D3D11_RENDER_TARGET_VIEW_DESC {
   1301     CD3D11_RENDER_TARGET_VIEW_DESC() {}
   1302     explicit CD3D11_RENDER_TARGET_VIEW_DESC(D3D11_RTV_DIMENSION dim, DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN,
   1303             UINT mip_slice = 0, UINT first_slice = 0, UINT array_size = -1) {
   1304         Format = format;
   1305         ViewDimension = dim;
   1306         switch(dim) {
   1307         case D3D11_RTV_DIMENSION_BUFFER:
   1308             Buffer.FirstElement = mip_slice;
   1309             Buffer.NumElements = first_slice;
   1310             break;
   1311         case D3D11_RTV_DIMENSION_TEXTURE1D:
   1312             Texture1D.MipSlice = mip_slice;
   1313             break;
   1314         case D3D11_RTV_DIMENSION_TEXTURE1DARRAY:
   1315             Texture1DArray.MipSlice = mip_slice;
   1316             Texture1DArray.FirstArraySlice = first_slice;
   1317             Texture1DArray.ArraySize = array_size;
   1318             break;
   1319         case D3D11_RTV_DIMENSION_TEXTURE2D:
   1320             Texture2D.MipSlice = mip_slice;
   1321             break;
   1322         case D3D11_RTV_DIMENSION_TEXTURE2DARRAY:
   1323             Texture2DArray.MipSlice = mip_slice;
   1324             Texture2DArray.FirstArraySlice = first_slice;
   1325             Texture2DArray.ArraySize = array_size;
   1326             break;
   1327         case D3D11_RTV_DIMENSION_TEXTURE2DMSARRAY:
   1328             Texture2DMSArray.FirstArraySlice = first_slice;
   1329             Texture2DMSArray.ArraySize = array_size;
   1330             break;
   1331         case D3D11_RTV_DIMENSION_TEXTURE3D:
   1332             Texture3D.MipSlice = mip_slice;
   1333             Texture3D.FirstWSlice = first_slice;
   1334             Texture3D.WSize = array_size;
   1335             break;
   1336         default:
   1337             break;
   1338         }
   1339     }
   1340     explicit CD3D11_RENDER_TARGET_VIEW_DESC(ID3D11Buffer*, DXGI_FORMAT format, UINT first_elem,
   1341             UINT elem_cnt) {
   1342         Format = format;
   1343         ViewDimension = D3D11_RTV_DIMENSION_BUFFER;
   1344         Buffer.FirstElement = first_elem;
   1345         Buffer.NumElements = elem_cnt;
   1346     }
   1347     explicit CD3D11_RENDER_TARGET_VIEW_DESC(ID3D11Texture1D *texture, D3D11_RTV_DIMENSION dim,
   1348             DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN, UINT mip_slice = 0, UINT first_slice = 0,
   1349             UINT array_size = -1);
   1350     explicit CD3D11_RENDER_TARGET_VIEW_DESC(ID3D11Texture2D *texture, D3D11_RTV_DIMENSION dim,
   1351             DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN, UINT mip_slice = 0, UINT first_slice = 0,
   1352             UINT array_size = -1);
   1353     explicit CD3D11_RENDER_TARGET_VIEW_DESC(ID3D11Texture3D *texture, DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN,
   1354             UINT mip_slice = 0, UINT first_w_slice = 0, UINT w_slice = -1 );
   1355     ~CD3D11_RENDER_TARGET_VIEW_DESC() {}
   1356     explicit CD3D11_RENDER_TARGET_VIEW_DESC(const D3D11_RENDER_TARGET_VIEW_DESC &other)
   1357         : D3D11_RENDER_TARGET_VIEW_DESC(other) {}
   1358     operator const D3D11_RENDER_TARGET_VIEW_DESC&() const {
   1359         return *this;
   1360     }
   1361 };
   1362 #endif
   1363 typedef struct D3D11_SAMPLER_DESC {
   1364     D3D11_FILTER Filter;
   1365     D3D11_TEXTURE_ADDRESS_MODE AddressU;
   1366     D3D11_TEXTURE_ADDRESS_MODE AddressV;
   1367     D3D11_TEXTURE_ADDRESS_MODE AddressW;
   1368     FLOAT MipLODBias;
   1369     UINT MaxAnisotropy;
   1370     D3D11_COMPARISON_FUNC ComparisonFunc;
   1371     FLOAT BorderColor[4];
   1372     FLOAT MinLOD;
   1373     FLOAT MaxLOD;
   1374 } D3D11_SAMPLER_DESC;
   1375 #if !defined(D3D11_NO_HELPERS) && defined(__cplusplus)
   1376 struct CD3D11_SAMPLER_DESC : public D3D11_SAMPLER_DESC {
   1377     CD3D11_SAMPLER_DESC() {}
   1378     explicit CD3D11_SAMPLER_DESC(const D3D11_SAMPLER_DESC &o) : D3D11_SAMPLER_DESC(o) {}
   1379     explicit CD3D11_SAMPLER_DESC(CD3D11_DEFAULT) {
   1380         Filter = D3D11_FILTER_MIN_MAG_MIP_LINEAR;
   1381         AddressU = D3D11_TEXTURE_ADDRESS_CLAMP;
   1382         AddressV = D3D11_TEXTURE_ADDRESS_CLAMP;
   1383         AddressW = D3D11_TEXTURE_ADDRESS_CLAMP;
   1384         MipLODBias = 0;
   1385         MaxAnisotropy = 1;
   1386         ComparisonFunc = D3D11_COMPARISON_NEVER;
   1387         BorderColor[0] = BorderColor[1] = BorderColor[2] = BorderColor[3] = 1.0f;
   1388         MinLOD = -3.402823466e+38f;
   1389         MaxLOD = 3.402823466e+38f;
   1390     }
   1391     explicit CD3D11_SAMPLER_DESC(D3D11_FILTER filter, D3D11_TEXTURE_ADDRESS_MODE addressU,
   1392             D3D11_TEXTURE_ADDRESS_MODE addressV, D3D11_TEXTURE_ADDRESS_MODE addressW,
   1393             FLOAT mipLODBias, UINT maxAnisotropy, D3D11_COMPARISON_FUNC comparisonFunc,
   1394             const FLOAT *borderColor, FLOAT minLOD, FLOAT maxLOD) {
   1395         Filter = filter;
   1396         AddressU = addressU;
   1397         AddressV = addressV;
   1398         AddressW = addressW;
   1399         MipLODBias = mipLODBias;
   1400         MaxAnisotropy = maxAnisotropy;
   1401         ComparisonFunc = comparisonFunc;
   1402         if(borderColor) {
   1403             BorderColor[0] = borderColor[0];
   1404             BorderColor[1] = borderColor[1];
   1405             BorderColor[2] = borderColor[2];
   1406             BorderColor[3] = borderColor[3];
   1407         }else {
   1408             BorderColor[0] = BorderColor[1] = BorderColor[2] = BorderColor[3] = 1.0f;
   1409         }
   1410         MinLOD = minLOD;
   1411         MaxLOD = maxLOD;
   1412     }
   1413     ~CD3D11_SAMPLER_DESC() {}
   1414     operator const D3D11_SAMPLER_DESC&() const { return *this; }
   1415 };
   1416 #endif
   1417 typedef struct D3D11_SHADER_RESOURCE_VIEW_DESC {
   1418     DXGI_FORMAT Format;
   1419     D3D11_SRV_DIMENSION ViewDimension;
   1420     __C89_NAMELESS union {
   1421         D3D11_BUFFER_SRV Buffer;
   1422         D3D11_TEX1D_SRV Texture1D;
   1423         D3D11_TEX1D_ARRAY_SRV Texture1DArray;
   1424         D3D11_TEX2D_SRV Texture2D;
   1425         D3D11_TEX2D_ARRAY_SRV Texture2DArray;
   1426         D3D11_TEX2DMS_SRV Texture2DMS;
   1427         D3D11_TEX2DMS_ARRAY_SRV Texture2DMSArray;
   1428         D3D11_TEX3D_SRV Texture3D;
   1429         D3D11_TEXCUBE_SRV TextureCube;
   1430         D3D11_TEXCUBE_ARRAY_SRV TextureCubeArray;
   1431         D3D11_BUFFEREX_SRV BufferEx;
   1432     } __C89_NAMELESSUNIONNAME;
   1433 } D3D11_SHADER_RESOURCE_VIEW_DESC;
   1434 #if !defined(D3D11_NO_HELPERS) && defined( __cplusplus )
   1435 struct CD3D11_SHADER_RESOURCE_VIEW_DESC : public D3D11_SHADER_RESOURCE_VIEW_DESC {
   1436     CD3D11_SHADER_RESOURCE_VIEW_DESC() {}
   1437     explicit CD3D11_SHADER_RESOURCE_VIEW_DESC(D3D11_SRV_DIMENSION dim,
   1438             DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN, UINT most_detailed_mip = 0,
   1439             UINT mip_levels = -1, UINT first_slice = 0, UINT array_size = -1, UINT flags = 0) {
   1440         Format = format;
   1441         ViewDimension = dim;
   1442         switch(ViewDimension) {
   1443         case D3D11_SRV_DIMENSION_BUFFER:
   1444             Buffer.FirstElement = most_detailed_mip;
   1445             Buffer.NumElements = mip_levels;
   1446             break;
   1447         case D3D11_SRV_DIMENSION_TEXTURE1D:
   1448             Texture1D.MostDetailedMip = most_detailed_mip;
   1449             Texture1D.MipLevels = mip_levels;
   1450             break;
   1451         case D3D11_SRV_DIMENSION_TEXTURE1DARRAY:
   1452             Texture1DArray.MostDetailedMip = most_detailed_mip;
   1453             Texture1DArray.MipLevels = mip_levels;
   1454             Texture1DArray.FirstArraySlice = first_slice;
   1455             Texture1DArray.ArraySize = array_size;
   1456             break;
   1457         case D3D11_SRV_DIMENSION_TEXTURE2D:
   1458             Texture2D.MostDetailedMip = most_detailed_mip;
   1459             Texture2D.MipLevels = mip_levels;
   1460             break;
   1461         case D3D11_SRV_DIMENSION_TEXTURE2DARRAY:
   1462             Texture2DArray.MostDetailedMip = most_detailed_mip;
   1463             Texture2DArray.MipLevels = mip_levels;
   1464             Texture2DArray.FirstArraySlice = first_slice;
   1465             Texture2DArray.ArraySize = array_size;
   1466             break;
   1467         case D3D11_SRV_DIMENSION_TEXTURE2DMSARRAY:
   1468             Texture2DMSArray.FirstArraySlice = first_slice;
   1469             Texture2DMSArray.ArraySize = array_size;
   1470             break;
   1471         case D3D11_SRV_DIMENSION_TEXTURE3D:
   1472             Texture3D.MostDetailedMip = most_detailed_mip;
   1473             Texture3D.MipLevels = mip_levels;
   1474             break;
   1475         case D3D11_SRV_DIMENSION_TEXTURECUBE:
   1476             TextureCube.MostDetailedMip = most_detailed_mip;
   1477             TextureCube.MipLevels = mip_levels;
   1478             break;
   1479         case D3D11_SRV_DIMENSION_TEXTURECUBEARRAY:
   1480             TextureCubeArray.MostDetailedMip = most_detailed_mip;
   1481             TextureCubeArray.MipLevels = mip_levels;
   1482             TextureCubeArray.First2DArrayFace = first_slice;
   1483             TextureCubeArray.NumCubes = array_size;
   1484             break;
   1485         case D3D11_SRV_DIMENSION_BUFFEREX:
   1486             BufferEx.FirstElement = most_detailed_mip;
   1487             BufferEx.NumElements = mip_levels;
   1488             BufferEx.Flags = flags;
   1489             break;
   1490         default:
   1491             break;
   1492         }
   1493     }
   1494     explicit CD3D11_SHADER_RESOURCE_VIEW_DESC(ID3D11Buffer*, DXGI_FORMAT format, UINT first_elem,
   1495             UINT elem_cnt, UINT flags = 0);
   1496     explicit CD3D11_SHADER_RESOURCE_VIEW_DESC(ID3D11Texture1D *texture, D3D11_SRV_DIMENSION dim,
   1497             DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN, UINT most_detailed_mip = 0, UINT mip_levels = -1,
   1498             UINT first_slice = 0, UINT array_size = -1 );
   1499     explicit CD3D11_SHADER_RESOURCE_VIEW_DESC(ID3D11Texture2D *texture, D3D11_SRV_DIMENSION dim,
   1500             DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN, UINT most_detailed_mip = 0, UINT mip_levels = -1,
   1501             UINT first_slice = 0, UINT array_size = -1 );
   1502     explicit CD3D11_SHADER_RESOURCE_VIEW_DESC(ID3D11Texture3D *texture, DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN,
   1503             UINT most_detailed_mip = 0, UINT mip_levels = -1 );
   1504     ~CD3D11_SHADER_RESOURCE_VIEW_DESC() {}
   1505     explicit CD3D11_SHADER_RESOURCE_VIEW_DESC(const D3D11_SHADER_RESOURCE_VIEW_DESC &other)
   1506         : D3D11_SHADER_RESOURCE_VIEW_DESC(other) {}
   1507     operator const D3D11_SHADER_RESOURCE_VIEW_DESC&() const {
   1508         return *this;
   1509     }
   1510 };
   1511 #endif
   1512 typedef struct D3D11_TEXTURE1D_DESC {
   1513     UINT Width;
   1514     UINT MipLevels;
   1515     UINT ArraySize;
   1516     DXGI_FORMAT Format;
   1517     D3D11_USAGE Usage;
   1518     UINT BindFlags;
   1519     UINT CPUAccessFlags;
   1520     UINT MiscFlags;
   1521 } D3D11_TEXTURE1D_DESC;
   1522 typedef struct D3D11_TEXTURE2D_DESC {
   1523     UINT Width;
   1524     UINT Height;
   1525     UINT MipLevels;
   1526     UINT ArraySize;
   1527     DXGI_FORMAT Format;
   1528     DXGI_SAMPLE_DESC SampleDesc;
   1529     D3D11_USAGE Usage;
   1530     UINT BindFlags;
   1531     UINT CPUAccessFlags;
   1532     UINT MiscFlags;
   1533 } D3D11_TEXTURE2D_DESC;
   1534 #if !defined(D3D11_NO_HELPERS) && defined(__cplusplus)
   1535 struct CD3D11_TEXTURE2D_DESC : public D3D11_TEXTURE2D_DESC {
   1536     CD3D11_TEXTURE2D_DESC() {}
   1537     explicit CD3D11_TEXTURE2D_DESC(const D3D11_TEXTURE2D_DESC &o) : D3D11_TEXTURE2D_DESC(o) {}
   1538     explicit CD3D11_TEXTURE2D_DESC(DXGI_FORMAT format, UINT width, UINT height, UINT arraySize = 1,
   1539             UINT mipLevels = 0, UINT bindFlags = D3D11_BIND_SHADER_RESOURCE,
   1540             D3D11_USAGE usage = D3D11_USAGE_DEFAULT, UINT cpuaccessFlags = 0, UINT sampleCount = 1,
   1541             UINT sampleQuality = 0, UINT miscFlags = 0) {
   1542         Width = width;
   1543         Height = height;
   1544         MipLevels = mipLevels;
   1545         ArraySize = arraySize;
   1546         Format = format;
   1547         SampleDesc.Count = sampleCount;
   1548         SampleDesc.Quality = sampleQuality;
   1549         Usage = usage;
   1550         BindFlags = bindFlags;
   1551         CPUAccessFlags = cpuaccessFlags;
   1552         MiscFlags = miscFlags;
   1553     }
   1554     ~CD3D11_TEXTURE2D_DESC() {}
   1555     operator const D3D11_TEXTURE2D_DESC&() const { return *this; }
   1556 };
   1557 #endif
   1558 typedef struct D3D11_TEXTURE3D_DESC {
   1559     UINT Width;
   1560     UINT Height;
   1561     UINT Depth;
   1562     UINT MipLevels;
   1563     DXGI_FORMAT Format;
   1564     D3D11_USAGE Usage;
   1565     UINT BindFlags;
   1566     UINT CPUAccessFlags;
   1567     UINT MiscFlags;
   1568 } D3D11_TEXTURE3D_DESC;
   1569 typedef struct D3D11_VIDEO_DECODER_DESC {
   1570     GUID Guid;
   1571     UINT SampleWidth;
   1572     UINT SampleHeight;
   1573     DXGI_FORMAT OutputFormat;
   1574 } D3D11_VIDEO_DECODER_DESC;
   1575 typedef struct D3D11_VIDEO_DECODER_CONFIG {
   1576     GUID guidConfigBitstreamEncryption;
   1577     GUID guidConfigMBcontrolEncryption;
   1578     GUID guidConfigResidDiffEncryption;
   1579     UINT ConfigBitstreamRaw;
   1580     UINT ConfigMBcontrolRasterOrder;
   1581     UINT ConfigResidDiffHost;
   1582     UINT ConfigSpatialResid8;
   1583     UINT ConfigResid8Subtraction;
   1584     UINT ConfigSpatialHost8or9Clipping;
   1585     UINT ConfigSpatialResidInterleaved;
   1586     UINT ConfigIntraResidUnsigned;
   1587     UINT ConfigResidDiffAccelerator;
   1588     UINT ConfigHostInverseScan;
   1589     UINT ConfigSpecificIDCT;
   1590     UINT Config4GroupedCoefs;
   1591     USHORT ConfigMinRenderTargetBuffCount;
   1592     USHORT ConfigDecoderSpecific;
   1593 } D3D11_VIDEO_DECODER_CONFIG;
   1594 typedef enum D3D11_VIDEO_FRAME_FORMAT {
   1595     D3D11_VIDEO_FRAME_FORMAT_PROGRESSIVE = 0,
   1596     D3D11_VIDEO_FRAME_FORMAT_INTERLACED_TOP_FIELD_FIRST = 1,
   1597     D3D11_VIDEO_FRAME_FORMAT_INTERLACED_BOTTOM_FIELD_FIRST = 2
   1598 } D3D11_VIDEO_FRAME_FORMAT;
   1599 typedef enum D3D11_VIDEO_USAGE {
   1600     D3D11_VIDEO_USAGE_PLAYBACK_NORMAL = 0,
   1601     D3D11_VIDEO_USAGE_OPTIMAL_SPEED = 1,
   1602     D3D11_VIDEO_USAGE_OPTIMAL_QUALITY = 2
   1603 } D3D11_VIDEO_USAGE;
   1604 typedef struct D3D11_VIDEO_PROCESSOR_CONTENT_DESC {
   1605     D3D11_VIDEO_FRAME_FORMAT InputFrameFormat;
   1606     DXGI_RATIONAL InputFrameRate;
   1607     UINT InputWidth;
   1608     UINT InputHeight;
   1609     DXGI_RATIONAL OutputFrameRate;
   1610     UINT OutputWidth;
   1611     UINT OutputHeight;
   1612     D3D11_VIDEO_USAGE Usage;
   1613 } D3D11_VIDEO_PROCESSOR_CONTENT_DESC;
   1614 typedef struct D3D11_VIDEO_PROCESSOR_CAPS {
   1615     UINT DeviceCaps;
   1616     UINT FeatureCaps;
   1617     UINT FilterCaps;
   1618     UINT InputFormatCaps;
   1619     UINT AutoStreamCaps;
   1620     UINT StereoCaps;
   1621     UINT RateConversionCapsCount;
   1622     UINT MaxInputStreams;
   1623     UINT MaxStreamStates;
   1624 } D3D11_VIDEO_PROCESSOR_CAPS;
   1625 typedef struct D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS {
   1626     UINT PastFrames;
   1627     UINT FutureFrames;
   1628     UINT ProcessorCaps;
   1629     UINT ITelecineCaps;
   1630     UINT CustomRateCount;
   1631 } D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS;
   1632 typedef struct D3D11_VIDEO_PROCESSOR_CUSTOM_RATE {
   1633     DXGI_RATIONAL CustomRate;
   1634     UINT OutputFrames;
   1635     WINBOOL InputInterlaced;
   1636     UINT InputFramesOrFields;
   1637 } D3D11_VIDEO_PROCESSOR_CUSTOM_RATE;
   1638 typedef enum D3D11_VIDEO_PROCESSOR_FILTER {
   1639     D3D11_VIDEO_PROCESSOR_FILTER_BRIGHTNESS = 0,
   1640     D3D11_VIDEO_PROCESSOR_FILTER_CONTRAST = 1,
   1641     D3D11_VIDEO_PROCESSOR_FILTER_HUE = 2,
   1642     D3D11_VIDEO_PROCESSOR_FILTER_SATURATION = 3,
   1643     D3D11_VIDEO_PROCESSOR_FILTER_NOISE_REDUCTION = 4,
   1644     D3D11_VIDEO_PROCESSOR_FILTER_EDGE_ENHANCEMENT = 5,
   1645     D3D11_VIDEO_PROCESSOR_FILTER_ANAMORPHIC_SCALING = 6,
   1646     D3D11_VIDEO_PROCESSOR_FILTER_STEREO_ADJUSTMENT = 7
   1647 } D3D11_VIDEO_PROCESSOR_FILTER;
   1648 typedef struct D3D11_VIDEO_PROCESSOR_FILTER_RANGE {
   1649     int Minimum;
   1650     int Maximum;
   1651     int Default;
   1652     float Multiplier;
   1653 } D3D11_VIDEO_PROCESSOR_FILTER_RANGE;
   1654 typedef enum D3D11_AUTHENTICATED_CHANNEL_TYPE {
   1655     D3D11_AUTHENTICATED_CHANNEL_D3D11 = 1,
   1656     D3D11_AUTHENTICATED_CHANNEL_DRIVER_SOFTWARE = 2,
   1657     D3D11_AUTHENTICATED_CHANNEL_DRIVER_HARDWARE = 3
   1658 } D3D11_AUTHENTICATED_CHANNEL_TYPE;
   1659 typedef enum D3D11_VDOV_DIMENSION {
   1660     D3D11_VDOV_DIMENSION_UNKNOWN = 0,
   1661     D3D11_VDOV_DIMENSION_TEXTURE2D = 1
   1662 } D3D11_VDOV_DIMENSION;
   1663 typedef struct D3D11_TEX2D_VDOV {
   1664     UINT ArraySlice;
   1665 } D3D11_TEX2D_VDOV;
   1666 typedef struct D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC {
   1667     GUID DecodeProfile;
   1668     D3D11_VDOV_DIMENSION ViewDimension;
   1669     __C89_NAMELESS union {
   1670         D3D11_TEX2D_VDOV Texture2D;
   1671     } __C89_NAMELESSUNIONNAME;
   1672 } D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC;
   1673 typedef enum D3D11_VPIV_DIMENSION {
   1674     D3D11_VPIV_DIMENSION_UNKNOWN = 0,
   1675     D3D11_VPIV_DIMENSION_TEXTURE2D = 1
   1676 } D3D11_VPIV_DIMENSION;
   1677 typedef struct D3D11_TEX2D_VPIV {
   1678     UINT MipSlice;
   1679     UINT ArraySlice;
   1680 } D3D11_TEX2D_VPIV;
   1681 typedef struct D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC {
   1682     UINT FourCC;
   1683     D3D11_VPIV_DIMENSION ViewDimension;
   1684     __C89_NAMELESS union {
   1685         D3D11_TEX2D_VPIV Texture2D;
   1686     } __C89_NAMELESSUNIONNAME;
   1687 } D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC;
   1688 typedef enum D3D11_VPOV_DIMENSION {
   1689     D3D11_VPOV_DIMENSION_UNKNOWN = 0,
   1690     D3D11_VPOV_DIMENSION_TEXTURE2D = 1,
   1691     D3D11_VPOV_DIMENSION_TEXTURE2DARRAY = 2
   1692 } D3D11_VPOV_DIMENSION;
   1693 typedef struct D3D11_TEX2D_VPOV {
   1694     UINT MipSlice;
   1695 } D3D11_TEX2D_VPOV;
   1696 typedef struct D3D11_TEX2D_ARRAY_VPOV {
   1697     UINT MipSlice;
   1698     UINT FirstArraySlice;
   1699     UINT ArraySize;
   1700 } D3D11_TEX2D_ARRAY_VPOV;
   1701 typedef struct D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC {
   1702     D3D11_VPOV_DIMENSION ViewDimension;
   1703     __C89_NAMELESS union {
   1704         D3D11_TEX2D_VPOV Texture2D;
   1705         D3D11_TEX2D_ARRAY_VPOV Texture2DArray;
   1706     } __C89_NAMELESSUNIONNAME;
   1707 } D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC;
   1708 typedef struct D3D11_VIDEO_CONTENT_PROTECTION_CAPS {
   1709     UINT Caps;
   1710     UINT KeyExchangeTypeCount;
   1711     UINT BlockAlignmentSize;
   1712     ULONGLONG ProtectedMemorySize;
   1713 } D3D11_VIDEO_CONTENT_PROTECTION_CAPS;
   1714 typedef struct D3D11_ENCRYPTED_BLOCK_INFO {
   1715     UINT NumEncryptedBytesAtBeginning;
   1716     UINT NumBytesInSkipPattern;
   1717     UINT NumBytesInEncryptPattern;
   1718 } D3D11_ENCRYPTED_BLOCK_INFO;
   1719 typedef struct D3D11_VIDEO_DECODER_BUFFER_DESC {
   1720     D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType;
   1721     UINT BufferIndex;
   1722     UINT DataOffset;
   1723     UINT DataSize;
   1724     UINT FirstMBaddress;
   1725     UINT NumMBsInBuffer;
   1726     UINT Width;
   1727     UINT Height;
   1728     UINT Stride;
   1729     UINT ReservedBits;
   1730     void *pIV;
   1731     UINT IVSize;
   1732     WINBOOL PartialEncryption;
   1733     D3D11_ENCRYPTED_BLOCK_INFO EncryptedBlockInfo;
   1734 } D3D11_VIDEO_DECODER_BUFFER_DESC;
   1735 typedef struct D3D11_VIDEO_DECODER_EXTENSION {
   1736     UINT Function;
   1737     void *pPrivateInputData;
   1738     UINT PrivateInputDataSize;
   1739     void *pPrivateOutputData;
   1740     UINT PrivateOutputDataSize;
   1741     UINT ResourceCount;
   1742     ID3D11Resource **ppResourceList;
   1743 } D3D11_VIDEO_DECODER_EXTENSION;
   1744 typedef struct D3D11_VIDEO_COLOR_YCbCrA {
   1745     float Y;
   1746     float Cb;
   1747     float Cr;
   1748     float A;
   1749 } D3D11_VIDEO_COLOR_YCbCrA;
   1750 typedef struct D3D11_VIDEO_COLOR_RGBA {
   1751     float R;
   1752     float G;
   1753     float B;
   1754     float A;
   1755 } D3D11_VIDEO_COLOR_RGBA;
   1756 typedef struct D3D11_VIDEO_COLOR {
   1757     __C89_NAMELESS union {
   1758         D3D11_VIDEO_COLOR_YCbCrA YCbCr;
   1759         D3D11_VIDEO_COLOR_RGBA RGBA;
   1760     } __C89_NAMELESSUNIONNAME;
   1761 } D3D11_VIDEO_COLOR;
   1762 typedef struct D3D11_VIDEO_PROCESSOR_COLOR_SPACE {
   1763     UINT Usage : 1;
   1764     UINT RGB_Range : 1;
   1765     UINT YCbCr_Matrix : 1;
   1766     UINT YCbCr_xvYCC : 1;
   1767     UINT Nominal_Range : 2;
   1768     UINT Reserved : 26;
   1769 } D3D11_VIDEO_PROCESSOR_COLOR_SPACE;
   1770 typedef struct D3D11_VIDEO_PROCESSOR_STREAM {
   1771     WINBOOL Enable;
   1772     UINT OutputIndex;
   1773     UINT InputFrameOrField;
   1774     UINT PastFrames;
   1775     UINT FutureFrames;
   1776     ID3D11VideoProcessorInputView **ppPastSurfaces;
   1777     ID3D11VideoProcessorInputView *pInputSurface;
   1778     ID3D11VideoProcessorInputView **ppFutureSurfaces;
   1779     ID3D11VideoProcessorInputView **ppPastSurfacesRight;
   1780     ID3D11VideoProcessorInputView *pInputSurfaceRight;
   1781     ID3D11VideoProcessorInputView **ppFutureSurfacesRight;
   1782 } D3D11_VIDEO_PROCESSOR_STREAM;
   1783 typedef struct D3D11_OMAC {
   1784     BYTE Omac[16];
   1785 } D3D11_OMAC;
   1786 typedef struct D3D11_AUTHENTICATED_CONFIGURE_OUTPUT {
   1787     D3D11_OMAC omac;
   1788     GUID ConfigureType;
   1789     HANDLE hChannel;
   1790     UINT SequenceNumber;
   1791     HRESULT ReturnCode;
   1792 } D3D11_AUTHENTICATED_CONFIGURE_OUTPUT;
   1793 typedef struct D3D11_QUERY_DATA_TIMESTAMP_DISJOINT {
   1794     UINT64 Frequency;
   1795     WINBOOL Disjoint;
   1796 } D3D11_QUERY_DATA_TIMESTAMP_DISJOINT;
   1797 /*****************************************************************************
   1798  * ID3D11DeviceChild interface
   1799  */
   1800 #ifndef __ID3D11DeviceChild_INTERFACE_DEFINED__
   1801 #define __ID3D11DeviceChild_INTERFACE_DEFINED__
   1802 
   1803 DEFINE_GUID(IID_ID3D11DeviceChild, 0x1841e5c8, 0x16b0, 0x489b, 0xbc,0xc8, 0x44,0xcf,0xb0,0xd5,0xde,0xae);
   1804 #if defined(__cplusplus) && !defined(CINTERFACE)
   1805 MIDL_INTERFACE("1841e5c8-16b0-489b-bcc8-44cfb0d5deae")
   1806 ID3D11DeviceChild : public IUnknown
   1807 {
   1808     virtual void STDMETHODCALLTYPE GetDevice(
   1809         ID3D11Device **ppDevice) = 0;
   1810 
   1811     virtual HRESULT STDMETHODCALLTYPE GetPrivateData(
   1812         REFGUID guid,
   1813         UINT *pDataSize,
   1814         void *pData) = 0;
   1815 
   1816     virtual HRESULT STDMETHODCALLTYPE SetPrivateData(
   1817         REFGUID guid,
   1818         UINT DataSize,
   1819         const void *pData) = 0;
   1820 
   1821     virtual HRESULT STDMETHODCALLTYPE SetPrivateDataInterface(
   1822         REFGUID guid,
   1823         const IUnknown *pData) = 0;
   1824 
   1825 };
   1826 #ifdef __CRT_UUID_DECL
   1827 __CRT_UUID_DECL(ID3D11DeviceChild, 0x1841e5c8, 0x16b0, 0x489b, 0xbc,0xc8, 0x44,0xcf,0xb0,0xd5,0xde,0xae)
   1828 #endif
   1829 #else
   1830 typedef struct ID3D11DeviceChildVtbl {
   1831     BEGIN_INTERFACE
   1832 
   1833     /*** IUnknown methods ***/
   1834     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   1835         ID3D11DeviceChild* This,
   1836         REFIID riid,
   1837         void **ppvObject);
   1838 
   1839     ULONG (STDMETHODCALLTYPE *AddRef)(
   1840         ID3D11DeviceChild* This);
   1841 
   1842     ULONG (STDMETHODCALLTYPE *Release)(
   1843         ID3D11DeviceChild* This);
   1844 
   1845     /*** ID3D11DeviceChild methods ***/
   1846     void (STDMETHODCALLTYPE *GetDevice)(
   1847         ID3D11DeviceChild* This,
   1848         ID3D11Device **ppDevice);
   1849 
   1850     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   1851         ID3D11DeviceChild* This,
   1852         REFGUID guid,
   1853         UINT *pDataSize,
   1854         void *pData);
   1855 
   1856     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   1857         ID3D11DeviceChild* This,
   1858         REFGUID guid,
   1859         UINT DataSize,
   1860         const void *pData);
   1861 
   1862     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   1863         ID3D11DeviceChild* This,
   1864         REFGUID guid,
   1865         const IUnknown *pData);
   1866 
   1867     END_INTERFACE
   1868 } ID3D11DeviceChildVtbl;
   1869 interface ID3D11DeviceChild {
   1870     CONST_VTBL ID3D11DeviceChildVtbl* lpVtbl;
   1871 };
   1872 
   1873 #ifdef COBJMACROS
   1874 #ifndef WIDL_C_INLINE_WRAPPERS
   1875 /*** IUnknown methods ***/
   1876 #define ID3D11DeviceChild_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   1877 #define ID3D11DeviceChild_AddRef(This) (This)->lpVtbl->AddRef(This)
   1878 #define ID3D11DeviceChild_Release(This) (This)->lpVtbl->Release(This)
   1879 /*** ID3D11DeviceChild methods ***/
   1880 #define ID3D11DeviceChild_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   1881 #define ID3D11DeviceChild_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   1882 #define ID3D11DeviceChild_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   1883 #define ID3D11DeviceChild_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   1884 #else
   1885 /*** IUnknown methods ***/
   1886 static FORCEINLINE HRESULT ID3D11DeviceChild_QueryInterface(ID3D11DeviceChild* This,REFIID riid,void **ppvObject) {
   1887     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   1888 }
   1889 static FORCEINLINE ULONG ID3D11DeviceChild_AddRef(ID3D11DeviceChild* This) {
   1890     return This->lpVtbl->AddRef(This);
   1891 }
   1892 static FORCEINLINE ULONG ID3D11DeviceChild_Release(ID3D11DeviceChild* This) {
   1893     return This->lpVtbl->Release(This);
   1894 }
   1895 /*** ID3D11DeviceChild methods ***/
   1896 static FORCEINLINE void ID3D11DeviceChild_GetDevice(ID3D11DeviceChild* This,ID3D11Device **ppDevice) {
   1897     This->lpVtbl->GetDevice(This,ppDevice);
   1898 }
   1899 static FORCEINLINE HRESULT ID3D11DeviceChild_GetPrivateData(ID3D11DeviceChild* This,REFGUID guid,UINT *pDataSize,void *pData) {
   1900     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   1901 }
   1902 static FORCEINLINE HRESULT ID3D11DeviceChild_SetPrivateData(ID3D11DeviceChild* This,REFGUID guid,UINT DataSize,const void *pData) {
   1903     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   1904 }
   1905 static FORCEINLINE HRESULT ID3D11DeviceChild_SetPrivateDataInterface(ID3D11DeviceChild* This,REFGUID guid,const IUnknown *pData) {
   1906     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   1907 }
   1908 #endif
   1909 #endif
   1910 
   1911 #endif
   1912 
   1913 void STDMETHODCALLTYPE ID3D11DeviceChild_GetDevice_Proxy(
   1914     ID3D11DeviceChild* This,
   1915     ID3D11Device **ppDevice);
   1916 void __RPC_STUB ID3D11DeviceChild_GetDevice_Stub(
   1917     IRpcStubBuffer* This,
   1918     IRpcChannelBuffer* pRpcChannelBuffer,
   1919     PRPC_MESSAGE pRpcMessage,
   1920     DWORD* pdwStubPhase);
   1921 HRESULT STDMETHODCALLTYPE ID3D11DeviceChild_GetPrivateData_Proxy(
   1922     ID3D11DeviceChild* This,
   1923     REFGUID guid,
   1924     UINT *pDataSize,
   1925     void *pData);
   1926 void __RPC_STUB ID3D11DeviceChild_GetPrivateData_Stub(
   1927     IRpcStubBuffer* This,
   1928     IRpcChannelBuffer* pRpcChannelBuffer,
   1929     PRPC_MESSAGE pRpcMessage,
   1930     DWORD* pdwStubPhase);
   1931 HRESULT STDMETHODCALLTYPE ID3D11DeviceChild_SetPrivateData_Proxy(
   1932     ID3D11DeviceChild* This,
   1933     REFGUID guid,
   1934     UINT DataSize,
   1935     const void *pData);
   1936 void __RPC_STUB ID3D11DeviceChild_SetPrivateData_Stub(
   1937     IRpcStubBuffer* This,
   1938     IRpcChannelBuffer* pRpcChannelBuffer,
   1939     PRPC_MESSAGE pRpcMessage,
   1940     DWORD* pdwStubPhase);
   1941 HRESULT STDMETHODCALLTYPE ID3D11DeviceChild_SetPrivateDataInterface_Proxy(
   1942     ID3D11DeviceChild* This,
   1943     REFGUID guid,
   1944     const IUnknown *pData);
   1945 void __RPC_STUB ID3D11DeviceChild_SetPrivateDataInterface_Stub(
   1946     IRpcStubBuffer* This,
   1947     IRpcChannelBuffer* pRpcChannelBuffer,
   1948     PRPC_MESSAGE pRpcMessage,
   1949     DWORD* pdwStubPhase);
   1950 
   1951 #endif  /* __ID3D11DeviceChild_INTERFACE_DEFINED__ */
   1952 
   1953 /*****************************************************************************
   1954  * ID3D11Asynchronous interface
   1955  */
   1956 #ifndef __ID3D11Asynchronous_INTERFACE_DEFINED__
   1957 #define __ID3D11Asynchronous_INTERFACE_DEFINED__
   1958 
   1959 DEFINE_GUID(IID_ID3D11Asynchronous, 0x4b35d0cd, 0x1e15, 0x4258, 0x9c,0x98, 0x1b,0x13,0x33,0xf6,0xdd,0x3b);
   1960 #if defined(__cplusplus) && !defined(CINTERFACE)
   1961 MIDL_INTERFACE("4b35d0cd-1e15-4258-9c98-1b1333f6dd3b")
   1962 ID3D11Asynchronous : public ID3D11DeviceChild
   1963 {
   1964     virtual UINT STDMETHODCALLTYPE GetDataSize(
   1965         ) = 0;
   1966 
   1967 };
   1968 #ifdef __CRT_UUID_DECL
   1969 __CRT_UUID_DECL(ID3D11Asynchronous, 0x4b35d0cd, 0x1e15, 0x4258, 0x9c,0x98, 0x1b,0x13,0x33,0xf6,0xdd,0x3b)
   1970 #endif
   1971 #else
   1972 typedef struct ID3D11AsynchronousVtbl {
   1973     BEGIN_INTERFACE
   1974 
   1975     /*** IUnknown methods ***/
   1976     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   1977         ID3D11Asynchronous* This,
   1978         REFIID riid,
   1979         void **ppvObject);
   1980 
   1981     ULONG (STDMETHODCALLTYPE *AddRef)(
   1982         ID3D11Asynchronous* This);
   1983 
   1984     ULONG (STDMETHODCALLTYPE *Release)(
   1985         ID3D11Asynchronous* This);
   1986 
   1987     /*** ID3D11DeviceChild methods ***/
   1988     void (STDMETHODCALLTYPE *GetDevice)(
   1989         ID3D11Asynchronous* This,
   1990         ID3D11Device **ppDevice);
   1991 
   1992     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   1993         ID3D11Asynchronous* This,
   1994         REFGUID guid,
   1995         UINT *pDataSize,
   1996         void *pData);
   1997 
   1998     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   1999         ID3D11Asynchronous* This,
   2000         REFGUID guid,
   2001         UINT DataSize,
   2002         const void *pData);
   2003 
   2004     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   2005         ID3D11Asynchronous* This,
   2006         REFGUID guid,
   2007         const IUnknown *pData);
   2008 
   2009     /*** ID3D11Asynchronous methods ***/
   2010     UINT (STDMETHODCALLTYPE *GetDataSize)(
   2011         ID3D11Asynchronous* This);
   2012 
   2013     END_INTERFACE
   2014 } ID3D11AsynchronousVtbl;
   2015 interface ID3D11Asynchronous {
   2016     CONST_VTBL ID3D11AsynchronousVtbl* lpVtbl;
   2017 };
   2018 
   2019 #ifdef COBJMACROS
   2020 #ifndef WIDL_C_INLINE_WRAPPERS
   2021 /*** IUnknown methods ***/
   2022 #define ID3D11Asynchronous_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   2023 #define ID3D11Asynchronous_AddRef(This) (This)->lpVtbl->AddRef(This)
   2024 #define ID3D11Asynchronous_Release(This) (This)->lpVtbl->Release(This)
   2025 /*** ID3D11DeviceChild methods ***/
   2026 #define ID3D11Asynchronous_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   2027 #define ID3D11Asynchronous_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   2028 #define ID3D11Asynchronous_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   2029 #define ID3D11Asynchronous_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   2030 /*** ID3D11Asynchronous methods ***/
   2031 #define ID3D11Asynchronous_GetDataSize(This) (This)->lpVtbl->GetDataSize(This)
   2032 #else
   2033 /*** IUnknown methods ***/
   2034 static FORCEINLINE HRESULT ID3D11Asynchronous_QueryInterface(ID3D11Asynchronous* This,REFIID riid,void **ppvObject) {
   2035     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   2036 }
   2037 static FORCEINLINE ULONG ID3D11Asynchronous_AddRef(ID3D11Asynchronous* This) {
   2038     return This->lpVtbl->AddRef(This);
   2039 }
   2040 static FORCEINLINE ULONG ID3D11Asynchronous_Release(ID3D11Asynchronous* This) {
   2041     return This->lpVtbl->Release(This);
   2042 }
   2043 /*** ID3D11DeviceChild methods ***/
   2044 static FORCEINLINE void ID3D11Asynchronous_GetDevice(ID3D11Asynchronous* This,ID3D11Device **ppDevice) {
   2045     This->lpVtbl->GetDevice(This,ppDevice);
   2046 }
   2047 static FORCEINLINE HRESULT ID3D11Asynchronous_GetPrivateData(ID3D11Asynchronous* This,REFGUID guid,UINT *pDataSize,void *pData) {
   2048     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   2049 }
   2050 static FORCEINLINE HRESULT ID3D11Asynchronous_SetPrivateData(ID3D11Asynchronous* This,REFGUID guid,UINT DataSize,const void *pData) {
   2051     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   2052 }
   2053 static FORCEINLINE HRESULT ID3D11Asynchronous_SetPrivateDataInterface(ID3D11Asynchronous* This,REFGUID guid,const IUnknown *pData) {
   2054     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   2055 }
   2056 /*** ID3D11Asynchronous methods ***/
   2057 static FORCEINLINE UINT ID3D11Asynchronous_GetDataSize(ID3D11Asynchronous* This) {
   2058     return This->lpVtbl->GetDataSize(This);
   2059 }
   2060 #endif
   2061 #endif
   2062 
   2063 #endif
   2064 
   2065 UINT STDMETHODCALLTYPE ID3D11Asynchronous_GetDataSize_Proxy(
   2066     ID3D11Asynchronous* This);
   2067 void __RPC_STUB ID3D11Asynchronous_GetDataSize_Stub(
   2068     IRpcStubBuffer* This,
   2069     IRpcChannelBuffer* pRpcChannelBuffer,
   2070     PRPC_MESSAGE pRpcMessage,
   2071     DWORD* pdwStubPhase);
   2072 
   2073 #endif  /* __ID3D11Asynchronous_INTERFACE_DEFINED__ */
   2074 
   2075 /*****************************************************************************
   2076  * ID3D11Query interface
   2077  */
   2078 #ifndef __ID3D11Query_INTERFACE_DEFINED__
   2079 #define __ID3D11Query_INTERFACE_DEFINED__
   2080 
   2081 DEFINE_GUID(IID_ID3D11Query, 0xd6c00747, 0x87b7, 0x425e, 0xb8,0x4d, 0x44,0xd1,0x08,0x56,0x0a,0xfd);
   2082 #if defined(__cplusplus) && !defined(CINTERFACE)
   2083 MIDL_INTERFACE("d6c00747-87b7-425e-b84d-44d108560afd")
   2084 ID3D11Query : public ID3D11Asynchronous
   2085 {
   2086     virtual void STDMETHODCALLTYPE GetDesc(
   2087         D3D11_QUERY_DESC *pDesc) = 0;
   2088 
   2089 };
   2090 #ifdef __CRT_UUID_DECL
   2091 __CRT_UUID_DECL(ID3D11Query, 0xd6c00747, 0x87b7, 0x425e, 0xb8,0x4d, 0x44,0xd1,0x08,0x56,0x0a,0xfd)
   2092 #endif
   2093 #else
   2094 typedef struct ID3D11QueryVtbl {
   2095     BEGIN_INTERFACE
   2096 
   2097     /*** IUnknown methods ***/
   2098     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   2099         ID3D11Query* This,
   2100         REFIID riid,
   2101         void **ppvObject);
   2102 
   2103     ULONG (STDMETHODCALLTYPE *AddRef)(
   2104         ID3D11Query* This);
   2105 
   2106     ULONG (STDMETHODCALLTYPE *Release)(
   2107         ID3D11Query* This);
   2108 
   2109     /*** ID3D11DeviceChild methods ***/
   2110     void (STDMETHODCALLTYPE *GetDevice)(
   2111         ID3D11Query* This,
   2112         ID3D11Device **ppDevice);
   2113 
   2114     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   2115         ID3D11Query* This,
   2116         REFGUID guid,
   2117         UINT *pDataSize,
   2118         void *pData);
   2119 
   2120     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   2121         ID3D11Query* This,
   2122         REFGUID guid,
   2123         UINT DataSize,
   2124         const void *pData);
   2125 
   2126     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   2127         ID3D11Query* This,
   2128         REFGUID guid,
   2129         const IUnknown *pData);
   2130 
   2131     /*** ID3D11Asynchronous methods ***/
   2132     UINT (STDMETHODCALLTYPE *GetDataSize)(
   2133         ID3D11Query* This);
   2134 
   2135     /*** ID3D11Query methods ***/
   2136     void (STDMETHODCALLTYPE *GetDesc)(
   2137         ID3D11Query* This,
   2138         D3D11_QUERY_DESC *pDesc);
   2139 
   2140     END_INTERFACE
   2141 } ID3D11QueryVtbl;
   2142 interface ID3D11Query {
   2143     CONST_VTBL ID3D11QueryVtbl* lpVtbl;
   2144 };
   2145 
   2146 #ifdef COBJMACROS
   2147 #ifndef WIDL_C_INLINE_WRAPPERS
   2148 /*** IUnknown methods ***/
   2149 #define ID3D11Query_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   2150 #define ID3D11Query_AddRef(This) (This)->lpVtbl->AddRef(This)
   2151 #define ID3D11Query_Release(This) (This)->lpVtbl->Release(This)
   2152 /*** ID3D11DeviceChild methods ***/
   2153 #define ID3D11Query_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   2154 #define ID3D11Query_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   2155 #define ID3D11Query_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   2156 #define ID3D11Query_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   2157 /*** ID3D11Asynchronous methods ***/
   2158 #define ID3D11Query_GetDataSize(This) (This)->lpVtbl->GetDataSize(This)
   2159 /*** ID3D11Query methods ***/
   2160 #define ID3D11Query_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   2161 #else
   2162 /*** IUnknown methods ***/
   2163 static FORCEINLINE HRESULT ID3D11Query_QueryInterface(ID3D11Query* This,REFIID riid,void **ppvObject) {
   2164     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   2165 }
   2166 static FORCEINLINE ULONG ID3D11Query_AddRef(ID3D11Query* This) {
   2167     return This->lpVtbl->AddRef(This);
   2168 }
   2169 static FORCEINLINE ULONG ID3D11Query_Release(ID3D11Query* This) {
   2170     return This->lpVtbl->Release(This);
   2171 }
   2172 /*** ID3D11DeviceChild methods ***/
   2173 static FORCEINLINE void ID3D11Query_GetDevice(ID3D11Query* This,ID3D11Device **ppDevice) {
   2174     This->lpVtbl->GetDevice(This,ppDevice);
   2175 }
   2176 static FORCEINLINE HRESULT ID3D11Query_GetPrivateData(ID3D11Query* This,REFGUID guid,UINT *pDataSize,void *pData) {
   2177     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   2178 }
   2179 static FORCEINLINE HRESULT ID3D11Query_SetPrivateData(ID3D11Query* This,REFGUID guid,UINT DataSize,const void *pData) {
   2180     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   2181 }
   2182 static FORCEINLINE HRESULT ID3D11Query_SetPrivateDataInterface(ID3D11Query* This,REFGUID guid,const IUnknown *pData) {
   2183     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   2184 }
   2185 /*** ID3D11Asynchronous methods ***/
   2186 static FORCEINLINE UINT ID3D11Query_GetDataSize(ID3D11Query* This) {
   2187     return This->lpVtbl->GetDataSize(This);
   2188 }
   2189 /*** ID3D11Query methods ***/
   2190 static FORCEINLINE void ID3D11Query_GetDesc(ID3D11Query* This,D3D11_QUERY_DESC *pDesc) {
   2191     This->lpVtbl->GetDesc(This,pDesc);
   2192 }
   2193 #endif
   2194 #endif
   2195 
   2196 #endif
   2197 
   2198 void STDMETHODCALLTYPE ID3D11Query_GetDesc_Proxy(
   2199     ID3D11Query* This,
   2200     D3D11_QUERY_DESC *pDesc);
   2201 void __RPC_STUB ID3D11Query_GetDesc_Stub(
   2202     IRpcStubBuffer* This,
   2203     IRpcChannelBuffer* pRpcChannelBuffer,
   2204     PRPC_MESSAGE pRpcMessage,
   2205     DWORD* pdwStubPhase);
   2206 
   2207 #endif  /* __ID3D11Query_INTERFACE_DEFINED__ */
   2208 
   2209 /*****************************************************************************
   2210  * ID3D11Resource interface
   2211  */
   2212 #ifndef __ID3D11Resource_INTERFACE_DEFINED__
   2213 #define __ID3D11Resource_INTERFACE_DEFINED__
   2214 
   2215 DEFINE_GUID(IID_ID3D11Resource, 0xdc8e63f3, 0xd12b, 0x4952, 0xb4,0x7b, 0x5e,0x45,0x02,0x6a,0x86,0x2d);
   2216 #if defined(__cplusplus) && !defined(CINTERFACE)
   2217 MIDL_INTERFACE("dc8e63f3-d12b-4952-b47b-5e45026a862d")
   2218 ID3D11Resource : public ID3D11DeviceChild
   2219 {
   2220     virtual void STDMETHODCALLTYPE GetType(
   2221         D3D11_RESOURCE_DIMENSION *pResourceDimension) = 0;
   2222 
   2223     virtual void STDMETHODCALLTYPE SetEvictionPriority(
   2224         UINT EvictionPriority) = 0;
   2225 
   2226     virtual UINT STDMETHODCALLTYPE GetEvictionPriority(
   2227         ) = 0;
   2228 
   2229 };
   2230 #ifdef __CRT_UUID_DECL
   2231 __CRT_UUID_DECL(ID3D11Resource, 0xdc8e63f3, 0xd12b, 0x4952, 0xb4,0x7b, 0x5e,0x45,0x02,0x6a,0x86,0x2d)
   2232 #endif
   2233 #else
   2234 typedef struct ID3D11ResourceVtbl {
   2235     BEGIN_INTERFACE
   2236 
   2237     /*** IUnknown methods ***/
   2238     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   2239         ID3D11Resource* This,
   2240         REFIID riid,
   2241         void **ppvObject);
   2242 
   2243     ULONG (STDMETHODCALLTYPE *AddRef)(
   2244         ID3D11Resource* This);
   2245 
   2246     ULONG (STDMETHODCALLTYPE *Release)(
   2247         ID3D11Resource* This);
   2248 
   2249     /*** ID3D11DeviceChild methods ***/
   2250     void (STDMETHODCALLTYPE *GetDevice)(
   2251         ID3D11Resource* This,
   2252         ID3D11Device **ppDevice);
   2253 
   2254     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   2255         ID3D11Resource* This,
   2256         REFGUID guid,
   2257         UINT *pDataSize,
   2258         void *pData);
   2259 
   2260     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   2261         ID3D11Resource* This,
   2262         REFGUID guid,
   2263         UINT DataSize,
   2264         const void *pData);
   2265 
   2266     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   2267         ID3D11Resource* This,
   2268         REFGUID guid,
   2269         const IUnknown *pData);
   2270 
   2271     /*** ID3D11Resource methods ***/
   2272     void (STDMETHODCALLTYPE *GetType)(
   2273         ID3D11Resource* This,
   2274         D3D11_RESOURCE_DIMENSION *pResourceDimension);
   2275 
   2276     void (STDMETHODCALLTYPE *SetEvictionPriority)(
   2277         ID3D11Resource* This,
   2278         UINT EvictionPriority);
   2279 
   2280     UINT (STDMETHODCALLTYPE *GetEvictionPriority)(
   2281         ID3D11Resource* This);
   2282 
   2283     END_INTERFACE
   2284 } ID3D11ResourceVtbl;
   2285 interface ID3D11Resource {
   2286     CONST_VTBL ID3D11ResourceVtbl* lpVtbl;
   2287 };
   2288 
   2289 #ifdef COBJMACROS
   2290 #ifndef WIDL_C_INLINE_WRAPPERS
   2291 /*** IUnknown methods ***/
   2292 #define ID3D11Resource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   2293 #define ID3D11Resource_AddRef(This) (This)->lpVtbl->AddRef(This)
   2294 #define ID3D11Resource_Release(This) (This)->lpVtbl->Release(This)
   2295 /*** ID3D11DeviceChild methods ***/
   2296 #define ID3D11Resource_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   2297 #define ID3D11Resource_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   2298 #define ID3D11Resource_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   2299 #define ID3D11Resource_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   2300 /*** ID3D11Resource methods ***/
   2301 #define ID3D11Resource_GetType(This,pResourceDimension) (This)->lpVtbl->GetType(This,pResourceDimension)
   2302 #define ID3D11Resource_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority)
   2303 #define ID3D11Resource_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This)
   2304 #else
   2305 /*** IUnknown methods ***/
   2306 static FORCEINLINE HRESULT ID3D11Resource_QueryInterface(ID3D11Resource* This,REFIID riid,void **ppvObject) {
   2307     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   2308 }
   2309 static FORCEINLINE ULONG ID3D11Resource_AddRef(ID3D11Resource* This) {
   2310     return This->lpVtbl->AddRef(This);
   2311 }
   2312 static FORCEINLINE ULONG ID3D11Resource_Release(ID3D11Resource* This) {
   2313     return This->lpVtbl->Release(This);
   2314 }
   2315 /*** ID3D11DeviceChild methods ***/
   2316 static FORCEINLINE void ID3D11Resource_GetDevice(ID3D11Resource* This,ID3D11Device **ppDevice) {
   2317     This->lpVtbl->GetDevice(This,ppDevice);
   2318 }
   2319 static FORCEINLINE HRESULT ID3D11Resource_GetPrivateData(ID3D11Resource* This,REFGUID guid,UINT *pDataSize,void *pData) {
   2320     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   2321 }
   2322 static FORCEINLINE HRESULT ID3D11Resource_SetPrivateData(ID3D11Resource* This,REFGUID guid,UINT DataSize,const void *pData) {
   2323     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   2324 }
   2325 static FORCEINLINE HRESULT ID3D11Resource_SetPrivateDataInterface(ID3D11Resource* This,REFGUID guid,const IUnknown *pData) {
   2326     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   2327 }
   2328 /*** ID3D11Resource methods ***/
   2329 static FORCEINLINE void ID3D11Resource_GetType(ID3D11Resource* This,D3D11_RESOURCE_DIMENSION *pResourceDimension) {
   2330     This->lpVtbl->GetType(This,pResourceDimension);
   2331 }
   2332 static FORCEINLINE void ID3D11Resource_SetEvictionPriority(ID3D11Resource* This,UINT EvictionPriority) {
   2333     This->lpVtbl->SetEvictionPriority(This,EvictionPriority);
   2334 }
   2335 static FORCEINLINE UINT ID3D11Resource_GetEvictionPriority(ID3D11Resource* This) {
   2336     return This->lpVtbl->GetEvictionPriority(This);
   2337 }
   2338 #endif
   2339 #endif
   2340 
   2341 #endif
   2342 
   2343 void STDMETHODCALLTYPE ID3D11Resource_GetType_Proxy(
   2344     ID3D11Resource* This,
   2345     D3D11_RESOURCE_DIMENSION *pResourceDimension);
   2346 void __RPC_STUB ID3D11Resource_GetType_Stub(
   2347     IRpcStubBuffer* This,
   2348     IRpcChannelBuffer* pRpcChannelBuffer,
   2349     PRPC_MESSAGE pRpcMessage,
   2350     DWORD* pdwStubPhase);
   2351 void STDMETHODCALLTYPE ID3D11Resource_SetEvictionPriority_Proxy(
   2352     ID3D11Resource* This,
   2353     UINT EvictionPriority);
   2354 void __RPC_STUB ID3D11Resource_SetEvictionPriority_Stub(
   2355     IRpcStubBuffer* This,
   2356     IRpcChannelBuffer* pRpcChannelBuffer,
   2357     PRPC_MESSAGE pRpcMessage,
   2358     DWORD* pdwStubPhase);
   2359 UINT STDMETHODCALLTYPE ID3D11Resource_GetEvictionPriority_Proxy(
   2360     ID3D11Resource* This);
   2361 void __RPC_STUB ID3D11Resource_GetEvictionPriority_Stub(
   2362     IRpcStubBuffer* This,
   2363     IRpcChannelBuffer* pRpcChannelBuffer,
   2364     PRPC_MESSAGE pRpcMessage,
   2365     DWORD* pdwStubPhase);
   2366 
   2367 #endif  /* __ID3D11Resource_INTERFACE_DEFINED__ */
   2368 
   2369 /*****************************************************************************
   2370  * ID3D11View interface
   2371  */
   2372 #ifndef __ID3D11View_INTERFACE_DEFINED__
   2373 #define __ID3D11View_INTERFACE_DEFINED__
   2374 
   2375 DEFINE_GUID(IID_ID3D11View, 0x839d1216, 0xbb2e, 0x412b, 0xb7,0xf4, 0xa9,0xdb,0xeb,0xe0,0x8e,0xd1);
   2376 #if defined(__cplusplus) && !defined(CINTERFACE)
   2377 MIDL_INTERFACE("839d1216-bb2e-412b-b7f4-a9dbebe08ed1")
   2378 ID3D11View : public ID3D11DeviceChild
   2379 {
   2380     virtual void STDMETHODCALLTYPE GetResource(
   2381         ID3D11Resource **ppResource) = 0;
   2382 
   2383 };
   2384 #ifdef __CRT_UUID_DECL
   2385 __CRT_UUID_DECL(ID3D11View, 0x839d1216, 0xbb2e, 0x412b, 0xb7,0xf4, 0xa9,0xdb,0xeb,0xe0,0x8e,0xd1)
   2386 #endif
   2387 #else
   2388 typedef struct ID3D11ViewVtbl {
   2389     BEGIN_INTERFACE
   2390 
   2391     /*** IUnknown methods ***/
   2392     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   2393         ID3D11View* This,
   2394         REFIID riid,
   2395         void **ppvObject);
   2396 
   2397     ULONG (STDMETHODCALLTYPE *AddRef)(
   2398         ID3D11View* This);
   2399 
   2400     ULONG (STDMETHODCALLTYPE *Release)(
   2401         ID3D11View* This);
   2402 
   2403     /*** ID3D11DeviceChild methods ***/
   2404     void (STDMETHODCALLTYPE *GetDevice)(
   2405         ID3D11View* This,
   2406         ID3D11Device **ppDevice);
   2407 
   2408     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   2409         ID3D11View* This,
   2410         REFGUID guid,
   2411         UINT *pDataSize,
   2412         void *pData);
   2413 
   2414     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   2415         ID3D11View* This,
   2416         REFGUID guid,
   2417         UINT DataSize,
   2418         const void *pData);
   2419 
   2420     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   2421         ID3D11View* This,
   2422         REFGUID guid,
   2423         const IUnknown *pData);
   2424 
   2425     /*** ID3D11View methods ***/
   2426     void (STDMETHODCALLTYPE *GetResource)(
   2427         ID3D11View* This,
   2428         ID3D11Resource **ppResource);
   2429 
   2430     END_INTERFACE
   2431 } ID3D11ViewVtbl;
   2432 interface ID3D11View {
   2433     CONST_VTBL ID3D11ViewVtbl* lpVtbl;
   2434 };
   2435 
   2436 #ifdef COBJMACROS
   2437 #ifndef WIDL_C_INLINE_WRAPPERS
   2438 /*** IUnknown methods ***/
   2439 #define ID3D11View_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   2440 #define ID3D11View_AddRef(This) (This)->lpVtbl->AddRef(This)
   2441 #define ID3D11View_Release(This) (This)->lpVtbl->Release(This)
   2442 /*** ID3D11DeviceChild methods ***/
   2443 #define ID3D11View_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   2444 #define ID3D11View_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   2445 #define ID3D11View_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   2446 #define ID3D11View_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   2447 /*** ID3D11View methods ***/
   2448 #define ID3D11View_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource)
   2449 #else
   2450 /*** IUnknown methods ***/
   2451 static FORCEINLINE HRESULT ID3D11View_QueryInterface(ID3D11View* This,REFIID riid,void **ppvObject) {
   2452     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   2453 }
   2454 static FORCEINLINE ULONG ID3D11View_AddRef(ID3D11View* This) {
   2455     return This->lpVtbl->AddRef(This);
   2456 }
   2457 static FORCEINLINE ULONG ID3D11View_Release(ID3D11View* This) {
   2458     return This->lpVtbl->Release(This);
   2459 }
   2460 /*** ID3D11DeviceChild methods ***/
   2461 static FORCEINLINE void ID3D11View_GetDevice(ID3D11View* This,ID3D11Device **ppDevice) {
   2462     This->lpVtbl->GetDevice(This,ppDevice);
   2463 }
   2464 static FORCEINLINE HRESULT ID3D11View_GetPrivateData(ID3D11View* This,REFGUID guid,UINT *pDataSize,void *pData) {
   2465     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   2466 }
   2467 static FORCEINLINE HRESULT ID3D11View_SetPrivateData(ID3D11View* This,REFGUID guid,UINT DataSize,const void *pData) {
   2468     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   2469 }
   2470 static FORCEINLINE HRESULT ID3D11View_SetPrivateDataInterface(ID3D11View* This,REFGUID guid,const IUnknown *pData) {
   2471     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   2472 }
   2473 /*** ID3D11View methods ***/
   2474 static FORCEINLINE void ID3D11View_GetResource(ID3D11View* This,ID3D11Resource **ppResource) {
   2475     This->lpVtbl->GetResource(This,ppResource);
   2476 }
   2477 #endif
   2478 #endif
   2479 
   2480 #endif
   2481 
   2482 void STDMETHODCALLTYPE ID3D11View_GetResource_Proxy(
   2483     ID3D11View* This,
   2484     ID3D11Resource **ppResource);
   2485 void __RPC_STUB ID3D11View_GetResource_Stub(
   2486     IRpcStubBuffer* This,
   2487     IRpcChannelBuffer* pRpcChannelBuffer,
   2488     PRPC_MESSAGE pRpcMessage,
   2489     DWORD* pdwStubPhase);
   2490 
   2491 #endif  /* __ID3D11View_INTERFACE_DEFINED__ */
   2492 
   2493 /*****************************************************************************
   2494  * ID3D11BlendState interface
   2495  */
   2496 #ifndef __ID3D11BlendState_INTERFACE_DEFINED__
   2497 #define __ID3D11BlendState_INTERFACE_DEFINED__
   2498 
   2499 DEFINE_GUID(IID_ID3D11BlendState, 0x75b68faa, 0x347d, 0x4159, 0x8f,0x45, 0xa0,0x64,0x0f,0x01,0xcd,0x9a);
   2500 #if defined(__cplusplus) && !defined(CINTERFACE)
   2501 MIDL_INTERFACE("75b68faa-347d-4159-8f45-a0640f01cd9a")
   2502 ID3D11BlendState : public ID3D11DeviceChild
   2503 {
   2504     virtual void STDMETHODCALLTYPE GetDesc(
   2505         D3D11_BLEND_DESC *pDesc) = 0;
   2506 
   2507 };
   2508 #ifdef __CRT_UUID_DECL
   2509 __CRT_UUID_DECL(ID3D11BlendState, 0x75b68faa, 0x347d, 0x4159, 0x8f,0x45, 0xa0,0x64,0x0f,0x01,0xcd,0x9a)
   2510 #endif
   2511 #else
   2512 typedef struct ID3D11BlendStateVtbl {
   2513     BEGIN_INTERFACE
   2514 
   2515     /*** IUnknown methods ***/
   2516     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   2517         ID3D11BlendState* This,
   2518         REFIID riid,
   2519         void **ppvObject);
   2520 
   2521     ULONG (STDMETHODCALLTYPE *AddRef)(
   2522         ID3D11BlendState* This);
   2523 
   2524     ULONG (STDMETHODCALLTYPE *Release)(
   2525         ID3D11BlendState* This);
   2526 
   2527     /*** ID3D11DeviceChild methods ***/
   2528     void (STDMETHODCALLTYPE *GetDevice)(
   2529         ID3D11BlendState* This,
   2530         ID3D11Device **ppDevice);
   2531 
   2532     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   2533         ID3D11BlendState* This,
   2534         REFGUID guid,
   2535         UINT *pDataSize,
   2536         void *pData);
   2537 
   2538     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   2539         ID3D11BlendState* This,
   2540         REFGUID guid,
   2541         UINT DataSize,
   2542         const void *pData);
   2543 
   2544     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   2545         ID3D11BlendState* This,
   2546         REFGUID guid,
   2547         const IUnknown *pData);
   2548 
   2549     /*** ID3D11BlendState methods ***/
   2550     void (STDMETHODCALLTYPE *GetDesc)(
   2551         ID3D11BlendState* This,
   2552         D3D11_BLEND_DESC *pDesc);
   2553 
   2554     END_INTERFACE
   2555 } ID3D11BlendStateVtbl;
   2556 interface ID3D11BlendState {
   2557     CONST_VTBL ID3D11BlendStateVtbl* lpVtbl;
   2558 };
   2559 
   2560 #ifdef COBJMACROS
   2561 #ifndef WIDL_C_INLINE_WRAPPERS
   2562 /*** IUnknown methods ***/
   2563 #define ID3D11BlendState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   2564 #define ID3D11BlendState_AddRef(This) (This)->lpVtbl->AddRef(This)
   2565 #define ID3D11BlendState_Release(This) (This)->lpVtbl->Release(This)
   2566 /*** ID3D11DeviceChild methods ***/
   2567 #define ID3D11BlendState_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   2568 #define ID3D11BlendState_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   2569 #define ID3D11BlendState_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   2570 #define ID3D11BlendState_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   2571 /*** ID3D11BlendState methods ***/
   2572 #define ID3D11BlendState_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   2573 #else
   2574 /*** IUnknown methods ***/
   2575 static FORCEINLINE HRESULT ID3D11BlendState_QueryInterface(ID3D11BlendState* This,REFIID riid,void **ppvObject) {
   2576     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   2577 }
   2578 static FORCEINLINE ULONG ID3D11BlendState_AddRef(ID3D11BlendState* This) {
   2579     return This->lpVtbl->AddRef(This);
   2580 }
   2581 static FORCEINLINE ULONG ID3D11BlendState_Release(ID3D11BlendState* This) {
   2582     return This->lpVtbl->Release(This);
   2583 }
   2584 /*** ID3D11DeviceChild methods ***/
   2585 static FORCEINLINE void ID3D11BlendState_GetDevice(ID3D11BlendState* This,ID3D11Device **ppDevice) {
   2586     This->lpVtbl->GetDevice(This,ppDevice);
   2587 }
   2588 static FORCEINLINE HRESULT ID3D11BlendState_GetPrivateData(ID3D11BlendState* This,REFGUID guid,UINT *pDataSize,void *pData) {
   2589     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   2590 }
   2591 static FORCEINLINE HRESULT ID3D11BlendState_SetPrivateData(ID3D11BlendState* This,REFGUID guid,UINT DataSize,const void *pData) {
   2592     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   2593 }
   2594 static FORCEINLINE HRESULT ID3D11BlendState_SetPrivateDataInterface(ID3D11BlendState* This,REFGUID guid,const IUnknown *pData) {
   2595     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   2596 }
   2597 /*** ID3D11BlendState methods ***/
   2598 static FORCEINLINE void ID3D11BlendState_GetDesc(ID3D11BlendState* This,D3D11_BLEND_DESC *pDesc) {
   2599     This->lpVtbl->GetDesc(This,pDesc);
   2600 }
   2601 #endif
   2602 #endif
   2603 
   2604 #endif
   2605 
   2606 void STDMETHODCALLTYPE ID3D11BlendState_GetDesc_Proxy(
   2607     ID3D11BlendState* This,
   2608     D3D11_BLEND_DESC *pDesc);
   2609 void __RPC_STUB ID3D11BlendState_GetDesc_Stub(
   2610     IRpcStubBuffer* This,
   2611     IRpcChannelBuffer* pRpcChannelBuffer,
   2612     PRPC_MESSAGE pRpcMessage,
   2613     DWORD* pdwStubPhase);
   2614 
   2615 #endif  /* __ID3D11BlendState_INTERFACE_DEFINED__ */
   2616 
   2617 /*****************************************************************************
   2618  * ID3D11Buffer interface
   2619  */
   2620 #ifndef __ID3D11Buffer_INTERFACE_DEFINED__
   2621 #define __ID3D11Buffer_INTERFACE_DEFINED__
   2622 
   2623 DEFINE_GUID(IID_ID3D11Buffer, 0x48570b85, 0xd1ee, 0x4fcd, 0xa2,0x50, 0xeb,0x35,0x07,0x22,0xb0,0x37);
   2624 #if defined(__cplusplus) && !defined(CINTERFACE)
   2625 MIDL_INTERFACE("48570b85-d1ee-4fcd-a250-eb350722b037")
   2626 ID3D11Buffer : public ID3D11Resource
   2627 {
   2628     virtual void STDMETHODCALLTYPE GetDesc(
   2629         D3D11_BUFFER_DESC *pDesc) = 0;
   2630 
   2631 };
   2632 #ifdef __CRT_UUID_DECL
   2633 __CRT_UUID_DECL(ID3D11Buffer, 0x48570b85, 0xd1ee, 0x4fcd, 0xa2,0x50, 0xeb,0x35,0x07,0x22,0xb0,0x37)
   2634 #endif
   2635 #else
   2636 typedef struct ID3D11BufferVtbl {
   2637     BEGIN_INTERFACE
   2638 
   2639     /*** IUnknown methods ***/
   2640     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   2641         ID3D11Buffer* This,
   2642         REFIID riid,
   2643         void **ppvObject);
   2644 
   2645     ULONG (STDMETHODCALLTYPE *AddRef)(
   2646         ID3D11Buffer* This);
   2647 
   2648     ULONG (STDMETHODCALLTYPE *Release)(
   2649         ID3D11Buffer* This);
   2650 
   2651     /*** ID3D11DeviceChild methods ***/
   2652     void (STDMETHODCALLTYPE *GetDevice)(
   2653         ID3D11Buffer* This,
   2654         ID3D11Device **ppDevice);
   2655 
   2656     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   2657         ID3D11Buffer* This,
   2658         REFGUID guid,
   2659         UINT *pDataSize,
   2660         void *pData);
   2661 
   2662     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   2663         ID3D11Buffer* This,
   2664         REFGUID guid,
   2665         UINT DataSize,
   2666         const void *pData);
   2667 
   2668     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   2669         ID3D11Buffer* This,
   2670         REFGUID guid,
   2671         const IUnknown *pData);
   2672 
   2673     /*** ID3D11Resource methods ***/
   2674     void (STDMETHODCALLTYPE *GetType)(
   2675         ID3D11Buffer* This,
   2676         D3D11_RESOURCE_DIMENSION *pResourceDimension);
   2677 
   2678     void (STDMETHODCALLTYPE *SetEvictionPriority)(
   2679         ID3D11Buffer* This,
   2680         UINT EvictionPriority);
   2681 
   2682     UINT (STDMETHODCALLTYPE *GetEvictionPriority)(
   2683         ID3D11Buffer* This);
   2684 
   2685     /*** ID3D11Buffer methods ***/
   2686     void (STDMETHODCALLTYPE *GetDesc)(
   2687         ID3D11Buffer* This,
   2688         D3D11_BUFFER_DESC *pDesc);
   2689 
   2690     END_INTERFACE
   2691 } ID3D11BufferVtbl;
   2692 interface ID3D11Buffer {
   2693     CONST_VTBL ID3D11BufferVtbl* lpVtbl;
   2694 };
   2695 
   2696 #ifdef COBJMACROS
   2697 #ifndef WIDL_C_INLINE_WRAPPERS
   2698 /*** IUnknown methods ***/
   2699 #define ID3D11Buffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   2700 #define ID3D11Buffer_AddRef(This) (This)->lpVtbl->AddRef(This)
   2701 #define ID3D11Buffer_Release(This) (This)->lpVtbl->Release(This)
   2702 /*** ID3D11DeviceChild methods ***/
   2703 #define ID3D11Buffer_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   2704 #define ID3D11Buffer_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   2705 #define ID3D11Buffer_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   2706 #define ID3D11Buffer_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   2707 /*** ID3D11Resource methods ***/
   2708 #define ID3D11Buffer_GetType(This,pResourceDimension) (This)->lpVtbl->GetType(This,pResourceDimension)
   2709 #define ID3D11Buffer_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority)
   2710 #define ID3D11Buffer_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This)
   2711 /*** ID3D11Buffer methods ***/
   2712 #define ID3D11Buffer_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   2713 #else
   2714 /*** IUnknown methods ***/
   2715 static FORCEINLINE HRESULT ID3D11Buffer_QueryInterface(ID3D11Buffer* This,REFIID riid,void **ppvObject) {
   2716     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   2717 }
   2718 static FORCEINLINE ULONG ID3D11Buffer_AddRef(ID3D11Buffer* This) {
   2719     return This->lpVtbl->AddRef(This);
   2720 }
   2721 static FORCEINLINE ULONG ID3D11Buffer_Release(ID3D11Buffer* This) {
   2722     return This->lpVtbl->Release(This);
   2723 }
   2724 /*** ID3D11DeviceChild methods ***/
   2725 static FORCEINLINE void ID3D11Buffer_GetDevice(ID3D11Buffer* This,ID3D11Device **ppDevice) {
   2726     This->lpVtbl->GetDevice(This,ppDevice);
   2727 }
   2728 static FORCEINLINE HRESULT ID3D11Buffer_GetPrivateData(ID3D11Buffer* This,REFGUID guid,UINT *pDataSize,void *pData) {
   2729     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   2730 }
   2731 static FORCEINLINE HRESULT ID3D11Buffer_SetPrivateData(ID3D11Buffer* This,REFGUID guid,UINT DataSize,const void *pData) {
   2732     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   2733 }
   2734 static FORCEINLINE HRESULT ID3D11Buffer_SetPrivateDataInterface(ID3D11Buffer* This,REFGUID guid,const IUnknown *pData) {
   2735     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   2736 }
   2737 /*** ID3D11Resource methods ***/
   2738 static FORCEINLINE void ID3D11Buffer_GetType(ID3D11Buffer* This,D3D11_RESOURCE_DIMENSION *pResourceDimension) {
   2739     This->lpVtbl->GetType(This,pResourceDimension);
   2740 }
   2741 static FORCEINLINE void ID3D11Buffer_SetEvictionPriority(ID3D11Buffer* This,UINT EvictionPriority) {
   2742     This->lpVtbl->SetEvictionPriority(This,EvictionPriority);
   2743 }
   2744 static FORCEINLINE UINT ID3D11Buffer_GetEvictionPriority(ID3D11Buffer* This) {
   2745     return This->lpVtbl->GetEvictionPriority(This);
   2746 }
   2747 /*** ID3D11Buffer methods ***/
   2748 static FORCEINLINE void ID3D11Buffer_GetDesc(ID3D11Buffer* This,D3D11_BUFFER_DESC *pDesc) {
   2749     This->lpVtbl->GetDesc(This,pDesc);
   2750 }
   2751 #endif
   2752 #endif
   2753 
   2754 #endif
   2755 
   2756 void STDMETHODCALLTYPE ID3D11Buffer_GetDesc_Proxy(
   2757     ID3D11Buffer* This,
   2758     D3D11_BUFFER_DESC *pDesc);
   2759 void __RPC_STUB ID3D11Buffer_GetDesc_Stub(
   2760     IRpcStubBuffer* This,
   2761     IRpcChannelBuffer* pRpcChannelBuffer,
   2762     PRPC_MESSAGE pRpcMessage,
   2763     DWORD* pdwStubPhase);
   2764 
   2765 #endif  /* __ID3D11Buffer_INTERFACE_DEFINED__ */
   2766 
   2767 /*****************************************************************************
   2768  * ID3D11ClassInstance interface
   2769  */
   2770 #ifndef __ID3D11ClassInstance_INTERFACE_DEFINED__
   2771 #define __ID3D11ClassInstance_INTERFACE_DEFINED__
   2772 
   2773 DEFINE_GUID(IID_ID3D11ClassInstance, 0xa6cd7faa, 0xb0b7, 0x4a2f, 0x94,0x36, 0x86,0x62,0xa6,0x57,0x97,0xcb);
   2774 #if defined(__cplusplus) && !defined(CINTERFACE)
   2775 MIDL_INTERFACE("a6cd7faa-b0b7-4a2f-9436-8662a65797cb")
   2776 ID3D11ClassInstance : public ID3D11DeviceChild
   2777 {
   2778     virtual void STDMETHODCALLTYPE GetClassLinkage(
   2779         ID3D11ClassLinkage **ppLinkage) = 0;
   2780 
   2781     virtual void STDMETHODCALLTYPE GetDesc(
   2782         D3D11_CLASS_INSTANCE_DESC *pDesc) = 0;
   2783 
   2784     virtual void STDMETHODCALLTYPE GetInstanceName(
   2785         LPSTR pInstanceName,
   2786         SIZE_T *pBufferLength) = 0;
   2787 
   2788     virtual void STDMETHODCALLTYPE GetTypeName(
   2789         LPSTR pTypeName,
   2790         SIZE_T *pBufferLength) = 0;
   2791 
   2792 };
   2793 #ifdef __CRT_UUID_DECL
   2794 __CRT_UUID_DECL(ID3D11ClassInstance, 0xa6cd7faa, 0xb0b7, 0x4a2f, 0x94,0x36, 0x86,0x62,0xa6,0x57,0x97,0xcb)
   2795 #endif
   2796 #else
   2797 typedef struct ID3D11ClassInstanceVtbl {
   2798     BEGIN_INTERFACE
   2799 
   2800     /*** IUnknown methods ***/
   2801     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   2802         ID3D11ClassInstance* This,
   2803         REFIID riid,
   2804         void **ppvObject);
   2805 
   2806     ULONG (STDMETHODCALLTYPE *AddRef)(
   2807         ID3D11ClassInstance* This);
   2808 
   2809     ULONG (STDMETHODCALLTYPE *Release)(
   2810         ID3D11ClassInstance* This);
   2811 
   2812     /*** ID3D11DeviceChild methods ***/
   2813     void (STDMETHODCALLTYPE *GetDevice)(
   2814         ID3D11ClassInstance* This,
   2815         ID3D11Device **ppDevice);
   2816 
   2817     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   2818         ID3D11ClassInstance* This,
   2819         REFGUID guid,
   2820         UINT *pDataSize,
   2821         void *pData);
   2822 
   2823     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   2824         ID3D11ClassInstance* This,
   2825         REFGUID guid,
   2826         UINT DataSize,
   2827         const void *pData);
   2828 
   2829     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   2830         ID3D11ClassInstance* This,
   2831         REFGUID guid,
   2832         const IUnknown *pData);
   2833 
   2834     /*** ID3D11ClassInstance methods ***/
   2835     void (STDMETHODCALLTYPE *GetClassLinkage)(
   2836         ID3D11ClassInstance* This,
   2837         ID3D11ClassLinkage **ppLinkage);
   2838 
   2839     void (STDMETHODCALLTYPE *GetDesc)(
   2840         ID3D11ClassInstance* This,
   2841         D3D11_CLASS_INSTANCE_DESC *pDesc);
   2842 
   2843     void (STDMETHODCALLTYPE *GetInstanceName)(
   2844         ID3D11ClassInstance* This,
   2845         LPSTR pInstanceName,
   2846         SIZE_T *pBufferLength);
   2847 
   2848     void (STDMETHODCALLTYPE *GetTypeName)(
   2849         ID3D11ClassInstance* This,
   2850         LPSTR pTypeName,
   2851         SIZE_T *pBufferLength);
   2852 
   2853     END_INTERFACE
   2854 } ID3D11ClassInstanceVtbl;
   2855 interface ID3D11ClassInstance {
   2856     CONST_VTBL ID3D11ClassInstanceVtbl* lpVtbl;
   2857 };
   2858 
   2859 #ifdef COBJMACROS
   2860 #ifndef WIDL_C_INLINE_WRAPPERS
   2861 /*** IUnknown methods ***/
   2862 #define ID3D11ClassInstance_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   2863 #define ID3D11ClassInstance_AddRef(This) (This)->lpVtbl->AddRef(This)
   2864 #define ID3D11ClassInstance_Release(This) (This)->lpVtbl->Release(This)
   2865 /*** ID3D11DeviceChild methods ***/
   2866 #define ID3D11ClassInstance_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   2867 #define ID3D11ClassInstance_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   2868 #define ID3D11ClassInstance_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   2869 #define ID3D11ClassInstance_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   2870 /*** ID3D11ClassInstance methods ***/
   2871 #define ID3D11ClassInstance_GetClassLinkage(This,ppLinkage) (This)->lpVtbl->GetClassLinkage(This,ppLinkage)
   2872 #define ID3D11ClassInstance_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   2873 #define ID3D11ClassInstance_GetInstanceName(This,pInstanceName,pBufferLength) (This)->lpVtbl->GetInstanceName(This,pInstanceName,pBufferLength)
   2874 #define ID3D11ClassInstance_GetTypeName(This,pTypeName,pBufferLength) (This)->lpVtbl->GetTypeName(This,pTypeName,pBufferLength)
   2875 #else
   2876 /*** IUnknown methods ***/
   2877 static FORCEINLINE HRESULT ID3D11ClassInstance_QueryInterface(ID3D11ClassInstance* This,REFIID riid,void **ppvObject) {
   2878     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   2879 }
   2880 static FORCEINLINE ULONG ID3D11ClassInstance_AddRef(ID3D11ClassInstance* This) {
   2881     return This->lpVtbl->AddRef(This);
   2882 }
   2883 static FORCEINLINE ULONG ID3D11ClassInstance_Release(ID3D11ClassInstance* This) {
   2884     return This->lpVtbl->Release(This);
   2885 }
   2886 /*** ID3D11DeviceChild methods ***/
   2887 static FORCEINLINE void ID3D11ClassInstance_GetDevice(ID3D11ClassInstance* This,ID3D11Device **ppDevice) {
   2888     This->lpVtbl->GetDevice(This,ppDevice);
   2889 }
   2890 static FORCEINLINE HRESULT ID3D11ClassInstance_GetPrivateData(ID3D11ClassInstance* This,REFGUID guid,UINT *pDataSize,void *pData) {
   2891     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   2892 }
   2893 static FORCEINLINE HRESULT ID3D11ClassInstance_SetPrivateData(ID3D11ClassInstance* This,REFGUID guid,UINT DataSize,const void *pData) {
   2894     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   2895 }
   2896 static FORCEINLINE HRESULT ID3D11ClassInstance_SetPrivateDataInterface(ID3D11ClassInstance* This,REFGUID guid,const IUnknown *pData) {
   2897     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   2898 }
   2899 /*** ID3D11ClassInstance methods ***/
   2900 static FORCEINLINE void ID3D11ClassInstance_GetClassLinkage(ID3D11ClassInstance* This,ID3D11ClassLinkage **ppLinkage) {
   2901     This->lpVtbl->GetClassLinkage(This,ppLinkage);
   2902 }
   2903 static FORCEINLINE void ID3D11ClassInstance_GetDesc(ID3D11ClassInstance* This,D3D11_CLASS_INSTANCE_DESC *pDesc) {
   2904     This->lpVtbl->GetDesc(This,pDesc);
   2905 }
   2906 static FORCEINLINE void ID3D11ClassInstance_GetInstanceName(ID3D11ClassInstance* This,LPSTR pInstanceName,SIZE_T *pBufferLength) {
   2907     This->lpVtbl->GetInstanceName(This,pInstanceName,pBufferLength);
   2908 }
   2909 static FORCEINLINE void ID3D11ClassInstance_GetTypeName(ID3D11ClassInstance* This,LPSTR pTypeName,SIZE_T *pBufferLength) {
   2910     This->lpVtbl->GetTypeName(This,pTypeName,pBufferLength);
   2911 }
   2912 #endif
   2913 #endif
   2914 
   2915 #endif
   2916 
   2917 void STDMETHODCALLTYPE ID3D11ClassInstance_GetClassLinkage_Proxy(
   2918     ID3D11ClassInstance* This,
   2919     ID3D11ClassLinkage **ppLinkage);
   2920 void __RPC_STUB ID3D11ClassInstance_GetClassLinkage_Stub(
   2921     IRpcStubBuffer* This,
   2922     IRpcChannelBuffer* pRpcChannelBuffer,
   2923     PRPC_MESSAGE pRpcMessage,
   2924     DWORD* pdwStubPhase);
   2925 void STDMETHODCALLTYPE ID3D11ClassInstance_GetDesc_Proxy(
   2926     ID3D11ClassInstance* This,
   2927     D3D11_CLASS_INSTANCE_DESC *pDesc);
   2928 void __RPC_STUB ID3D11ClassInstance_GetDesc_Stub(
   2929     IRpcStubBuffer* This,
   2930     IRpcChannelBuffer* pRpcChannelBuffer,
   2931     PRPC_MESSAGE pRpcMessage,
   2932     DWORD* pdwStubPhase);
   2933 void STDMETHODCALLTYPE ID3D11ClassInstance_GetInstanceName_Proxy(
   2934     ID3D11ClassInstance* This,
   2935     LPSTR pInstanceName,
   2936     SIZE_T *pBufferLength);
   2937 void __RPC_STUB ID3D11ClassInstance_GetInstanceName_Stub(
   2938     IRpcStubBuffer* This,
   2939     IRpcChannelBuffer* pRpcChannelBuffer,
   2940     PRPC_MESSAGE pRpcMessage,
   2941     DWORD* pdwStubPhase);
   2942 void STDMETHODCALLTYPE ID3D11ClassInstance_GetTypeName_Proxy(
   2943     ID3D11ClassInstance* This,
   2944     LPSTR pTypeName,
   2945     SIZE_T *pBufferLength);
   2946 void __RPC_STUB ID3D11ClassInstance_GetTypeName_Stub(
   2947     IRpcStubBuffer* This,
   2948     IRpcChannelBuffer* pRpcChannelBuffer,
   2949     PRPC_MESSAGE pRpcMessage,
   2950     DWORD* pdwStubPhase);
   2951 
   2952 #endif  /* __ID3D11ClassInstance_INTERFACE_DEFINED__ */
   2953 
   2954 /*****************************************************************************
   2955  * ID3D11ClassLinkage interface
   2956  */
   2957 #ifndef __ID3D11ClassLinkage_INTERFACE_DEFINED__
   2958 #define __ID3D11ClassLinkage_INTERFACE_DEFINED__
   2959 
   2960 DEFINE_GUID(IID_ID3D11ClassLinkage, 0xddf57cba, 0x9543, 0x46e4, 0xa1,0x2b, 0xf2,0x07,0xa0,0xfe,0x7f,0xed);
   2961 #if defined(__cplusplus) && !defined(CINTERFACE)
   2962 MIDL_INTERFACE("ddf57cba-9543-46e4-a12b-f207a0fe7fed")
   2963 ID3D11ClassLinkage : public ID3D11DeviceChild
   2964 {
   2965     virtual HRESULT STDMETHODCALLTYPE GetClassInstance(
   2966         LPCSTR pClassInstanceName,
   2967         UINT InstanceIndex,
   2968         ID3D11ClassInstance **ppInstance) = 0;
   2969 
   2970     virtual HRESULT STDMETHODCALLTYPE CreateClassInstance(
   2971         LPCSTR pClassTypeName,
   2972         UINT ConstantBufferOffset,
   2973         UINT ConstantVectorOffset,
   2974         UINT TextureOffset,
   2975         UINT SamplerOffset,
   2976         ID3D11ClassInstance **ppInstance) = 0;
   2977 
   2978 };
   2979 #ifdef __CRT_UUID_DECL
   2980 __CRT_UUID_DECL(ID3D11ClassLinkage, 0xddf57cba, 0x9543, 0x46e4, 0xa1,0x2b, 0xf2,0x07,0xa0,0xfe,0x7f,0xed)
   2981 #endif
   2982 #else
   2983 typedef struct ID3D11ClassLinkageVtbl {
   2984     BEGIN_INTERFACE
   2985 
   2986     /*** IUnknown methods ***/
   2987     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   2988         ID3D11ClassLinkage* This,
   2989         REFIID riid,
   2990         void **ppvObject);
   2991 
   2992     ULONG (STDMETHODCALLTYPE *AddRef)(
   2993         ID3D11ClassLinkage* This);
   2994 
   2995     ULONG (STDMETHODCALLTYPE *Release)(
   2996         ID3D11ClassLinkage* This);
   2997 
   2998     /*** ID3D11DeviceChild methods ***/
   2999     void (STDMETHODCALLTYPE *GetDevice)(
   3000         ID3D11ClassLinkage* This,
   3001         ID3D11Device **ppDevice);
   3002 
   3003     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   3004         ID3D11ClassLinkage* This,
   3005         REFGUID guid,
   3006         UINT *pDataSize,
   3007         void *pData);
   3008 
   3009     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   3010         ID3D11ClassLinkage* This,
   3011         REFGUID guid,
   3012         UINT DataSize,
   3013         const void *pData);
   3014 
   3015     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   3016         ID3D11ClassLinkage* This,
   3017         REFGUID guid,
   3018         const IUnknown *pData);
   3019 
   3020     /*** ID3D11ClassLinkage methods ***/
   3021     HRESULT (STDMETHODCALLTYPE *GetClassInstance)(
   3022         ID3D11ClassLinkage* This,
   3023         LPCSTR pClassInstanceName,
   3024         UINT InstanceIndex,
   3025         ID3D11ClassInstance **ppInstance);
   3026 
   3027     HRESULT (STDMETHODCALLTYPE *CreateClassInstance)(
   3028         ID3D11ClassLinkage* This,
   3029         LPCSTR pClassTypeName,
   3030         UINT ConstantBufferOffset,
   3031         UINT ConstantVectorOffset,
   3032         UINT TextureOffset,
   3033         UINT SamplerOffset,
   3034         ID3D11ClassInstance **ppInstance);
   3035 
   3036     END_INTERFACE
   3037 } ID3D11ClassLinkageVtbl;
   3038 interface ID3D11ClassLinkage {
   3039     CONST_VTBL ID3D11ClassLinkageVtbl* lpVtbl;
   3040 };
   3041 
   3042 #ifdef COBJMACROS
   3043 #ifndef WIDL_C_INLINE_WRAPPERS
   3044 /*** IUnknown methods ***/
   3045 #define ID3D11ClassLinkage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   3046 #define ID3D11ClassLinkage_AddRef(This) (This)->lpVtbl->AddRef(This)
   3047 #define ID3D11ClassLinkage_Release(This) (This)->lpVtbl->Release(This)
   3048 /*** ID3D11DeviceChild methods ***/
   3049 #define ID3D11ClassLinkage_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   3050 #define ID3D11ClassLinkage_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   3051 #define ID3D11ClassLinkage_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   3052 #define ID3D11ClassLinkage_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   3053 /*** ID3D11ClassLinkage methods ***/
   3054 #define ID3D11ClassLinkage_GetClassInstance(This,pClassInstanceName,InstanceIndex,ppInstance) (This)->lpVtbl->GetClassInstance(This,pClassInstanceName,InstanceIndex,ppInstance)
   3055 #define ID3D11ClassLinkage_CreateClassInstance(This,pClassTypeName,ConstantBufferOffset,ConstantVectorOffset,TextureOffset,SamplerOffset,ppInstance) (This)->lpVtbl->CreateClassInstance(This,pClassTypeName,ConstantBufferOffset,ConstantVectorOffset,TextureOffset,SamplerOffset,ppInstance)
   3056 #else
   3057 /*** IUnknown methods ***/
   3058 static FORCEINLINE HRESULT ID3D11ClassLinkage_QueryInterface(ID3D11ClassLinkage* This,REFIID riid,void **ppvObject) {
   3059     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   3060 }
   3061 static FORCEINLINE ULONG ID3D11ClassLinkage_AddRef(ID3D11ClassLinkage* This) {
   3062     return This->lpVtbl->AddRef(This);
   3063 }
   3064 static FORCEINLINE ULONG ID3D11ClassLinkage_Release(ID3D11ClassLinkage* This) {
   3065     return This->lpVtbl->Release(This);
   3066 }
   3067 /*** ID3D11DeviceChild methods ***/
   3068 static FORCEINLINE void ID3D11ClassLinkage_GetDevice(ID3D11ClassLinkage* This,ID3D11Device **ppDevice) {
   3069     This->lpVtbl->GetDevice(This,ppDevice);
   3070 }
   3071 static FORCEINLINE HRESULT ID3D11ClassLinkage_GetPrivateData(ID3D11ClassLinkage* This,REFGUID guid,UINT *pDataSize,void *pData) {
   3072     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   3073 }
   3074 static FORCEINLINE HRESULT ID3D11ClassLinkage_SetPrivateData(ID3D11ClassLinkage* This,REFGUID guid,UINT DataSize,const void *pData) {
   3075     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   3076 }
   3077 static FORCEINLINE HRESULT ID3D11ClassLinkage_SetPrivateDataInterface(ID3D11ClassLinkage* This,REFGUID guid,const IUnknown *pData) {
   3078     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   3079 }
   3080 /*** ID3D11ClassLinkage methods ***/
   3081 static FORCEINLINE HRESULT ID3D11ClassLinkage_GetClassInstance(ID3D11ClassLinkage* This,LPCSTR pClassInstanceName,UINT InstanceIndex,ID3D11ClassInstance **ppInstance) {
   3082     return This->lpVtbl->GetClassInstance(This,pClassInstanceName,InstanceIndex,ppInstance);
   3083 }
   3084 static FORCEINLINE HRESULT ID3D11ClassLinkage_CreateClassInstance(ID3D11ClassLinkage* This,LPCSTR pClassTypeName,UINT ConstantBufferOffset,UINT ConstantVectorOffset,UINT TextureOffset,UINT SamplerOffset,ID3D11ClassInstance **ppInstance) {
   3085     return This->lpVtbl->CreateClassInstance(This,pClassTypeName,ConstantBufferOffset,ConstantVectorOffset,TextureOffset,SamplerOffset,ppInstance);
   3086 }
   3087 #endif
   3088 #endif
   3089 
   3090 #endif
   3091 
   3092 HRESULT STDMETHODCALLTYPE ID3D11ClassLinkage_GetClassInstance_Proxy(
   3093     ID3D11ClassLinkage* This,
   3094     LPCSTR pClassInstanceName,
   3095     UINT InstanceIndex,
   3096     ID3D11ClassInstance **ppInstance);
   3097 void __RPC_STUB ID3D11ClassLinkage_GetClassInstance_Stub(
   3098     IRpcStubBuffer* This,
   3099     IRpcChannelBuffer* pRpcChannelBuffer,
   3100     PRPC_MESSAGE pRpcMessage,
   3101     DWORD* pdwStubPhase);
   3102 HRESULT STDMETHODCALLTYPE ID3D11ClassLinkage_CreateClassInstance_Proxy(
   3103     ID3D11ClassLinkage* This,
   3104     LPCSTR pClassTypeName,
   3105     UINT ConstantBufferOffset,
   3106     UINT ConstantVectorOffset,
   3107     UINT TextureOffset,
   3108     UINT SamplerOffset,
   3109     ID3D11ClassInstance **ppInstance);
   3110 void __RPC_STUB ID3D11ClassLinkage_CreateClassInstance_Stub(
   3111     IRpcStubBuffer* This,
   3112     IRpcChannelBuffer* pRpcChannelBuffer,
   3113     PRPC_MESSAGE pRpcMessage,
   3114     DWORD* pdwStubPhase);
   3115 
   3116 #endif  /* __ID3D11ClassLinkage_INTERFACE_DEFINED__ */
   3117 
   3118 /*****************************************************************************
   3119  * ID3D11CommandList interface
   3120  */
   3121 #ifndef __ID3D11CommandList_INTERFACE_DEFINED__
   3122 #define __ID3D11CommandList_INTERFACE_DEFINED__
   3123 
   3124 DEFINE_GUID(IID_ID3D11CommandList, 0xa24bc4d1, 0x769e, 0x43f7, 0x80,0x13, 0x98,0xff,0x56,0x6c,0x18,0xe2);
   3125 #if defined(__cplusplus) && !defined(CINTERFACE)
   3126 MIDL_INTERFACE("a24bc4d1-769e-43f7-8013-98ff566c18e2")
   3127 ID3D11CommandList : public ID3D11DeviceChild
   3128 {
   3129     virtual UINT STDMETHODCALLTYPE GetContextFlags(
   3130         ) = 0;
   3131 
   3132 };
   3133 #ifdef __CRT_UUID_DECL
   3134 __CRT_UUID_DECL(ID3D11CommandList, 0xa24bc4d1, 0x769e, 0x43f7, 0x80,0x13, 0x98,0xff,0x56,0x6c,0x18,0xe2)
   3135 #endif
   3136 #else
   3137 typedef struct ID3D11CommandListVtbl {
   3138     BEGIN_INTERFACE
   3139 
   3140     /*** IUnknown methods ***/
   3141     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   3142         ID3D11CommandList* This,
   3143         REFIID riid,
   3144         void **ppvObject);
   3145 
   3146     ULONG (STDMETHODCALLTYPE *AddRef)(
   3147         ID3D11CommandList* This);
   3148 
   3149     ULONG (STDMETHODCALLTYPE *Release)(
   3150         ID3D11CommandList* This);
   3151 
   3152     /*** ID3D11DeviceChild methods ***/
   3153     void (STDMETHODCALLTYPE *GetDevice)(
   3154         ID3D11CommandList* This,
   3155         ID3D11Device **ppDevice);
   3156 
   3157     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   3158         ID3D11CommandList* This,
   3159         REFGUID guid,
   3160         UINT *pDataSize,
   3161         void *pData);
   3162 
   3163     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   3164         ID3D11CommandList* This,
   3165         REFGUID guid,
   3166         UINT DataSize,
   3167         const void *pData);
   3168 
   3169     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   3170         ID3D11CommandList* This,
   3171         REFGUID guid,
   3172         const IUnknown *pData);
   3173 
   3174     /*** ID3D11CommandList methods ***/
   3175     UINT (STDMETHODCALLTYPE *GetContextFlags)(
   3176         ID3D11CommandList* This);
   3177 
   3178     END_INTERFACE
   3179 } ID3D11CommandListVtbl;
   3180 interface ID3D11CommandList {
   3181     CONST_VTBL ID3D11CommandListVtbl* lpVtbl;
   3182 };
   3183 
   3184 #ifdef COBJMACROS
   3185 #ifndef WIDL_C_INLINE_WRAPPERS
   3186 /*** IUnknown methods ***/
   3187 #define ID3D11CommandList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   3188 #define ID3D11CommandList_AddRef(This) (This)->lpVtbl->AddRef(This)
   3189 #define ID3D11CommandList_Release(This) (This)->lpVtbl->Release(This)
   3190 /*** ID3D11DeviceChild methods ***/
   3191 #define ID3D11CommandList_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   3192 #define ID3D11CommandList_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   3193 #define ID3D11CommandList_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   3194 #define ID3D11CommandList_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   3195 /*** ID3D11CommandList methods ***/
   3196 #define ID3D11CommandList_GetContextFlags(This) (This)->lpVtbl->GetContextFlags(This)
   3197 #else
   3198 /*** IUnknown methods ***/
   3199 static FORCEINLINE HRESULT ID3D11CommandList_QueryInterface(ID3D11CommandList* This,REFIID riid,void **ppvObject) {
   3200     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   3201 }
   3202 static FORCEINLINE ULONG ID3D11CommandList_AddRef(ID3D11CommandList* This) {
   3203     return This->lpVtbl->AddRef(This);
   3204 }
   3205 static FORCEINLINE ULONG ID3D11CommandList_Release(ID3D11CommandList* This) {
   3206     return This->lpVtbl->Release(This);
   3207 }
   3208 /*** ID3D11DeviceChild methods ***/
   3209 static FORCEINLINE void ID3D11CommandList_GetDevice(ID3D11CommandList* This,ID3D11Device **ppDevice) {
   3210     This->lpVtbl->GetDevice(This,ppDevice);
   3211 }
   3212 static FORCEINLINE HRESULT ID3D11CommandList_GetPrivateData(ID3D11CommandList* This,REFGUID guid,UINT *pDataSize,void *pData) {
   3213     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   3214 }
   3215 static FORCEINLINE HRESULT ID3D11CommandList_SetPrivateData(ID3D11CommandList* This,REFGUID guid,UINT DataSize,const void *pData) {
   3216     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   3217 }
   3218 static FORCEINLINE HRESULT ID3D11CommandList_SetPrivateDataInterface(ID3D11CommandList* This,REFGUID guid,const IUnknown *pData) {
   3219     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   3220 }
   3221 /*** ID3D11CommandList methods ***/
   3222 static FORCEINLINE UINT ID3D11CommandList_GetContextFlags(ID3D11CommandList* This) {
   3223     return This->lpVtbl->GetContextFlags(This);
   3224 }
   3225 #endif
   3226 #endif
   3227 
   3228 #endif
   3229 
   3230 UINT STDMETHODCALLTYPE ID3D11CommandList_GetContextFlags_Proxy(
   3231     ID3D11CommandList* This);
   3232 void __RPC_STUB ID3D11CommandList_GetContextFlags_Stub(
   3233     IRpcStubBuffer* This,
   3234     IRpcChannelBuffer* pRpcChannelBuffer,
   3235     PRPC_MESSAGE pRpcMessage,
   3236     DWORD* pdwStubPhase);
   3237 
   3238 #endif  /* __ID3D11CommandList_INTERFACE_DEFINED__ */
   3239 
   3240 /*****************************************************************************
   3241  * ID3D11ComputeShader interface
   3242  */
   3243 #ifndef __ID3D11ComputeShader_INTERFACE_DEFINED__
   3244 #define __ID3D11ComputeShader_INTERFACE_DEFINED__
   3245 
   3246 DEFINE_GUID(IID_ID3D11ComputeShader, 0x4f5b196e, 0xc2bd, 0x495e, 0xbd,0x01, 0x1f,0xde,0xd3,0x8e,0x49,0x69);
   3247 #if defined(__cplusplus) && !defined(CINTERFACE)
   3248 MIDL_INTERFACE("4f5b196e-c2bd-495e-bd01-1fded38e4969")
   3249 ID3D11ComputeShader : public ID3D11DeviceChild
   3250 {
   3251 };
   3252 #ifdef __CRT_UUID_DECL
   3253 __CRT_UUID_DECL(ID3D11ComputeShader, 0x4f5b196e, 0xc2bd, 0x495e, 0xbd,0x01, 0x1f,0xde,0xd3,0x8e,0x49,0x69)
   3254 #endif
   3255 #else
   3256 typedef struct ID3D11ComputeShaderVtbl {
   3257     BEGIN_INTERFACE
   3258 
   3259     /*** IUnknown methods ***/
   3260     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   3261         ID3D11ComputeShader* This,
   3262         REFIID riid,
   3263         void **ppvObject);
   3264 
   3265     ULONG (STDMETHODCALLTYPE *AddRef)(
   3266         ID3D11ComputeShader* This);
   3267 
   3268     ULONG (STDMETHODCALLTYPE *Release)(
   3269         ID3D11ComputeShader* This);
   3270 
   3271     /*** ID3D11DeviceChild methods ***/
   3272     void (STDMETHODCALLTYPE *GetDevice)(
   3273         ID3D11ComputeShader* This,
   3274         ID3D11Device **ppDevice);
   3275 
   3276     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   3277         ID3D11ComputeShader* This,
   3278         REFGUID guid,
   3279         UINT *pDataSize,
   3280         void *pData);
   3281 
   3282     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   3283         ID3D11ComputeShader* This,
   3284         REFGUID guid,
   3285         UINT DataSize,
   3286         const void *pData);
   3287 
   3288     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   3289         ID3D11ComputeShader* This,
   3290         REFGUID guid,
   3291         const IUnknown *pData);
   3292 
   3293     END_INTERFACE
   3294 } ID3D11ComputeShaderVtbl;
   3295 interface ID3D11ComputeShader {
   3296     CONST_VTBL ID3D11ComputeShaderVtbl* lpVtbl;
   3297 };
   3298 
   3299 #ifdef COBJMACROS
   3300 #ifndef WIDL_C_INLINE_WRAPPERS
   3301 /*** IUnknown methods ***/
   3302 #define ID3D11ComputeShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   3303 #define ID3D11ComputeShader_AddRef(This) (This)->lpVtbl->AddRef(This)
   3304 #define ID3D11ComputeShader_Release(This) (This)->lpVtbl->Release(This)
   3305 /*** ID3D11DeviceChild methods ***/
   3306 #define ID3D11ComputeShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   3307 #define ID3D11ComputeShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   3308 #define ID3D11ComputeShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   3309 #define ID3D11ComputeShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   3310 #else
   3311 /*** IUnknown methods ***/
   3312 static FORCEINLINE HRESULT ID3D11ComputeShader_QueryInterface(ID3D11ComputeShader* This,REFIID riid,void **ppvObject) {
   3313     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   3314 }
   3315 static FORCEINLINE ULONG ID3D11ComputeShader_AddRef(ID3D11ComputeShader* This) {
   3316     return This->lpVtbl->AddRef(This);
   3317 }
   3318 static FORCEINLINE ULONG ID3D11ComputeShader_Release(ID3D11ComputeShader* This) {
   3319     return This->lpVtbl->Release(This);
   3320 }
   3321 /*** ID3D11DeviceChild methods ***/
   3322 static FORCEINLINE void ID3D11ComputeShader_GetDevice(ID3D11ComputeShader* This,ID3D11Device **ppDevice) {
   3323     This->lpVtbl->GetDevice(This,ppDevice);
   3324 }
   3325 static FORCEINLINE HRESULT ID3D11ComputeShader_GetPrivateData(ID3D11ComputeShader* This,REFGUID guid,UINT *pDataSize,void *pData) {
   3326     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   3327 }
   3328 static FORCEINLINE HRESULT ID3D11ComputeShader_SetPrivateData(ID3D11ComputeShader* This,REFGUID guid,UINT DataSize,const void *pData) {
   3329     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   3330 }
   3331 static FORCEINLINE HRESULT ID3D11ComputeShader_SetPrivateDataInterface(ID3D11ComputeShader* This,REFGUID guid,const IUnknown *pData) {
   3332     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   3333 }
   3334 #endif
   3335 #endif
   3336 
   3337 #endif
   3338 
   3339 
   3340 #endif  /* __ID3D11ComputeShader_INTERFACE_DEFINED__ */
   3341 
   3342 /*****************************************************************************
   3343  * ID3D11Counter interface
   3344  */
   3345 #ifndef __ID3D11Counter_INTERFACE_DEFINED__
   3346 #define __ID3D11Counter_INTERFACE_DEFINED__
   3347 
   3348 DEFINE_GUID(IID_ID3D11Counter, 0x6e8c49fb, 0xa371, 0x4770, 0xb4,0x40, 0x29,0x08,0x60,0x22,0xb7,0x41);
   3349 #if defined(__cplusplus) && !defined(CINTERFACE)
   3350 MIDL_INTERFACE("6e8c49fb-a371-4770-b440-29086022b741")
   3351 ID3D11Counter : public ID3D11Asynchronous
   3352 {
   3353     virtual void STDMETHODCALLTYPE GetDesc(
   3354         D3D11_COUNTER_DESC *pDesc) = 0;
   3355 
   3356 };
   3357 #ifdef __CRT_UUID_DECL
   3358 __CRT_UUID_DECL(ID3D11Counter, 0x6e8c49fb, 0xa371, 0x4770, 0xb4,0x40, 0x29,0x08,0x60,0x22,0xb7,0x41)
   3359 #endif
   3360 #else
   3361 typedef struct ID3D11CounterVtbl {
   3362     BEGIN_INTERFACE
   3363 
   3364     /*** IUnknown methods ***/
   3365     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   3366         ID3D11Counter* This,
   3367         REFIID riid,
   3368         void **ppvObject);
   3369 
   3370     ULONG (STDMETHODCALLTYPE *AddRef)(
   3371         ID3D11Counter* This);
   3372 
   3373     ULONG (STDMETHODCALLTYPE *Release)(
   3374         ID3D11Counter* This);
   3375 
   3376     /*** ID3D11DeviceChild methods ***/
   3377     void (STDMETHODCALLTYPE *GetDevice)(
   3378         ID3D11Counter* This,
   3379         ID3D11Device **ppDevice);
   3380 
   3381     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   3382         ID3D11Counter* This,
   3383         REFGUID guid,
   3384         UINT *pDataSize,
   3385         void *pData);
   3386 
   3387     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   3388         ID3D11Counter* This,
   3389         REFGUID guid,
   3390         UINT DataSize,
   3391         const void *pData);
   3392 
   3393     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   3394         ID3D11Counter* This,
   3395         REFGUID guid,
   3396         const IUnknown *pData);
   3397 
   3398     /*** ID3D11Asynchronous methods ***/
   3399     UINT (STDMETHODCALLTYPE *GetDataSize)(
   3400         ID3D11Counter* This);
   3401 
   3402     /*** ID3D11Counter methods ***/
   3403     void (STDMETHODCALLTYPE *GetDesc)(
   3404         ID3D11Counter* This,
   3405         D3D11_COUNTER_DESC *pDesc);
   3406 
   3407     END_INTERFACE
   3408 } ID3D11CounterVtbl;
   3409 interface ID3D11Counter {
   3410     CONST_VTBL ID3D11CounterVtbl* lpVtbl;
   3411 };
   3412 
   3413 #ifdef COBJMACROS
   3414 #ifndef WIDL_C_INLINE_WRAPPERS
   3415 /*** IUnknown methods ***/
   3416 #define ID3D11Counter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   3417 #define ID3D11Counter_AddRef(This) (This)->lpVtbl->AddRef(This)
   3418 #define ID3D11Counter_Release(This) (This)->lpVtbl->Release(This)
   3419 /*** ID3D11DeviceChild methods ***/
   3420 #define ID3D11Counter_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   3421 #define ID3D11Counter_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   3422 #define ID3D11Counter_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   3423 #define ID3D11Counter_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   3424 /*** ID3D11Asynchronous methods ***/
   3425 #define ID3D11Counter_GetDataSize(This) (This)->lpVtbl->GetDataSize(This)
   3426 /*** ID3D11Counter methods ***/
   3427 #define ID3D11Counter_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   3428 #else
   3429 /*** IUnknown methods ***/
   3430 static FORCEINLINE HRESULT ID3D11Counter_QueryInterface(ID3D11Counter* This,REFIID riid,void **ppvObject) {
   3431     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   3432 }
   3433 static FORCEINLINE ULONG ID3D11Counter_AddRef(ID3D11Counter* This) {
   3434     return This->lpVtbl->AddRef(This);
   3435 }
   3436 static FORCEINLINE ULONG ID3D11Counter_Release(ID3D11Counter* This) {
   3437     return This->lpVtbl->Release(This);
   3438 }
   3439 /*** ID3D11DeviceChild methods ***/
   3440 static FORCEINLINE void ID3D11Counter_GetDevice(ID3D11Counter* This,ID3D11Device **ppDevice) {
   3441     This->lpVtbl->GetDevice(This,ppDevice);
   3442 }
   3443 static FORCEINLINE HRESULT ID3D11Counter_GetPrivateData(ID3D11Counter* This,REFGUID guid,UINT *pDataSize,void *pData) {
   3444     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   3445 }
   3446 static FORCEINLINE HRESULT ID3D11Counter_SetPrivateData(ID3D11Counter* This,REFGUID guid,UINT DataSize,const void *pData) {
   3447     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   3448 }
   3449 static FORCEINLINE HRESULT ID3D11Counter_SetPrivateDataInterface(ID3D11Counter* This,REFGUID guid,const IUnknown *pData) {
   3450     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   3451 }
   3452 /*** ID3D11Asynchronous methods ***/
   3453 static FORCEINLINE UINT ID3D11Counter_GetDataSize(ID3D11Counter* This) {
   3454     return This->lpVtbl->GetDataSize(This);
   3455 }
   3456 /*** ID3D11Counter methods ***/
   3457 static FORCEINLINE void ID3D11Counter_GetDesc(ID3D11Counter* This,D3D11_COUNTER_DESC *pDesc) {
   3458     This->lpVtbl->GetDesc(This,pDesc);
   3459 }
   3460 #endif
   3461 #endif
   3462 
   3463 #endif
   3464 
   3465 void STDMETHODCALLTYPE ID3D11Counter_GetDesc_Proxy(
   3466     ID3D11Counter* This,
   3467     D3D11_COUNTER_DESC *pDesc);
   3468 void __RPC_STUB ID3D11Counter_GetDesc_Stub(
   3469     IRpcStubBuffer* This,
   3470     IRpcChannelBuffer* pRpcChannelBuffer,
   3471     PRPC_MESSAGE pRpcMessage,
   3472     DWORD* pdwStubPhase);
   3473 
   3474 #endif  /* __ID3D11Counter_INTERFACE_DEFINED__ */
   3475 
   3476 /*****************************************************************************
   3477  * ID3D11DepthStencilState interface
   3478  */
   3479 #ifndef __ID3D11DepthStencilState_INTERFACE_DEFINED__
   3480 #define __ID3D11DepthStencilState_INTERFACE_DEFINED__
   3481 
   3482 DEFINE_GUID(IID_ID3D11DepthStencilState, 0x03823efb, 0x8d8f, 0x4e1c, 0x9a,0xa2, 0xf6,0x4b,0xb2,0xcb,0xfd,0xf1);
   3483 #if defined(__cplusplus) && !defined(CINTERFACE)
   3484 MIDL_INTERFACE("03823efb-8d8f-4e1c-9aa2-f64bb2cbfdf1")
   3485 ID3D11DepthStencilState : public ID3D11DeviceChild
   3486 {
   3487     virtual void STDMETHODCALLTYPE GetDesc(
   3488         D3D11_DEPTH_STENCIL_DESC *pDesc) = 0;
   3489 
   3490 };
   3491 #ifdef __CRT_UUID_DECL
   3492 __CRT_UUID_DECL(ID3D11DepthStencilState, 0x03823efb, 0x8d8f, 0x4e1c, 0x9a,0xa2, 0xf6,0x4b,0xb2,0xcb,0xfd,0xf1)
   3493 #endif
   3494 #else
   3495 typedef struct ID3D11DepthStencilStateVtbl {
   3496     BEGIN_INTERFACE
   3497 
   3498     /*** IUnknown methods ***/
   3499     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   3500         ID3D11DepthStencilState* This,
   3501         REFIID riid,
   3502         void **ppvObject);
   3503 
   3504     ULONG (STDMETHODCALLTYPE *AddRef)(
   3505         ID3D11DepthStencilState* This);
   3506 
   3507     ULONG (STDMETHODCALLTYPE *Release)(
   3508         ID3D11DepthStencilState* This);
   3509 
   3510     /*** ID3D11DeviceChild methods ***/
   3511     void (STDMETHODCALLTYPE *GetDevice)(
   3512         ID3D11DepthStencilState* This,
   3513         ID3D11Device **ppDevice);
   3514 
   3515     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   3516         ID3D11DepthStencilState* This,
   3517         REFGUID guid,
   3518         UINT *pDataSize,
   3519         void *pData);
   3520 
   3521     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   3522         ID3D11DepthStencilState* This,
   3523         REFGUID guid,
   3524         UINT DataSize,
   3525         const void *pData);
   3526 
   3527     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   3528         ID3D11DepthStencilState* This,
   3529         REFGUID guid,
   3530         const IUnknown *pData);
   3531 
   3532     /*** ID3D11DepthStencilState methods ***/
   3533     void (STDMETHODCALLTYPE *GetDesc)(
   3534         ID3D11DepthStencilState* This,
   3535         D3D11_DEPTH_STENCIL_DESC *pDesc);
   3536 
   3537     END_INTERFACE
   3538 } ID3D11DepthStencilStateVtbl;
   3539 interface ID3D11DepthStencilState {
   3540     CONST_VTBL ID3D11DepthStencilStateVtbl* lpVtbl;
   3541 };
   3542 
   3543 #ifdef COBJMACROS
   3544 #ifndef WIDL_C_INLINE_WRAPPERS
   3545 /*** IUnknown methods ***/
   3546 #define ID3D11DepthStencilState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   3547 #define ID3D11DepthStencilState_AddRef(This) (This)->lpVtbl->AddRef(This)
   3548 #define ID3D11DepthStencilState_Release(This) (This)->lpVtbl->Release(This)
   3549 /*** ID3D11DeviceChild methods ***/
   3550 #define ID3D11DepthStencilState_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   3551 #define ID3D11DepthStencilState_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   3552 #define ID3D11DepthStencilState_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   3553 #define ID3D11DepthStencilState_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   3554 /*** ID3D11DepthStencilState methods ***/
   3555 #define ID3D11DepthStencilState_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   3556 #else
   3557 /*** IUnknown methods ***/
   3558 static FORCEINLINE HRESULT ID3D11DepthStencilState_QueryInterface(ID3D11DepthStencilState* This,REFIID riid,void **ppvObject) {
   3559     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   3560 }
   3561 static FORCEINLINE ULONG ID3D11DepthStencilState_AddRef(ID3D11DepthStencilState* This) {
   3562     return This->lpVtbl->AddRef(This);
   3563 }
   3564 static FORCEINLINE ULONG ID3D11DepthStencilState_Release(ID3D11DepthStencilState* This) {
   3565     return This->lpVtbl->Release(This);
   3566 }
   3567 /*** ID3D11DeviceChild methods ***/
   3568 static FORCEINLINE void ID3D11DepthStencilState_GetDevice(ID3D11DepthStencilState* This,ID3D11Device **ppDevice) {
   3569     This->lpVtbl->GetDevice(This,ppDevice);
   3570 }
   3571 static FORCEINLINE HRESULT ID3D11DepthStencilState_GetPrivateData(ID3D11DepthStencilState* This,REFGUID guid,UINT *pDataSize,void *pData) {
   3572     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   3573 }
   3574 static FORCEINLINE HRESULT ID3D11DepthStencilState_SetPrivateData(ID3D11DepthStencilState* This,REFGUID guid,UINT DataSize,const void *pData) {
   3575     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   3576 }
   3577 static FORCEINLINE HRESULT ID3D11DepthStencilState_SetPrivateDataInterface(ID3D11DepthStencilState* This,REFGUID guid,const IUnknown *pData) {
   3578     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   3579 }
   3580 /*** ID3D11DepthStencilState methods ***/
   3581 static FORCEINLINE void ID3D11DepthStencilState_GetDesc(ID3D11DepthStencilState* This,D3D11_DEPTH_STENCIL_DESC *pDesc) {
   3582     This->lpVtbl->GetDesc(This,pDesc);
   3583 }
   3584 #endif
   3585 #endif
   3586 
   3587 #endif
   3588 
   3589 void STDMETHODCALLTYPE ID3D11DepthStencilState_GetDesc_Proxy(
   3590     ID3D11DepthStencilState* This,
   3591     D3D11_DEPTH_STENCIL_DESC *pDesc);
   3592 void __RPC_STUB ID3D11DepthStencilState_GetDesc_Stub(
   3593     IRpcStubBuffer* This,
   3594     IRpcChannelBuffer* pRpcChannelBuffer,
   3595     PRPC_MESSAGE pRpcMessage,
   3596     DWORD* pdwStubPhase);
   3597 
   3598 #endif  /* __ID3D11DepthStencilState_INTERFACE_DEFINED__ */
   3599 
   3600 /*****************************************************************************
   3601  * ID3D11DepthStencilView interface
   3602  */
   3603 #ifndef __ID3D11DepthStencilView_INTERFACE_DEFINED__
   3604 #define __ID3D11DepthStencilView_INTERFACE_DEFINED__
   3605 
   3606 DEFINE_GUID(IID_ID3D11DepthStencilView, 0x9fdac92a, 0x1876, 0x48c3, 0xaf,0xad, 0x25,0xb9,0x4f,0x84,0xa9,0xb6);
   3607 #if defined(__cplusplus) && !defined(CINTERFACE)
   3608 MIDL_INTERFACE("9fdac92a-1876-48c3-afad-25b94f84a9b6")
   3609 ID3D11DepthStencilView : public ID3D11View
   3610 {
   3611     virtual void STDMETHODCALLTYPE GetDesc(
   3612         D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc) = 0;
   3613 
   3614 };
   3615 #ifdef __CRT_UUID_DECL
   3616 __CRT_UUID_DECL(ID3D11DepthStencilView, 0x9fdac92a, 0x1876, 0x48c3, 0xaf,0xad, 0x25,0xb9,0x4f,0x84,0xa9,0xb6)
   3617 #endif
   3618 #else
   3619 typedef struct ID3D11DepthStencilViewVtbl {
   3620     BEGIN_INTERFACE
   3621 
   3622     /*** IUnknown methods ***/
   3623     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   3624         ID3D11DepthStencilView* This,
   3625         REFIID riid,
   3626         void **ppvObject);
   3627 
   3628     ULONG (STDMETHODCALLTYPE *AddRef)(
   3629         ID3D11DepthStencilView* This);
   3630 
   3631     ULONG (STDMETHODCALLTYPE *Release)(
   3632         ID3D11DepthStencilView* This);
   3633 
   3634     /*** ID3D11DeviceChild methods ***/
   3635     void (STDMETHODCALLTYPE *GetDevice)(
   3636         ID3D11DepthStencilView* This,
   3637         ID3D11Device **ppDevice);
   3638 
   3639     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   3640         ID3D11DepthStencilView* This,
   3641         REFGUID guid,
   3642         UINT *pDataSize,
   3643         void *pData);
   3644 
   3645     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   3646         ID3D11DepthStencilView* This,
   3647         REFGUID guid,
   3648         UINT DataSize,
   3649         const void *pData);
   3650 
   3651     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   3652         ID3D11DepthStencilView* This,
   3653         REFGUID guid,
   3654         const IUnknown *pData);
   3655 
   3656     /*** ID3D11View methods ***/
   3657     void (STDMETHODCALLTYPE *GetResource)(
   3658         ID3D11DepthStencilView* This,
   3659         ID3D11Resource **ppResource);
   3660 
   3661     /*** ID3D11DepthStencilView methods ***/
   3662     void (STDMETHODCALLTYPE *GetDesc)(
   3663         ID3D11DepthStencilView* This,
   3664         D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc);
   3665 
   3666     END_INTERFACE
   3667 } ID3D11DepthStencilViewVtbl;
   3668 interface ID3D11DepthStencilView {
   3669     CONST_VTBL ID3D11DepthStencilViewVtbl* lpVtbl;
   3670 };
   3671 
   3672 #ifdef COBJMACROS
   3673 #ifndef WIDL_C_INLINE_WRAPPERS
   3674 /*** IUnknown methods ***/
   3675 #define ID3D11DepthStencilView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   3676 #define ID3D11DepthStencilView_AddRef(This) (This)->lpVtbl->AddRef(This)
   3677 #define ID3D11DepthStencilView_Release(This) (This)->lpVtbl->Release(This)
   3678 /*** ID3D11DeviceChild methods ***/
   3679 #define ID3D11DepthStencilView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   3680 #define ID3D11DepthStencilView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   3681 #define ID3D11DepthStencilView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   3682 #define ID3D11DepthStencilView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   3683 /*** ID3D11View methods ***/
   3684 #define ID3D11DepthStencilView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource)
   3685 /*** ID3D11DepthStencilView methods ***/
   3686 #define ID3D11DepthStencilView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   3687 #else
   3688 /*** IUnknown methods ***/
   3689 static FORCEINLINE HRESULT ID3D11DepthStencilView_QueryInterface(ID3D11DepthStencilView* This,REFIID riid,void **ppvObject) {
   3690     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   3691 }
   3692 static FORCEINLINE ULONG ID3D11DepthStencilView_AddRef(ID3D11DepthStencilView* This) {
   3693     return This->lpVtbl->AddRef(This);
   3694 }
   3695 static FORCEINLINE ULONG ID3D11DepthStencilView_Release(ID3D11DepthStencilView* This) {
   3696     return This->lpVtbl->Release(This);
   3697 }
   3698 /*** ID3D11DeviceChild methods ***/
   3699 static FORCEINLINE void ID3D11DepthStencilView_GetDevice(ID3D11DepthStencilView* This,ID3D11Device **ppDevice) {
   3700     This->lpVtbl->GetDevice(This,ppDevice);
   3701 }
   3702 static FORCEINLINE HRESULT ID3D11DepthStencilView_GetPrivateData(ID3D11DepthStencilView* This,REFGUID guid,UINT *pDataSize,void *pData) {
   3703     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   3704 }
   3705 static FORCEINLINE HRESULT ID3D11DepthStencilView_SetPrivateData(ID3D11DepthStencilView* This,REFGUID guid,UINT DataSize,const void *pData) {
   3706     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   3707 }
   3708 static FORCEINLINE HRESULT ID3D11DepthStencilView_SetPrivateDataInterface(ID3D11DepthStencilView* This,REFGUID guid,const IUnknown *pData) {
   3709     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   3710 }
   3711 /*** ID3D11View methods ***/
   3712 static FORCEINLINE void ID3D11DepthStencilView_GetResource(ID3D11DepthStencilView* This,ID3D11Resource **ppResource) {
   3713     This->lpVtbl->GetResource(This,ppResource);
   3714 }
   3715 /*** ID3D11DepthStencilView methods ***/
   3716 static FORCEINLINE void ID3D11DepthStencilView_GetDesc(ID3D11DepthStencilView* This,D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc) {
   3717     This->lpVtbl->GetDesc(This,pDesc);
   3718 }
   3719 #endif
   3720 #endif
   3721 
   3722 #endif
   3723 
   3724 void STDMETHODCALLTYPE ID3D11DepthStencilView_GetDesc_Proxy(
   3725     ID3D11DepthStencilView* This,
   3726     D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc);
   3727 void __RPC_STUB ID3D11DepthStencilView_GetDesc_Stub(
   3728     IRpcStubBuffer* This,
   3729     IRpcChannelBuffer* pRpcChannelBuffer,
   3730     PRPC_MESSAGE pRpcMessage,
   3731     DWORD* pdwStubPhase);
   3732 
   3733 #endif  /* __ID3D11DepthStencilView_INTERFACE_DEFINED__ */
   3734 
   3735 /*****************************************************************************
   3736  * ID3D11DomainShader interface
   3737  */
   3738 #ifndef __ID3D11DomainShader_INTERFACE_DEFINED__
   3739 #define __ID3D11DomainShader_INTERFACE_DEFINED__
   3740 
   3741 DEFINE_GUID(IID_ID3D11DomainShader, 0xf582c508, 0x0f36, 0x490c, 0x99,0x77, 0x31,0xee,0xce,0x26,0x8c,0xfa);
   3742 #if defined(__cplusplus) && !defined(CINTERFACE)
   3743 MIDL_INTERFACE("f582c508-0f36-490c-9977-31eece268cfa")
   3744 ID3D11DomainShader : public ID3D11DeviceChild
   3745 {
   3746 };
   3747 #ifdef __CRT_UUID_DECL
   3748 __CRT_UUID_DECL(ID3D11DomainShader, 0xf582c508, 0x0f36, 0x490c, 0x99,0x77, 0x31,0xee,0xce,0x26,0x8c,0xfa)
   3749 #endif
   3750 #else
   3751 typedef struct ID3D11DomainShaderVtbl {
   3752     BEGIN_INTERFACE
   3753 
   3754     /*** IUnknown methods ***/
   3755     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   3756         ID3D11DomainShader* This,
   3757         REFIID riid,
   3758         void **ppvObject);
   3759 
   3760     ULONG (STDMETHODCALLTYPE *AddRef)(
   3761         ID3D11DomainShader* This);
   3762 
   3763     ULONG (STDMETHODCALLTYPE *Release)(
   3764         ID3D11DomainShader* This);
   3765 
   3766     /*** ID3D11DeviceChild methods ***/
   3767     void (STDMETHODCALLTYPE *GetDevice)(
   3768         ID3D11DomainShader* This,
   3769         ID3D11Device **ppDevice);
   3770 
   3771     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   3772         ID3D11DomainShader* This,
   3773         REFGUID guid,
   3774         UINT *pDataSize,
   3775         void *pData);
   3776 
   3777     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   3778         ID3D11DomainShader* This,
   3779         REFGUID guid,
   3780         UINT DataSize,
   3781         const void *pData);
   3782 
   3783     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   3784         ID3D11DomainShader* This,
   3785         REFGUID guid,
   3786         const IUnknown *pData);
   3787 
   3788     END_INTERFACE
   3789 } ID3D11DomainShaderVtbl;
   3790 interface ID3D11DomainShader {
   3791     CONST_VTBL ID3D11DomainShaderVtbl* lpVtbl;
   3792 };
   3793 
   3794 #ifdef COBJMACROS
   3795 #ifndef WIDL_C_INLINE_WRAPPERS
   3796 /*** IUnknown methods ***/
   3797 #define ID3D11DomainShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   3798 #define ID3D11DomainShader_AddRef(This) (This)->lpVtbl->AddRef(This)
   3799 #define ID3D11DomainShader_Release(This) (This)->lpVtbl->Release(This)
   3800 /*** ID3D11DeviceChild methods ***/
   3801 #define ID3D11DomainShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   3802 #define ID3D11DomainShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   3803 #define ID3D11DomainShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   3804 #define ID3D11DomainShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   3805 #else
   3806 /*** IUnknown methods ***/
   3807 static FORCEINLINE HRESULT ID3D11DomainShader_QueryInterface(ID3D11DomainShader* This,REFIID riid,void **ppvObject) {
   3808     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   3809 }
   3810 static FORCEINLINE ULONG ID3D11DomainShader_AddRef(ID3D11DomainShader* This) {
   3811     return This->lpVtbl->AddRef(This);
   3812 }
   3813 static FORCEINLINE ULONG ID3D11DomainShader_Release(ID3D11DomainShader* This) {
   3814     return This->lpVtbl->Release(This);
   3815 }
   3816 /*** ID3D11DeviceChild methods ***/
   3817 static FORCEINLINE void ID3D11DomainShader_GetDevice(ID3D11DomainShader* This,ID3D11Device **ppDevice) {
   3818     This->lpVtbl->GetDevice(This,ppDevice);
   3819 }
   3820 static FORCEINLINE HRESULT ID3D11DomainShader_GetPrivateData(ID3D11DomainShader* This,REFGUID guid,UINT *pDataSize,void *pData) {
   3821     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   3822 }
   3823 static FORCEINLINE HRESULT ID3D11DomainShader_SetPrivateData(ID3D11DomainShader* This,REFGUID guid,UINT DataSize,const void *pData) {
   3824     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   3825 }
   3826 static FORCEINLINE HRESULT ID3D11DomainShader_SetPrivateDataInterface(ID3D11DomainShader* This,REFGUID guid,const IUnknown *pData) {
   3827     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   3828 }
   3829 #endif
   3830 #endif
   3831 
   3832 #endif
   3833 
   3834 
   3835 #endif  /* __ID3D11DomainShader_INTERFACE_DEFINED__ */
   3836 
   3837 /*****************************************************************************
   3838  * ID3D11GeometryShader interface
   3839  */
   3840 #ifndef __ID3D11GeometryShader_INTERFACE_DEFINED__
   3841 #define __ID3D11GeometryShader_INTERFACE_DEFINED__
   3842 
   3843 DEFINE_GUID(IID_ID3D11GeometryShader, 0x38325b96, 0xeffb, 0x4022, 0xba,0x02, 0x2e,0x79,0x5b,0x70,0x27,0x5c);
   3844 #if defined(__cplusplus) && !defined(CINTERFACE)
   3845 MIDL_INTERFACE("38325b96-effb-4022-ba02-2e795b70275c")
   3846 ID3D11GeometryShader : public ID3D11DeviceChild
   3847 {
   3848 };
   3849 #ifdef __CRT_UUID_DECL
   3850 __CRT_UUID_DECL(ID3D11GeometryShader, 0x38325b96, 0xeffb, 0x4022, 0xba,0x02, 0x2e,0x79,0x5b,0x70,0x27,0x5c)
   3851 #endif
   3852 #else
   3853 typedef struct ID3D11GeometryShaderVtbl {
   3854     BEGIN_INTERFACE
   3855 
   3856     /*** IUnknown methods ***/
   3857     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   3858         ID3D11GeometryShader* This,
   3859         REFIID riid,
   3860         void **ppvObject);
   3861 
   3862     ULONG (STDMETHODCALLTYPE *AddRef)(
   3863         ID3D11GeometryShader* This);
   3864 
   3865     ULONG (STDMETHODCALLTYPE *Release)(
   3866         ID3D11GeometryShader* This);
   3867 
   3868     /*** ID3D11DeviceChild methods ***/
   3869     void (STDMETHODCALLTYPE *GetDevice)(
   3870         ID3D11GeometryShader* This,
   3871         ID3D11Device **ppDevice);
   3872 
   3873     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   3874         ID3D11GeometryShader* This,
   3875         REFGUID guid,
   3876         UINT *pDataSize,
   3877         void *pData);
   3878 
   3879     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   3880         ID3D11GeometryShader* This,
   3881         REFGUID guid,
   3882         UINT DataSize,
   3883         const void *pData);
   3884 
   3885     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   3886         ID3D11GeometryShader* This,
   3887         REFGUID guid,
   3888         const IUnknown *pData);
   3889 
   3890     END_INTERFACE
   3891 } ID3D11GeometryShaderVtbl;
   3892 interface ID3D11GeometryShader {
   3893     CONST_VTBL ID3D11GeometryShaderVtbl* lpVtbl;
   3894 };
   3895 
   3896 #ifdef COBJMACROS
   3897 #ifndef WIDL_C_INLINE_WRAPPERS
   3898 /*** IUnknown methods ***/
   3899 #define ID3D11GeometryShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   3900 #define ID3D11GeometryShader_AddRef(This) (This)->lpVtbl->AddRef(This)
   3901 #define ID3D11GeometryShader_Release(This) (This)->lpVtbl->Release(This)
   3902 /*** ID3D11DeviceChild methods ***/
   3903 #define ID3D11GeometryShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   3904 #define ID3D11GeometryShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   3905 #define ID3D11GeometryShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   3906 #define ID3D11GeometryShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   3907 #else
   3908 /*** IUnknown methods ***/
   3909 static FORCEINLINE HRESULT ID3D11GeometryShader_QueryInterface(ID3D11GeometryShader* This,REFIID riid,void **ppvObject) {
   3910     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   3911 }
   3912 static FORCEINLINE ULONG ID3D11GeometryShader_AddRef(ID3D11GeometryShader* This) {
   3913     return This->lpVtbl->AddRef(This);
   3914 }
   3915 static FORCEINLINE ULONG ID3D11GeometryShader_Release(ID3D11GeometryShader* This) {
   3916     return This->lpVtbl->Release(This);
   3917 }
   3918 /*** ID3D11DeviceChild methods ***/
   3919 static FORCEINLINE void ID3D11GeometryShader_GetDevice(ID3D11GeometryShader* This,ID3D11Device **ppDevice) {
   3920     This->lpVtbl->GetDevice(This,ppDevice);
   3921 }
   3922 static FORCEINLINE HRESULT ID3D11GeometryShader_GetPrivateData(ID3D11GeometryShader* This,REFGUID guid,UINT *pDataSize,void *pData) {
   3923     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   3924 }
   3925 static FORCEINLINE HRESULT ID3D11GeometryShader_SetPrivateData(ID3D11GeometryShader* This,REFGUID guid,UINT DataSize,const void *pData) {
   3926     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   3927 }
   3928 static FORCEINLINE HRESULT ID3D11GeometryShader_SetPrivateDataInterface(ID3D11GeometryShader* This,REFGUID guid,const IUnknown *pData) {
   3929     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   3930 }
   3931 #endif
   3932 #endif
   3933 
   3934 #endif
   3935 
   3936 
   3937 #endif  /* __ID3D11GeometryShader_INTERFACE_DEFINED__ */
   3938 
   3939 /*****************************************************************************
   3940  * ID3D11HullShader interface
   3941  */
   3942 #ifndef __ID3D11HullShader_INTERFACE_DEFINED__
   3943 #define __ID3D11HullShader_INTERFACE_DEFINED__
   3944 
   3945 DEFINE_GUID(IID_ID3D11HullShader, 0x8e5c6061, 0x628a, 0x4c8e, 0x82,0x64, 0xbb,0xe4,0x5c,0xb3,0xd5,0xdd);
   3946 #if defined(__cplusplus) && !defined(CINTERFACE)
   3947 MIDL_INTERFACE("8e5c6061-628a-4c8e-8264-bbe45cb3d5dd")
   3948 ID3D11HullShader : public ID3D11DeviceChild
   3949 {
   3950 };
   3951 #ifdef __CRT_UUID_DECL
   3952 __CRT_UUID_DECL(ID3D11HullShader, 0x8e5c6061, 0x628a, 0x4c8e, 0x82,0x64, 0xbb,0xe4,0x5c,0xb3,0xd5,0xdd)
   3953 #endif
   3954 #else
   3955 typedef struct ID3D11HullShaderVtbl {
   3956     BEGIN_INTERFACE
   3957 
   3958     /*** IUnknown methods ***/
   3959     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   3960         ID3D11HullShader* This,
   3961         REFIID riid,
   3962         void **ppvObject);
   3963 
   3964     ULONG (STDMETHODCALLTYPE *AddRef)(
   3965         ID3D11HullShader* This);
   3966 
   3967     ULONG (STDMETHODCALLTYPE *Release)(
   3968         ID3D11HullShader* This);
   3969 
   3970     /*** ID3D11DeviceChild methods ***/
   3971     void (STDMETHODCALLTYPE *GetDevice)(
   3972         ID3D11HullShader* This,
   3973         ID3D11Device **ppDevice);
   3974 
   3975     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   3976         ID3D11HullShader* This,
   3977         REFGUID guid,
   3978         UINT *pDataSize,
   3979         void *pData);
   3980 
   3981     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   3982         ID3D11HullShader* This,
   3983         REFGUID guid,
   3984         UINT DataSize,
   3985         const void *pData);
   3986 
   3987     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   3988         ID3D11HullShader* This,
   3989         REFGUID guid,
   3990         const IUnknown *pData);
   3991 
   3992     END_INTERFACE
   3993 } ID3D11HullShaderVtbl;
   3994 interface ID3D11HullShader {
   3995     CONST_VTBL ID3D11HullShaderVtbl* lpVtbl;
   3996 };
   3997 
   3998 #ifdef COBJMACROS
   3999 #ifndef WIDL_C_INLINE_WRAPPERS
   4000 /*** IUnknown methods ***/
   4001 #define ID3D11HullShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   4002 #define ID3D11HullShader_AddRef(This) (This)->lpVtbl->AddRef(This)
   4003 #define ID3D11HullShader_Release(This) (This)->lpVtbl->Release(This)
   4004 /*** ID3D11DeviceChild methods ***/
   4005 #define ID3D11HullShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   4006 #define ID3D11HullShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   4007 #define ID3D11HullShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   4008 #define ID3D11HullShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   4009 #else
   4010 /*** IUnknown methods ***/
   4011 static FORCEINLINE HRESULT ID3D11HullShader_QueryInterface(ID3D11HullShader* This,REFIID riid,void **ppvObject) {
   4012     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   4013 }
   4014 static FORCEINLINE ULONG ID3D11HullShader_AddRef(ID3D11HullShader* This) {
   4015     return This->lpVtbl->AddRef(This);
   4016 }
   4017 static FORCEINLINE ULONG ID3D11HullShader_Release(ID3D11HullShader* This) {
   4018     return This->lpVtbl->Release(This);
   4019 }
   4020 /*** ID3D11DeviceChild methods ***/
   4021 static FORCEINLINE void ID3D11HullShader_GetDevice(ID3D11HullShader* This,ID3D11Device **ppDevice) {
   4022     This->lpVtbl->GetDevice(This,ppDevice);
   4023 }
   4024 static FORCEINLINE HRESULT ID3D11HullShader_GetPrivateData(ID3D11HullShader* This,REFGUID guid,UINT *pDataSize,void *pData) {
   4025     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   4026 }
   4027 static FORCEINLINE HRESULT ID3D11HullShader_SetPrivateData(ID3D11HullShader* This,REFGUID guid,UINT DataSize,const void *pData) {
   4028     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   4029 }
   4030 static FORCEINLINE HRESULT ID3D11HullShader_SetPrivateDataInterface(ID3D11HullShader* This,REFGUID guid,const IUnknown *pData) {
   4031     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   4032 }
   4033 #endif
   4034 #endif
   4035 
   4036 #endif
   4037 
   4038 
   4039 #endif  /* __ID3D11HullShader_INTERFACE_DEFINED__ */
   4040 
   4041 /*****************************************************************************
   4042  * ID3D11InputLayout interface
   4043  */
   4044 #ifndef __ID3D11InputLayout_INTERFACE_DEFINED__
   4045 #define __ID3D11InputLayout_INTERFACE_DEFINED__
   4046 
   4047 DEFINE_GUID(IID_ID3D11InputLayout, 0xe4819ddc, 0x4cf0, 0x4025, 0xbd,0x26, 0x5d,0xe8,0x2a,0x3e,0x07,0xb7);
   4048 #if defined(__cplusplus) && !defined(CINTERFACE)
   4049 MIDL_INTERFACE("e4819ddc-4cf0-4025-bd26-5de82a3e07b7")
   4050 ID3D11InputLayout : public ID3D11DeviceChild
   4051 {
   4052 };
   4053 #ifdef __CRT_UUID_DECL
   4054 __CRT_UUID_DECL(ID3D11InputLayout, 0xe4819ddc, 0x4cf0, 0x4025, 0xbd,0x26, 0x5d,0xe8,0x2a,0x3e,0x07,0xb7)
   4055 #endif
   4056 #else
   4057 typedef struct ID3D11InputLayoutVtbl {
   4058     BEGIN_INTERFACE
   4059 
   4060     /*** IUnknown methods ***/
   4061     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   4062         ID3D11InputLayout* This,
   4063         REFIID riid,
   4064         void **ppvObject);
   4065 
   4066     ULONG (STDMETHODCALLTYPE *AddRef)(
   4067         ID3D11InputLayout* This);
   4068 
   4069     ULONG (STDMETHODCALLTYPE *Release)(
   4070         ID3D11InputLayout* This);
   4071 
   4072     /*** ID3D11DeviceChild methods ***/
   4073     void (STDMETHODCALLTYPE *GetDevice)(
   4074         ID3D11InputLayout* This,
   4075         ID3D11Device **ppDevice);
   4076 
   4077     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   4078         ID3D11InputLayout* This,
   4079         REFGUID guid,
   4080         UINT *pDataSize,
   4081         void *pData);
   4082 
   4083     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   4084         ID3D11InputLayout* This,
   4085         REFGUID guid,
   4086         UINT DataSize,
   4087         const void *pData);
   4088 
   4089     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   4090         ID3D11InputLayout* This,
   4091         REFGUID guid,
   4092         const IUnknown *pData);
   4093 
   4094     END_INTERFACE
   4095 } ID3D11InputLayoutVtbl;
   4096 interface ID3D11InputLayout {
   4097     CONST_VTBL ID3D11InputLayoutVtbl* lpVtbl;
   4098 };
   4099 
   4100 #ifdef COBJMACROS
   4101 #ifndef WIDL_C_INLINE_WRAPPERS
   4102 /*** IUnknown methods ***/
   4103 #define ID3D11InputLayout_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   4104 #define ID3D11InputLayout_AddRef(This) (This)->lpVtbl->AddRef(This)
   4105 #define ID3D11InputLayout_Release(This) (This)->lpVtbl->Release(This)
   4106 /*** ID3D11DeviceChild methods ***/
   4107 #define ID3D11InputLayout_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   4108 #define ID3D11InputLayout_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   4109 #define ID3D11InputLayout_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   4110 #define ID3D11InputLayout_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   4111 #else
   4112 /*** IUnknown methods ***/
   4113 static FORCEINLINE HRESULT ID3D11InputLayout_QueryInterface(ID3D11InputLayout* This,REFIID riid,void **ppvObject) {
   4114     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   4115 }
   4116 static FORCEINLINE ULONG ID3D11InputLayout_AddRef(ID3D11InputLayout* This) {
   4117     return This->lpVtbl->AddRef(This);
   4118 }
   4119 static FORCEINLINE ULONG ID3D11InputLayout_Release(ID3D11InputLayout* This) {
   4120     return This->lpVtbl->Release(This);
   4121 }
   4122 /*** ID3D11DeviceChild methods ***/
   4123 static FORCEINLINE void ID3D11InputLayout_GetDevice(ID3D11InputLayout* This,ID3D11Device **ppDevice) {
   4124     This->lpVtbl->GetDevice(This,ppDevice);
   4125 }
   4126 static FORCEINLINE HRESULT ID3D11InputLayout_GetPrivateData(ID3D11InputLayout* This,REFGUID guid,UINT *pDataSize,void *pData) {
   4127     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   4128 }
   4129 static FORCEINLINE HRESULT ID3D11InputLayout_SetPrivateData(ID3D11InputLayout* This,REFGUID guid,UINT DataSize,const void *pData) {
   4130     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   4131 }
   4132 static FORCEINLINE HRESULT ID3D11InputLayout_SetPrivateDataInterface(ID3D11InputLayout* This,REFGUID guid,const IUnknown *pData) {
   4133     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   4134 }
   4135 #endif
   4136 #endif
   4137 
   4138 #endif
   4139 
   4140 
   4141 #endif  /* __ID3D11InputLayout_INTERFACE_DEFINED__ */
   4142 
   4143 /*****************************************************************************
   4144  * ID3D11PixelShader interface
   4145  */
   4146 #ifndef __ID3D11PixelShader_INTERFACE_DEFINED__
   4147 #define __ID3D11PixelShader_INTERFACE_DEFINED__
   4148 
   4149 DEFINE_GUID(IID_ID3D11PixelShader, 0xea82e40d, 0x51dc, 0x4f33, 0x93,0xd4, 0xdb,0x7c,0x91,0x25,0xae,0x8c);
   4150 #if defined(__cplusplus) && !defined(CINTERFACE)
   4151 MIDL_INTERFACE("ea82e40d-51dc-4f33-93d4-db7c9125ae8c")
   4152 ID3D11PixelShader : public ID3D11DeviceChild
   4153 {
   4154 };
   4155 #ifdef __CRT_UUID_DECL
   4156 __CRT_UUID_DECL(ID3D11PixelShader, 0xea82e40d, 0x51dc, 0x4f33, 0x93,0xd4, 0xdb,0x7c,0x91,0x25,0xae,0x8c)
   4157 #endif
   4158 #else
   4159 typedef struct ID3D11PixelShaderVtbl {
   4160     BEGIN_INTERFACE
   4161 
   4162     /*** IUnknown methods ***/
   4163     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   4164         ID3D11PixelShader* This,
   4165         REFIID riid,
   4166         void **ppvObject);
   4167 
   4168     ULONG (STDMETHODCALLTYPE *AddRef)(
   4169         ID3D11PixelShader* This);
   4170 
   4171     ULONG (STDMETHODCALLTYPE *Release)(
   4172         ID3D11PixelShader* This);
   4173 
   4174     /*** ID3D11DeviceChild methods ***/
   4175     void (STDMETHODCALLTYPE *GetDevice)(
   4176         ID3D11PixelShader* This,
   4177         ID3D11Device **ppDevice);
   4178 
   4179     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   4180         ID3D11PixelShader* This,
   4181         REFGUID guid,
   4182         UINT *pDataSize,
   4183         void *pData);
   4184 
   4185     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   4186         ID3D11PixelShader* This,
   4187         REFGUID guid,
   4188         UINT DataSize,
   4189         const void *pData);
   4190 
   4191     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   4192         ID3D11PixelShader* This,
   4193         REFGUID guid,
   4194         const IUnknown *pData);
   4195 
   4196     END_INTERFACE
   4197 } ID3D11PixelShaderVtbl;
   4198 interface ID3D11PixelShader {
   4199     CONST_VTBL ID3D11PixelShaderVtbl* lpVtbl;
   4200 };
   4201 
   4202 #ifdef COBJMACROS
   4203 #ifndef WIDL_C_INLINE_WRAPPERS
   4204 /*** IUnknown methods ***/
   4205 #define ID3D11PixelShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   4206 #define ID3D11PixelShader_AddRef(This) (This)->lpVtbl->AddRef(This)
   4207 #define ID3D11PixelShader_Release(This) (This)->lpVtbl->Release(This)
   4208 /*** ID3D11DeviceChild methods ***/
   4209 #define ID3D11PixelShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   4210 #define ID3D11PixelShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   4211 #define ID3D11PixelShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   4212 #define ID3D11PixelShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   4213 #else
   4214 /*** IUnknown methods ***/
   4215 static FORCEINLINE HRESULT ID3D11PixelShader_QueryInterface(ID3D11PixelShader* This,REFIID riid,void **ppvObject) {
   4216     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   4217 }
   4218 static FORCEINLINE ULONG ID3D11PixelShader_AddRef(ID3D11PixelShader* This) {
   4219     return This->lpVtbl->AddRef(This);
   4220 }
   4221 static FORCEINLINE ULONG ID3D11PixelShader_Release(ID3D11PixelShader* This) {
   4222     return This->lpVtbl->Release(This);
   4223 }
   4224 /*** ID3D11DeviceChild methods ***/
   4225 static FORCEINLINE void ID3D11PixelShader_GetDevice(ID3D11PixelShader* This,ID3D11Device **ppDevice) {
   4226     This->lpVtbl->GetDevice(This,ppDevice);
   4227 }
   4228 static FORCEINLINE HRESULT ID3D11PixelShader_GetPrivateData(ID3D11PixelShader* This,REFGUID guid,UINT *pDataSize,void *pData) {
   4229     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   4230 }
   4231 static FORCEINLINE HRESULT ID3D11PixelShader_SetPrivateData(ID3D11PixelShader* This,REFGUID guid,UINT DataSize,const void *pData) {
   4232     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   4233 }
   4234 static FORCEINLINE HRESULT ID3D11PixelShader_SetPrivateDataInterface(ID3D11PixelShader* This,REFGUID guid,const IUnknown *pData) {
   4235     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   4236 }
   4237 #endif
   4238 #endif
   4239 
   4240 #endif
   4241 
   4242 
   4243 #endif  /* __ID3D11PixelShader_INTERFACE_DEFINED__ */
   4244 
   4245 /*****************************************************************************
   4246  * ID3D11Predicate interface
   4247  */
   4248 #ifndef __ID3D11Predicate_INTERFACE_DEFINED__
   4249 #define __ID3D11Predicate_INTERFACE_DEFINED__
   4250 
   4251 DEFINE_GUID(IID_ID3D11Predicate, 0x9eb576dd, 0x9f77, 0x4d86, 0x81,0xaa, 0x8b,0xab,0x5f,0xe4,0x90,0xe2);
   4252 #if defined(__cplusplus) && !defined(CINTERFACE)
   4253 MIDL_INTERFACE("9eb576dd-9f77-4d86-81aa-8bab5fe490e2")
   4254 ID3D11Predicate : public ID3D11Query
   4255 {
   4256 };
   4257 #ifdef __CRT_UUID_DECL
   4258 __CRT_UUID_DECL(ID3D11Predicate, 0x9eb576dd, 0x9f77, 0x4d86, 0x81,0xaa, 0x8b,0xab,0x5f,0xe4,0x90,0xe2)
   4259 #endif
   4260 #else
   4261 typedef struct ID3D11PredicateVtbl {
   4262     BEGIN_INTERFACE
   4263 
   4264     /*** IUnknown methods ***/
   4265     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   4266         ID3D11Predicate* This,
   4267         REFIID riid,
   4268         void **ppvObject);
   4269 
   4270     ULONG (STDMETHODCALLTYPE *AddRef)(
   4271         ID3D11Predicate* This);
   4272 
   4273     ULONG (STDMETHODCALLTYPE *Release)(
   4274         ID3D11Predicate* This);
   4275 
   4276     /*** ID3D11DeviceChild methods ***/
   4277     void (STDMETHODCALLTYPE *GetDevice)(
   4278         ID3D11Predicate* This,
   4279         ID3D11Device **ppDevice);
   4280 
   4281     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   4282         ID3D11Predicate* This,
   4283         REFGUID guid,
   4284         UINT *pDataSize,
   4285         void *pData);
   4286 
   4287     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   4288         ID3D11Predicate* This,
   4289         REFGUID guid,
   4290         UINT DataSize,
   4291         const void *pData);
   4292 
   4293     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   4294         ID3D11Predicate* This,
   4295         REFGUID guid,
   4296         const IUnknown *pData);
   4297 
   4298     /*** ID3D11Asynchronous methods ***/
   4299     UINT (STDMETHODCALLTYPE *GetDataSize)(
   4300         ID3D11Predicate* This);
   4301 
   4302     /*** ID3D11Query methods ***/
   4303     void (STDMETHODCALLTYPE *GetDesc)(
   4304         ID3D11Predicate* This,
   4305         D3D11_QUERY_DESC *pDesc);
   4306 
   4307     END_INTERFACE
   4308 } ID3D11PredicateVtbl;
   4309 interface ID3D11Predicate {
   4310     CONST_VTBL ID3D11PredicateVtbl* lpVtbl;
   4311 };
   4312 
   4313 #ifdef COBJMACROS
   4314 #ifndef WIDL_C_INLINE_WRAPPERS
   4315 /*** IUnknown methods ***/
   4316 #define ID3D11Predicate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   4317 #define ID3D11Predicate_AddRef(This) (This)->lpVtbl->AddRef(This)
   4318 #define ID3D11Predicate_Release(This) (This)->lpVtbl->Release(This)
   4319 /*** ID3D11DeviceChild methods ***/
   4320 #define ID3D11Predicate_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   4321 #define ID3D11Predicate_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   4322 #define ID3D11Predicate_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   4323 #define ID3D11Predicate_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   4324 /*** ID3D11Asynchronous methods ***/
   4325 #define ID3D11Predicate_GetDataSize(This) (This)->lpVtbl->GetDataSize(This)
   4326 /*** ID3D11Query methods ***/
   4327 #define ID3D11Predicate_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   4328 #else
   4329 /*** IUnknown methods ***/
   4330 static FORCEINLINE HRESULT ID3D11Predicate_QueryInterface(ID3D11Predicate* This,REFIID riid,void **ppvObject) {
   4331     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   4332 }
   4333 static FORCEINLINE ULONG ID3D11Predicate_AddRef(ID3D11Predicate* This) {
   4334     return This->lpVtbl->AddRef(This);
   4335 }
   4336 static FORCEINLINE ULONG ID3D11Predicate_Release(ID3D11Predicate* This) {
   4337     return This->lpVtbl->Release(This);
   4338 }
   4339 /*** ID3D11DeviceChild methods ***/
   4340 static FORCEINLINE void ID3D11Predicate_GetDevice(ID3D11Predicate* This,ID3D11Device **ppDevice) {
   4341     This->lpVtbl->GetDevice(This,ppDevice);
   4342 }
   4343 static FORCEINLINE HRESULT ID3D11Predicate_GetPrivateData(ID3D11Predicate* This,REFGUID guid,UINT *pDataSize,void *pData) {
   4344     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   4345 }
   4346 static FORCEINLINE HRESULT ID3D11Predicate_SetPrivateData(ID3D11Predicate* This,REFGUID guid,UINT DataSize,const void *pData) {
   4347     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   4348 }
   4349 static FORCEINLINE HRESULT ID3D11Predicate_SetPrivateDataInterface(ID3D11Predicate* This,REFGUID guid,const IUnknown *pData) {
   4350     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   4351 }
   4352 /*** ID3D11Asynchronous methods ***/
   4353 static FORCEINLINE UINT ID3D11Predicate_GetDataSize(ID3D11Predicate* This) {
   4354     return This->lpVtbl->GetDataSize(This);
   4355 }
   4356 /*** ID3D11Query methods ***/
   4357 static FORCEINLINE void ID3D11Predicate_GetDesc(ID3D11Predicate* This,D3D11_QUERY_DESC *pDesc) {
   4358     This->lpVtbl->GetDesc(This,pDesc);
   4359 }
   4360 #endif
   4361 #endif
   4362 
   4363 #endif
   4364 
   4365 
   4366 #endif  /* __ID3D11Predicate_INTERFACE_DEFINED__ */
   4367 
   4368 /*****************************************************************************
   4369  * ID3D11RasterizerState interface
   4370  */
   4371 #ifndef __ID3D11RasterizerState_INTERFACE_DEFINED__
   4372 #define __ID3D11RasterizerState_INTERFACE_DEFINED__
   4373 
   4374 DEFINE_GUID(IID_ID3D11RasterizerState, 0x9bb4ab81, 0xab1a, 0x4d8f, 0xb5,0x06, 0xfc,0x04,0x20,0x0b,0x6e,0xe7);
   4375 #if defined(__cplusplus) && !defined(CINTERFACE)
   4376 MIDL_INTERFACE("9bb4ab81-ab1a-4d8f-b506-fc04200b6ee7")
   4377 ID3D11RasterizerState : public ID3D11DeviceChild
   4378 {
   4379     virtual void STDMETHODCALLTYPE GetDesc(
   4380         D3D11_RASTERIZER_DESC *pDesc) = 0;
   4381 
   4382 };
   4383 #ifdef __CRT_UUID_DECL
   4384 __CRT_UUID_DECL(ID3D11RasterizerState, 0x9bb4ab81, 0xab1a, 0x4d8f, 0xb5,0x06, 0xfc,0x04,0x20,0x0b,0x6e,0xe7)
   4385 #endif
   4386 #else
   4387 typedef struct ID3D11RasterizerStateVtbl {
   4388     BEGIN_INTERFACE
   4389 
   4390     /*** IUnknown methods ***/
   4391     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   4392         ID3D11RasterizerState* This,
   4393         REFIID riid,
   4394         void **ppvObject);
   4395 
   4396     ULONG (STDMETHODCALLTYPE *AddRef)(
   4397         ID3D11RasterizerState* This);
   4398 
   4399     ULONG (STDMETHODCALLTYPE *Release)(
   4400         ID3D11RasterizerState* This);
   4401 
   4402     /*** ID3D11DeviceChild methods ***/
   4403     void (STDMETHODCALLTYPE *GetDevice)(
   4404         ID3D11RasterizerState* This,
   4405         ID3D11Device **ppDevice);
   4406 
   4407     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   4408         ID3D11RasterizerState* This,
   4409         REFGUID guid,
   4410         UINT *pDataSize,
   4411         void *pData);
   4412 
   4413     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   4414         ID3D11RasterizerState* This,
   4415         REFGUID guid,
   4416         UINT DataSize,
   4417         const void *pData);
   4418 
   4419     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   4420         ID3D11RasterizerState* This,
   4421         REFGUID guid,
   4422         const IUnknown *pData);
   4423 
   4424     /*** ID3D11RasterizerState methods ***/
   4425     void (STDMETHODCALLTYPE *GetDesc)(
   4426         ID3D11RasterizerState* This,
   4427         D3D11_RASTERIZER_DESC *pDesc);
   4428 
   4429     END_INTERFACE
   4430 } ID3D11RasterizerStateVtbl;
   4431 interface ID3D11RasterizerState {
   4432     CONST_VTBL ID3D11RasterizerStateVtbl* lpVtbl;
   4433 };
   4434 
   4435 #ifdef COBJMACROS
   4436 #ifndef WIDL_C_INLINE_WRAPPERS
   4437 /*** IUnknown methods ***/
   4438 #define ID3D11RasterizerState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   4439 #define ID3D11RasterizerState_AddRef(This) (This)->lpVtbl->AddRef(This)
   4440 #define ID3D11RasterizerState_Release(This) (This)->lpVtbl->Release(This)
   4441 /*** ID3D11DeviceChild methods ***/
   4442 #define ID3D11RasterizerState_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   4443 #define ID3D11RasterizerState_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   4444 #define ID3D11RasterizerState_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   4445 #define ID3D11RasterizerState_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   4446 /*** ID3D11RasterizerState methods ***/
   4447 #define ID3D11RasterizerState_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   4448 #else
   4449 /*** IUnknown methods ***/
   4450 static FORCEINLINE HRESULT ID3D11RasterizerState_QueryInterface(ID3D11RasterizerState* This,REFIID riid,void **ppvObject) {
   4451     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   4452 }
   4453 static FORCEINLINE ULONG ID3D11RasterizerState_AddRef(ID3D11RasterizerState* This) {
   4454     return This->lpVtbl->AddRef(This);
   4455 }
   4456 static FORCEINLINE ULONG ID3D11RasterizerState_Release(ID3D11RasterizerState* This) {
   4457     return This->lpVtbl->Release(This);
   4458 }
   4459 /*** ID3D11DeviceChild methods ***/
   4460 static FORCEINLINE void ID3D11RasterizerState_GetDevice(ID3D11RasterizerState* This,ID3D11Device **ppDevice) {
   4461     This->lpVtbl->GetDevice(This,ppDevice);
   4462 }
   4463 static FORCEINLINE HRESULT ID3D11RasterizerState_GetPrivateData(ID3D11RasterizerState* This,REFGUID guid,UINT *pDataSize,void *pData) {
   4464     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   4465 }
   4466 static FORCEINLINE HRESULT ID3D11RasterizerState_SetPrivateData(ID3D11RasterizerState* This,REFGUID guid,UINT DataSize,const void *pData) {
   4467     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   4468 }
   4469 static FORCEINLINE HRESULT ID3D11RasterizerState_SetPrivateDataInterface(ID3D11RasterizerState* This,REFGUID guid,const IUnknown *pData) {
   4470     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   4471 }
   4472 /*** ID3D11RasterizerState methods ***/
   4473 static FORCEINLINE void ID3D11RasterizerState_GetDesc(ID3D11RasterizerState* This,D3D11_RASTERIZER_DESC *pDesc) {
   4474     This->lpVtbl->GetDesc(This,pDesc);
   4475 }
   4476 #endif
   4477 #endif
   4478 
   4479 #endif
   4480 
   4481 void STDMETHODCALLTYPE ID3D11RasterizerState_GetDesc_Proxy(
   4482     ID3D11RasterizerState* This,
   4483     D3D11_RASTERIZER_DESC *pDesc);
   4484 void __RPC_STUB ID3D11RasterizerState_GetDesc_Stub(
   4485     IRpcStubBuffer* This,
   4486     IRpcChannelBuffer* pRpcChannelBuffer,
   4487     PRPC_MESSAGE pRpcMessage,
   4488     DWORD* pdwStubPhase);
   4489 
   4490 #endif  /* __ID3D11RasterizerState_INTERFACE_DEFINED__ */
   4491 
   4492 /*****************************************************************************
   4493  * ID3D11RenderTargetView interface
   4494  */
   4495 #ifndef __ID3D11RenderTargetView_INTERFACE_DEFINED__
   4496 #define __ID3D11RenderTargetView_INTERFACE_DEFINED__
   4497 
   4498 DEFINE_GUID(IID_ID3D11RenderTargetView, 0xdfdba067, 0x0b8d, 0x4865, 0x87,0x5b, 0xd7,0xb4,0x51,0x6c,0xc1,0x64);
   4499 #if defined(__cplusplus) && !defined(CINTERFACE)
   4500 MIDL_INTERFACE("dfdba067-0b8d-4865-875b-d7b4516cc164")
   4501 ID3D11RenderTargetView : public ID3D11View
   4502 {
   4503     virtual void STDMETHODCALLTYPE GetDesc(
   4504         D3D11_RENDER_TARGET_VIEW_DESC *pDesc) = 0;
   4505 
   4506 };
   4507 #ifdef __CRT_UUID_DECL
   4508 __CRT_UUID_DECL(ID3D11RenderTargetView, 0xdfdba067, 0x0b8d, 0x4865, 0x87,0x5b, 0xd7,0xb4,0x51,0x6c,0xc1,0x64)
   4509 #endif
   4510 #else
   4511 typedef struct ID3D11RenderTargetViewVtbl {
   4512     BEGIN_INTERFACE
   4513 
   4514     /*** IUnknown methods ***/
   4515     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   4516         ID3D11RenderTargetView* This,
   4517         REFIID riid,
   4518         void **ppvObject);
   4519 
   4520     ULONG (STDMETHODCALLTYPE *AddRef)(
   4521         ID3D11RenderTargetView* This);
   4522 
   4523     ULONG (STDMETHODCALLTYPE *Release)(
   4524         ID3D11RenderTargetView* This);
   4525 
   4526     /*** ID3D11DeviceChild methods ***/
   4527     void (STDMETHODCALLTYPE *GetDevice)(
   4528         ID3D11RenderTargetView* This,
   4529         ID3D11Device **ppDevice);
   4530 
   4531     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   4532         ID3D11RenderTargetView* This,
   4533         REFGUID guid,
   4534         UINT *pDataSize,
   4535         void *pData);
   4536 
   4537     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   4538         ID3D11RenderTargetView* This,
   4539         REFGUID guid,
   4540         UINT DataSize,
   4541         const void *pData);
   4542 
   4543     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   4544         ID3D11RenderTargetView* This,
   4545         REFGUID guid,
   4546         const IUnknown *pData);
   4547 
   4548     /*** ID3D11View methods ***/
   4549     void (STDMETHODCALLTYPE *GetResource)(
   4550         ID3D11RenderTargetView* This,
   4551         ID3D11Resource **ppResource);
   4552 
   4553     /*** ID3D11RenderTargetView methods ***/
   4554     void (STDMETHODCALLTYPE *GetDesc)(
   4555         ID3D11RenderTargetView* This,
   4556         D3D11_RENDER_TARGET_VIEW_DESC *pDesc);
   4557 
   4558     END_INTERFACE
   4559 } ID3D11RenderTargetViewVtbl;
   4560 interface ID3D11RenderTargetView {
   4561     CONST_VTBL ID3D11RenderTargetViewVtbl* lpVtbl;
   4562 };
   4563 
   4564 #ifdef COBJMACROS
   4565 #ifndef WIDL_C_INLINE_WRAPPERS
   4566 /*** IUnknown methods ***/
   4567 #define ID3D11RenderTargetView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   4568 #define ID3D11RenderTargetView_AddRef(This) (This)->lpVtbl->AddRef(This)
   4569 #define ID3D11RenderTargetView_Release(This) (This)->lpVtbl->Release(This)
   4570 /*** ID3D11DeviceChild methods ***/
   4571 #define ID3D11RenderTargetView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   4572 #define ID3D11RenderTargetView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   4573 #define ID3D11RenderTargetView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   4574 #define ID3D11RenderTargetView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   4575 /*** ID3D11View methods ***/
   4576 #define ID3D11RenderTargetView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource)
   4577 /*** ID3D11RenderTargetView methods ***/
   4578 #define ID3D11RenderTargetView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   4579 #else
   4580 /*** IUnknown methods ***/
   4581 static FORCEINLINE HRESULT ID3D11RenderTargetView_QueryInterface(ID3D11RenderTargetView* This,REFIID riid,void **ppvObject) {
   4582     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   4583 }
   4584 static FORCEINLINE ULONG ID3D11RenderTargetView_AddRef(ID3D11RenderTargetView* This) {
   4585     return This->lpVtbl->AddRef(This);
   4586 }
   4587 static FORCEINLINE ULONG ID3D11RenderTargetView_Release(ID3D11RenderTargetView* This) {
   4588     return This->lpVtbl->Release(This);
   4589 }
   4590 /*** ID3D11DeviceChild methods ***/
   4591 static FORCEINLINE void ID3D11RenderTargetView_GetDevice(ID3D11RenderTargetView* This,ID3D11Device **ppDevice) {
   4592     This->lpVtbl->GetDevice(This,ppDevice);
   4593 }
   4594 static FORCEINLINE HRESULT ID3D11RenderTargetView_GetPrivateData(ID3D11RenderTargetView* This,REFGUID guid,UINT *pDataSize,void *pData) {
   4595     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   4596 }
   4597 static FORCEINLINE HRESULT ID3D11RenderTargetView_SetPrivateData(ID3D11RenderTargetView* This,REFGUID guid,UINT DataSize,const void *pData) {
   4598     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   4599 }
   4600 static FORCEINLINE HRESULT ID3D11RenderTargetView_SetPrivateDataInterface(ID3D11RenderTargetView* This,REFGUID guid,const IUnknown *pData) {
   4601     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   4602 }
   4603 /*** ID3D11View methods ***/
   4604 static FORCEINLINE void ID3D11RenderTargetView_GetResource(ID3D11RenderTargetView* This,ID3D11Resource **ppResource) {
   4605     This->lpVtbl->GetResource(This,ppResource);
   4606 }
   4607 /*** ID3D11RenderTargetView methods ***/
   4608 static FORCEINLINE void ID3D11RenderTargetView_GetDesc(ID3D11RenderTargetView* This,D3D11_RENDER_TARGET_VIEW_DESC *pDesc) {
   4609     This->lpVtbl->GetDesc(This,pDesc);
   4610 }
   4611 #endif
   4612 #endif
   4613 
   4614 #endif
   4615 
   4616 void STDMETHODCALLTYPE ID3D11RenderTargetView_GetDesc_Proxy(
   4617     ID3D11RenderTargetView* This,
   4618     D3D11_RENDER_TARGET_VIEW_DESC *pDesc);
   4619 void __RPC_STUB ID3D11RenderTargetView_GetDesc_Stub(
   4620     IRpcStubBuffer* This,
   4621     IRpcChannelBuffer* pRpcChannelBuffer,
   4622     PRPC_MESSAGE pRpcMessage,
   4623     DWORD* pdwStubPhase);
   4624 
   4625 #endif  /* __ID3D11RenderTargetView_INTERFACE_DEFINED__ */
   4626 
   4627 /*****************************************************************************
   4628  * ID3D11SamplerState interface
   4629  */
   4630 #ifndef __ID3D11SamplerState_INTERFACE_DEFINED__
   4631 #define __ID3D11SamplerState_INTERFACE_DEFINED__
   4632 
   4633 DEFINE_GUID(IID_ID3D11SamplerState, 0xda6fea51, 0x564c, 0x4487, 0x98,0x10, 0xf0,0xd0,0xf9,0xb4,0xe3,0xa5);
   4634 #if defined(__cplusplus) && !defined(CINTERFACE)
   4635 MIDL_INTERFACE("da6fea51-564c-4487-9810-f0d0f9b4e3a5")
   4636 ID3D11SamplerState : public ID3D11DeviceChild
   4637 {
   4638     virtual void STDMETHODCALLTYPE GetDesc(
   4639         D3D11_SAMPLER_DESC *pDesc) = 0;
   4640 
   4641 };
   4642 #ifdef __CRT_UUID_DECL
   4643 __CRT_UUID_DECL(ID3D11SamplerState, 0xda6fea51, 0x564c, 0x4487, 0x98,0x10, 0xf0,0xd0,0xf9,0xb4,0xe3,0xa5)
   4644 #endif
   4645 #else
   4646 typedef struct ID3D11SamplerStateVtbl {
   4647     BEGIN_INTERFACE
   4648 
   4649     /*** IUnknown methods ***/
   4650     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   4651         ID3D11SamplerState* This,
   4652         REFIID riid,
   4653         void **ppvObject);
   4654 
   4655     ULONG (STDMETHODCALLTYPE *AddRef)(
   4656         ID3D11SamplerState* This);
   4657 
   4658     ULONG (STDMETHODCALLTYPE *Release)(
   4659         ID3D11SamplerState* This);
   4660 
   4661     /*** ID3D11DeviceChild methods ***/
   4662     void (STDMETHODCALLTYPE *GetDevice)(
   4663         ID3D11SamplerState* This,
   4664         ID3D11Device **ppDevice);
   4665 
   4666     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   4667         ID3D11SamplerState* This,
   4668         REFGUID guid,
   4669         UINT *pDataSize,
   4670         void *pData);
   4671 
   4672     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   4673         ID3D11SamplerState* This,
   4674         REFGUID guid,
   4675         UINT DataSize,
   4676         const void *pData);
   4677 
   4678     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   4679         ID3D11SamplerState* This,
   4680         REFGUID guid,
   4681         const IUnknown *pData);
   4682 
   4683     /*** ID3D11SamplerState methods ***/
   4684     void (STDMETHODCALLTYPE *GetDesc)(
   4685         ID3D11SamplerState* This,
   4686         D3D11_SAMPLER_DESC *pDesc);
   4687 
   4688     END_INTERFACE
   4689 } ID3D11SamplerStateVtbl;
   4690 interface ID3D11SamplerState {
   4691     CONST_VTBL ID3D11SamplerStateVtbl* lpVtbl;
   4692 };
   4693 
   4694 #ifdef COBJMACROS
   4695 #ifndef WIDL_C_INLINE_WRAPPERS
   4696 /*** IUnknown methods ***/
   4697 #define ID3D11SamplerState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   4698 #define ID3D11SamplerState_AddRef(This) (This)->lpVtbl->AddRef(This)
   4699 #define ID3D11SamplerState_Release(This) (This)->lpVtbl->Release(This)
   4700 /*** ID3D11DeviceChild methods ***/
   4701 #define ID3D11SamplerState_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   4702 #define ID3D11SamplerState_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   4703 #define ID3D11SamplerState_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   4704 #define ID3D11SamplerState_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   4705 /*** ID3D11SamplerState methods ***/
   4706 #define ID3D11SamplerState_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   4707 #else
   4708 /*** IUnknown methods ***/
   4709 static FORCEINLINE HRESULT ID3D11SamplerState_QueryInterface(ID3D11SamplerState* This,REFIID riid,void **ppvObject) {
   4710     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   4711 }
   4712 static FORCEINLINE ULONG ID3D11SamplerState_AddRef(ID3D11SamplerState* This) {
   4713     return This->lpVtbl->AddRef(This);
   4714 }
   4715 static FORCEINLINE ULONG ID3D11SamplerState_Release(ID3D11SamplerState* This) {
   4716     return This->lpVtbl->Release(This);
   4717 }
   4718 /*** ID3D11DeviceChild methods ***/
   4719 static FORCEINLINE void ID3D11SamplerState_GetDevice(ID3D11SamplerState* This,ID3D11Device **ppDevice) {
   4720     This->lpVtbl->GetDevice(This,ppDevice);
   4721 }
   4722 static FORCEINLINE HRESULT ID3D11SamplerState_GetPrivateData(ID3D11SamplerState* This,REFGUID guid,UINT *pDataSize,void *pData) {
   4723     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   4724 }
   4725 static FORCEINLINE HRESULT ID3D11SamplerState_SetPrivateData(ID3D11SamplerState* This,REFGUID guid,UINT DataSize,const void *pData) {
   4726     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   4727 }
   4728 static FORCEINLINE HRESULT ID3D11SamplerState_SetPrivateDataInterface(ID3D11SamplerState* This,REFGUID guid,const IUnknown *pData) {
   4729     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   4730 }
   4731 /*** ID3D11SamplerState methods ***/
   4732 static FORCEINLINE void ID3D11SamplerState_GetDesc(ID3D11SamplerState* This,D3D11_SAMPLER_DESC *pDesc) {
   4733     This->lpVtbl->GetDesc(This,pDesc);
   4734 }
   4735 #endif
   4736 #endif
   4737 
   4738 #endif
   4739 
   4740 void STDMETHODCALLTYPE ID3D11SamplerState_GetDesc_Proxy(
   4741     ID3D11SamplerState* This,
   4742     D3D11_SAMPLER_DESC *pDesc);
   4743 void __RPC_STUB ID3D11SamplerState_GetDesc_Stub(
   4744     IRpcStubBuffer* This,
   4745     IRpcChannelBuffer* pRpcChannelBuffer,
   4746     PRPC_MESSAGE pRpcMessage,
   4747     DWORD* pdwStubPhase);
   4748 
   4749 #endif  /* __ID3D11SamplerState_INTERFACE_DEFINED__ */
   4750 
   4751 /*****************************************************************************
   4752  * ID3D11ShaderResourceView interface
   4753  */
   4754 #ifndef __ID3D11ShaderResourceView_INTERFACE_DEFINED__
   4755 #define __ID3D11ShaderResourceView_INTERFACE_DEFINED__
   4756 
   4757 DEFINE_GUID(IID_ID3D11ShaderResourceView, 0xb0e06fe0, 0x8192, 0x4e1a, 0xb1,0xca, 0x36,0xd7,0x41,0x47,0x10,0xb2);
   4758 #if defined(__cplusplus) && !defined(CINTERFACE)
   4759 MIDL_INTERFACE("b0e06fe0-8192-4e1a-b1ca-36d7414710b2")
   4760 ID3D11ShaderResourceView : public ID3D11View
   4761 {
   4762     virtual void STDMETHODCALLTYPE GetDesc(
   4763         D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc) = 0;
   4764 
   4765 };
   4766 #ifdef __CRT_UUID_DECL
   4767 __CRT_UUID_DECL(ID3D11ShaderResourceView, 0xb0e06fe0, 0x8192, 0x4e1a, 0xb1,0xca, 0x36,0xd7,0x41,0x47,0x10,0xb2)
   4768 #endif
   4769 #else
   4770 typedef struct ID3D11ShaderResourceViewVtbl {
   4771     BEGIN_INTERFACE
   4772 
   4773     /*** IUnknown methods ***/
   4774     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   4775         ID3D11ShaderResourceView* This,
   4776         REFIID riid,
   4777         void **ppvObject);
   4778 
   4779     ULONG (STDMETHODCALLTYPE *AddRef)(
   4780         ID3D11ShaderResourceView* This);
   4781 
   4782     ULONG (STDMETHODCALLTYPE *Release)(
   4783         ID3D11ShaderResourceView* This);
   4784 
   4785     /*** ID3D11DeviceChild methods ***/
   4786     void (STDMETHODCALLTYPE *GetDevice)(
   4787         ID3D11ShaderResourceView* This,
   4788         ID3D11Device **ppDevice);
   4789 
   4790     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   4791         ID3D11ShaderResourceView* This,
   4792         REFGUID guid,
   4793         UINT *pDataSize,
   4794         void *pData);
   4795 
   4796     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   4797         ID3D11ShaderResourceView* This,
   4798         REFGUID guid,
   4799         UINT DataSize,
   4800         const void *pData);
   4801 
   4802     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   4803         ID3D11ShaderResourceView* This,
   4804         REFGUID guid,
   4805         const IUnknown *pData);
   4806 
   4807     /*** ID3D11View methods ***/
   4808     void (STDMETHODCALLTYPE *GetResource)(
   4809         ID3D11ShaderResourceView* This,
   4810         ID3D11Resource **ppResource);
   4811 
   4812     /*** ID3D11ShaderResourceView methods ***/
   4813     void (STDMETHODCALLTYPE *GetDesc)(
   4814         ID3D11ShaderResourceView* This,
   4815         D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc);
   4816 
   4817     END_INTERFACE
   4818 } ID3D11ShaderResourceViewVtbl;
   4819 interface ID3D11ShaderResourceView {
   4820     CONST_VTBL ID3D11ShaderResourceViewVtbl* lpVtbl;
   4821 };
   4822 
   4823 #ifdef COBJMACROS
   4824 #ifndef WIDL_C_INLINE_WRAPPERS
   4825 /*** IUnknown methods ***/
   4826 #define ID3D11ShaderResourceView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   4827 #define ID3D11ShaderResourceView_AddRef(This) (This)->lpVtbl->AddRef(This)
   4828 #define ID3D11ShaderResourceView_Release(This) (This)->lpVtbl->Release(This)
   4829 /*** ID3D11DeviceChild methods ***/
   4830 #define ID3D11ShaderResourceView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   4831 #define ID3D11ShaderResourceView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   4832 #define ID3D11ShaderResourceView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   4833 #define ID3D11ShaderResourceView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   4834 /*** ID3D11View methods ***/
   4835 #define ID3D11ShaderResourceView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource)
   4836 /*** ID3D11ShaderResourceView methods ***/
   4837 #define ID3D11ShaderResourceView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   4838 #else
   4839 /*** IUnknown methods ***/
   4840 static FORCEINLINE HRESULT ID3D11ShaderResourceView_QueryInterface(ID3D11ShaderResourceView* This,REFIID riid,void **ppvObject) {
   4841     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   4842 }
   4843 static FORCEINLINE ULONG ID3D11ShaderResourceView_AddRef(ID3D11ShaderResourceView* This) {
   4844     return This->lpVtbl->AddRef(This);
   4845 }
   4846 static FORCEINLINE ULONG ID3D11ShaderResourceView_Release(ID3D11ShaderResourceView* This) {
   4847     return This->lpVtbl->Release(This);
   4848 }
   4849 /*** ID3D11DeviceChild methods ***/
   4850 static FORCEINLINE void ID3D11ShaderResourceView_GetDevice(ID3D11ShaderResourceView* This,ID3D11Device **ppDevice) {
   4851     This->lpVtbl->GetDevice(This,ppDevice);
   4852 }
   4853 static FORCEINLINE HRESULT ID3D11ShaderResourceView_GetPrivateData(ID3D11ShaderResourceView* This,REFGUID guid,UINT *pDataSize,void *pData) {
   4854     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   4855 }
   4856 static FORCEINLINE HRESULT ID3D11ShaderResourceView_SetPrivateData(ID3D11ShaderResourceView* This,REFGUID guid,UINT DataSize,const void *pData) {
   4857     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   4858 }
   4859 static FORCEINLINE HRESULT ID3D11ShaderResourceView_SetPrivateDataInterface(ID3D11ShaderResourceView* This,REFGUID guid,const IUnknown *pData) {
   4860     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   4861 }
   4862 /*** ID3D11View methods ***/
   4863 static FORCEINLINE void ID3D11ShaderResourceView_GetResource(ID3D11ShaderResourceView* This,ID3D11Resource **ppResource) {
   4864     This->lpVtbl->GetResource(This,ppResource);
   4865 }
   4866 /*** ID3D11ShaderResourceView methods ***/
   4867 static FORCEINLINE void ID3D11ShaderResourceView_GetDesc(ID3D11ShaderResourceView* This,D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc) {
   4868     This->lpVtbl->GetDesc(This,pDesc);
   4869 }
   4870 #endif
   4871 #endif
   4872 
   4873 #endif
   4874 
   4875 void STDMETHODCALLTYPE ID3D11ShaderResourceView_GetDesc_Proxy(
   4876     ID3D11ShaderResourceView* This,
   4877     D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc);
   4878 void __RPC_STUB ID3D11ShaderResourceView_GetDesc_Stub(
   4879     IRpcStubBuffer* This,
   4880     IRpcChannelBuffer* pRpcChannelBuffer,
   4881     PRPC_MESSAGE pRpcMessage,
   4882     DWORD* pdwStubPhase);
   4883 
   4884 #endif  /* __ID3D11ShaderResourceView_INTERFACE_DEFINED__ */
   4885 
   4886 /*****************************************************************************
   4887  * ID3D11Texture1D interface
   4888  */
   4889 #ifndef __ID3D11Texture1D_INTERFACE_DEFINED__
   4890 #define __ID3D11Texture1D_INTERFACE_DEFINED__
   4891 
   4892 DEFINE_GUID(IID_ID3D11Texture1D, 0xf8fb5c27, 0xc6b3, 0x4f75, 0xa4,0xc8, 0x43,0x9a,0xf2,0xef,0x56,0x4c);
   4893 #if defined(__cplusplus) && !defined(CINTERFACE)
   4894 MIDL_INTERFACE("f8fb5c27-c6b3-4f75-a4c8-439af2ef564c")
   4895 ID3D11Texture1D : public ID3D11Resource
   4896 {
   4897     virtual void STDMETHODCALLTYPE GetDesc(
   4898         D3D11_TEXTURE1D_DESC *pDesc) = 0;
   4899 
   4900 };
   4901 #ifdef __CRT_UUID_DECL
   4902 __CRT_UUID_DECL(ID3D11Texture1D, 0xf8fb5c27, 0xc6b3, 0x4f75, 0xa4,0xc8, 0x43,0x9a,0xf2,0xef,0x56,0x4c)
   4903 #endif
   4904 #else
   4905 typedef struct ID3D11Texture1DVtbl {
   4906     BEGIN_INTERFACE
   4907 
   4908     /*** IUnknown methods ***/
   4909     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   4910         ID3D11Texture1D* This,
   4911         REFIID riid,
   4912         void **ppvObject);
   4913 
   4914     ULONG (STDMETHODCALLTYPE *AddRef)(
   4915         ID3D11Texture1D* This);
   4916 
   4917     ULONG (STDMETHODCALLTYPE *Release)(
   4918         ID3D11Texture1D* This);
   4919 
   4920     /*** ID3D11DeviceChild methods ***/
   4921     void (STDMETHODCALLTYPE *GetDevice)(
   4922         ID3D11Texture1D* This,
   4923         ID3D11Device **ppDevice);
   4924 
   4925     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   4926         ID3D11Texture1D* This,
   4927         REFGUID guid,
   4928         UINT *pDataSize,
   4929         void *pData);
   4930 
   4931     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   4932         ID3D11Texture1D* This,
   4933         REFGUID guid,
   4934         UINT DataSize,
   4935         const void *pData);
   4936 
   4937     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   4938         ID3D11Texture1D* This,
   4939         REFGUID guid,
   4940         const IUnknown *pData);
   4941 
   4942     /*** ID3D11Resource methods ***/
   4943     void (STDMETHODCALLTYPE *GetType)(
   4944         ID3D11Texture1D* This,
   4945         D3D11_RESOURCE_DIMENSION *pResourceDimension);
   4946 
   4947     void (STDMETHODCALLTYPE *SetEvictionPriority)(
   4948         ID3D11Texture1D* This,
   4949         UINT EvictionPriority);
   4950 
   4951     UINT (STDMETHODCALLTYPE *GetEvictionPriority)(
   4952         ID3D11Texture1D* This);
   4953 
   4954     /*** ID3D11Texture1D methods ***/
   4955     void (STDMETHODCALLTYPE *GetDesc)(
   4956         ID3D11Texture1D* This,
   4957         D3D11_TEXTURE1D_DESC *pDesc);
   4958 
   4959     END_INTERFACE
   4960 } ID3D11Texture1DVtbl;
   4961 interface ID3D11Texture1D {
   4962     CONST_VTBL ID3D11Texture1DVtbl* lpVtbl;
   4963 };
   4964 
   4965 #ifdef COBJMACROS
   4966 #ifndef WIDL_C_INLINE_WRAPPERS
   4967 /*** IUnknown methods ***/
   4968 #define ID3D11Texture1D_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   4969 #define ID3D11Texture1D_AddRef(This) (This)->lpVtbl->AddRef(This)
   4970 #define ID3D11Texture1D_Release(This) (This)->lpVtbl->Release(This)
   4971 /*** ID3D11DeviceChild methods ***/
   4972 #define ID3D11Texture1D_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   4973 #define ID3D11Texture1D_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   4974 #define ID3D11Texture1D_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   4975 #define ID3D11Texture1D_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   4976 /*** ID3D11Resource methods ***/
   4977 #define ID3D11Texture1D_GetType(This,pResourceDimension) (This)->lpVtbl->GetType(This,pResourceDimension)
   4978 #define ID3D11Texture1D_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority)
   4979 #define ID3D11Texture1D_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This)
   4980 /*** ID3D11Texture1D methods ***/
   4981 #define ID3D11Texture1D_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   4982 #else
   4983 /*** IUnknown methods ***/
   4984 static FORCEINLINE HRESULT ID3D11Texture1D_QueryInterface(ID3D11Texture1D* This,REFIID riid,void **ppvObject) {
   4985     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   4986 }
   4987 static FORCEINLINE ULONG ID3D11Texture1D_AddRef(ID3D11Texture1D* This) {
   4988     return This->lpVtbl->AddRef(This);
   4989 }
   4990 static FORCEINLINE ULONG ID3D11Texture1D_Release(ID3D11Texture1D* This) {
   4991     return This->lpVtbl->Release(This);
   4992 }
   4993 /*** ID3D11DeviceChild methods ***/
   4994 static FORCEINLINE void ID3D11Texture1D_GetDevice(ID3D11Texture1D* This,ID3D11Device **ppDevice) {
   4995     This->lpVtbl->GetDevice(This,ppDevice);
   4996 }
   4997 static FORCEINLINE HRESULT ID3D11Texture1D_GetPrivateData(ID3D11Texture1D* This,REFGUID guid,UINT *pDataSize,void *pData) {
   4998     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   4999 }
   5000 static FORCEINLINE HRESULT ID3D11Texture1D_SetPrivateData(ID3D11Texture1D* This,REFGUID guid,UINT DataSize,const void *pData) {
   5001     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   5002 }
   5003 static FORCEINLINE HRESULT ID3D11Texture1D_SetPrivateDataInterface(ID3D11Texture1D* This,REFGUID guid,const IUnknown *pData) {
   5004     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   5005 }
   5006 /*** ID3D11Resource methods ***/
   5007 static FORCEINLINE void ID3D11Texture1D_GetType(ID3D11Texture1D* This,D3D11_RESOURCE_DIMENSION *pResourceDimension) {
   5008     This->lpVtbl->GetType(This,pResourceDimension);
   5009 }
   5010 static FORCEINLINE void ID3D11Texture1D_SetEvictionPriority(ID3D11Texture1D* This,UINT EvictionPriority) {
   5011     This->lpVtbl->SetEvictionPriority(This,EvictionPriority);
   5012 }
   5013 static FORCEINLINE UINT ID3D11Texture1D_GetEvictionPriority(ID3D11Texture1D* This) {
   5014     return This->lpVtbl->GetEvictionPriority(This);
   5015 }
   5016 /*** ID3D11Texture1D methods ***/
   5017 static FORCEINLINE void ID3D11Texture1D_GetDesc(ID3D11Texture1D* This,D3D11_TEXTURE1D_DESC *pDesc) {
   5018     This->lpVtbl->GetDesc(This,pDesc);
   5019 }
   5020 #endif
   5021 #endif
   5022 
   5023 #endif
   5024 
   5025 void STDMETHODCALLTYPE ID3D11Texture1D_GetDesc_Proxy(
   5026     ID3D11Texture1D* This,
   5027     D3D11_TEXTURE1D_DESC *pDesc);
   5028 void __RPC_STUB ID3D11Texture1D_GetDesc_Stub(
   5029     IRpcStubBuffer* This,
   5030     IRpcChannelBuffer* pRpcChannelBuffer,
   5031     PRPC_MESSAGE pRpcMessage,
   5032     DWORD* pdwStubPhase);
   5033 
   5034 #endif  /* __ID3D11Texture1D_INTERFACE_DEFINED__ */
   5035 
   5036 /*****************************************************************************
   5037  * ID3D11Texture2D interface
   5038  */
   5039 #ifndef __ID3D11Texture2D_INTERFACE_DEFINED__
   5040 #define __ID3D11Texture2D_INTERFACE_DEFINED__
   5041 
   5042 DEFINE_GUID(IID_ID3D11Texture2D, 0x6f15aaf2, 0xd208, 0x4e89, 0x9a,0xb4, 0x48,0x95,0x35,0xd3,0x4f,0x9c);
   5043 #if defined(__cplusplus) && !defined(CINTERFACE)
   5044 MIDL_INTERFACE("6f15aaf2-d208-4e89-9ab4-489535d34f9c")
   5045 ID3D11Texture2D : public ID3D11Resource
   5046 {
   5047     virtual void STDMETHODCALLTYPE GetDesc(
   5048         D3D11_TEXTURE2D_DESC *pDesc) = 0;
   5049 
   5050 };
   5051 #ifdef __CRT_UUID_DECL
   5052 __CRT_UUID_DECL(ID3D11Texture2D, 0x6f15aaf2, 0xd208, 0x4e89, 0x9a,0xb4, 0x48,0x95,0x35,0xd3,0x4f,0x9c)
   5053 #endif
   5054 #else
   5055 typedef struct ID3D11Texture2DVtbl {
   5056     BEGIN_INTERFACE
   5057 
   5058     /*** IUnknown methods ***/
   5059     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   5060         ID3D11Texture2D* This,
   5061         REFIID riid,
   5062         void **ppvObject);
   5063 
   5064     ULONG (STDMETHODCALLTYPE *AddRef)(
   5065         ID3D11Texture2D* This);
   5066 
   5067     ULONG (STDMETHODCALLTYPE *Release)(
   5068         ID3D11Texture2D* This);
   5069 
   5070     /*** ID3D11DeviceChild methods ***/
   5071     void (STDMETHODCALLTYPE *GetDevice)(
   5072         ID3D11Texture2D* This,
   5073         ID3D11Device **ppDevice);
   5074 
   5075     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   5076         ID3D11Texture2D* This,
   5077         REFGUID guid,
   5078         UINT *pDataSize,
   5079         void *pData);
   5080 
   5081     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   5082         ID3D11Texture2D* This,
   5083         REFGUID guid,
   5084         UINT DataSize,
   5085         const void *pData);
   5086 
   5087     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   5088         ID3D11Texture2D* This,
   5089         REFGUID guid,
   5090         const IUnknown *pData);
   5091 
   5092     /*** ID3D11Resource methods ***/
   5093     void (STDMETHODCALLTYPE *GetType)(
   5094         ID3D11Texture2D* This,
   5095         D3D11_RESOURCE_DIMENSION *pResourceDimension);
   5096 
   5097     void (STDMETHODCALLTYPE *SetEvictionPriority)(
   5098         ID3D11Texture2D* This,
   5099         UINT EvictionPriority);
   5100 
   5101     UINT (STDMETHODCALLTYPE *GetEvictionPriority)(
   5102         ID3D11Texture2D* This);
   5103 
   5104     /*** ID3D11Texture2D methods ***/
   5105     void (STDMETHODCALLTYPE *GetDesc)(
   5106         ID3D11Texture2D* This,
   5107         D3D11_TEXTURE2D_DESC *pDesc);
   5108 
   5109     END_INTERFACE
   5110 } ID3D11Texture2DVtbl;
   5111 interface ID3D11Texture2D {
   5112     CONST_VTBL ID3D11Texture2DVtbl* lpVtbl;
   5113 };
   5114 
   5115 #ifdef COBJMACROS
   5116 #ifndef WIDL_C_INLINE_WRAPPERS
   5117 /*** IUnknown methods ***/
   5118 #define ID3D11Texture2D_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   5119 #define ID3D11Texture2D_AddRef(This) (This)->lpVtbl->AddRef(This)
   5120 #define ID3D11Texture2D_Release(This) (This)->lpVtbl->Release(This)
   5121 /*** ID3D11DeviceChild methods ***/
   5122 #define ID3D11Texture2D_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   5123 #define ID3D11Texture2D_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   5124 #define ID3D11Texture2D_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   5125 #define ID3D11Texture2D_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   5126 /*** ID3D11Resource methods ***/
   5127 #define ID3D11Texture2D_GetType(This,pResourceDimension) (This)->lpVtbl->GetType(This,pResourceDimension)
   5128 #define ID3D11Texture2D_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority)
   5129 #define ID3D11Texture2D_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This)
   5130 /*** ID3D11Texture2D methods ***/
   5131 #define ID3D11Texture2D_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   5132 #else
   5133 /*** IUnknown methods ***/
   5134 static FORCEINLINE HRESULT ID3D11Texture2D_QueryInterface(ID3D11Texture2D* This,REFIID riid,void **ppvObject) {
   5135     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   5136 }
   5137 static FORCEINLINE ULONG ID3D11Texture2D_AddRef(ID3D11Texture2D* This) {
   5138     return This->lpVtbl->AddRef(This);
   5139 }
   5140 static FORCEINLINE ULONG ID3D11Texture2D_Release(ID3D11Texture2D* This) {
   5141     return This->lpVtbl->Release(This);
   5142 }
   5143 /*** ID3D11DeviceChild methods ***/
   5144 static FORCEINLINE void ID3D11Texture2D_GetDevice(ID3D11Texture2D* This,ID3D11Device **ppDevice) {
   5145     This->lpVtbl->GetDevice(This,ppDevice);
   5146 }
   5147 static FORCEINLINE HRESULT ID3D11Texture2D_GetPrivateData(ID3D11Texture2D* This,REFGUID guid,UINT *pDataSize,void *pData) {
   5148     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   5149 }
   5150 static FORCEINLINE HRESULT ID3D11Texture2D_SetPrivateData(ID3D11Texture2D* This,REFGUID guid,UINT DataSize,const void *pData) {
   5151     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   5152 }
   5153 static FORCEINLINE HRESULT ID3D11Texture2D_SetPrivateDataInterface(ID3D11Texture2D* This,REFGUID guid,const IUnknown *pData) {
   5154     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   5155 }
   5156 /*** ID3D11Resource methods ***/
   5157 static FORCEINLINE void ID3D11Texture2D_GetType(ID3D11Texture2D* This,D3D11_RESOURCE_DIMENSION *pResourceDimension) {
   5158     This->lpVtbl->GetType(This,pResourceDimension);
   5159 }
   5160 static FORCEINLINE void ID3D11Texture2D_SetEvictionPriority(ID3D11Texture2D* This,UINT EvictionPriority) {
   5161     This->lpVtbl->SetEvictionPriority(This,EvictionPriority);
   5162 }
   5163 static FORCEINLINE UINT ID3D11Texture2D_GetEvictionPriority(ID3D11Texture2D* This) {
   5164     return This->lpVtbl->GetEvictionPriority(This);
   5165 }
   5166 /*** ID3D11Texture2D methods ***/
   5167 static FORCEINLINE void ID3D11Texture2D_GetDesc(ID3D11Texture2D* This,D3D11_TEXTURE2D_DESC *pDesc) {
   5168     This->lpVtbl->GetDesc(This,pDesc);
   5169 }
   5170 #endif
   5171 #endif
   5172 
   5173 #endif
   5174 
   5175 void STDMETHODCALLTYPE ID3D11Texture2D_GetDesc_Proxy(
   5176     ID3D11Texture2D* This,
   5177     D3D11_TEXTURE2D_DESC *pDesc);
   5178 void __RPC_STUB ID3D11Texture2D_GetDesc_Stub(
   5179     IRpcStubBuffer* This,
   5180     IRpcChannelBuffer* pRpcChannelBuffer,
   5181     PRPC_MESSAGE pRpcMessage,
   5182     DWORD* pdwStubPhase);
   5183 
   5184 #endif  /* __ID3D11Texture2D_INTERFACE_DEFINED__ */
   5185 
   5186 /*****************************************************************************
   5187  * ID3D11Texture3D interface
   5188  */
   5189 #ifndef __ID3D11Texture3D_INTERFACE_DEFINED__
   5190 #define __ID3D11Texture3D_INTERFACE_DEFINED__
   5191 
   5192 DEFINE_GUID(IID_ID3D11Texture3D, 0x037e866e, 0xf56d, 0x4357, 0xa8,0xaf, 0x9d,0xab,0xbe,0x6e,0x25,0x0e);
   5193 #if defined(__cplusplus) && !defined(CINTERFACE)
   5194 MIDL_INTERFACE("037e866e-f56d-4357-a8af-9dabbe6e250e")
   5195 ID3D11Texture3D : public ID3D11Resource
   5196 {
   5197     virtual void STDMETHODCALLTYPE GetDesc(
   5198         D3D11_TEXTURE3D_DESC *pDesc) = 0;
   5199 
   5200 };
   5201 #ifdef __CRT_UUID_DECL
   5202 __CRT_UUID_DECL(ID3D11Texture3D, 0x037e866e, 0xf56d, 0x4357, 0xa8,0xaf, 0x9d,0xab,0xbe,0x6e,0x25,0x0e)
   5203 #endif
   5204 #else
   5205 typedef struct ID3D11Texture3DVtbl {
   5206     BEGIN_INTERFACE
   5207 
   5208     /*** IUnknown methods ***/
   5209     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   5210         ID3D11Texture3D* This,
   5211         REFIID riid,
   5212         void **ppvObject);
   5213 
   5214     ULONG (STDMETHODCALLTYPE *AddRef)(
   5215         ID3D11Texture3D* This);
   5216 
   5217     ULONG (STDMETHODCALLTYPE *Release)(
   5218         ID3D11Texture3D* This);
   5219 
   5220     /*** ID3D11DeviceChild methods ***/
   5221     void (STDMETHODCALLTYPE *GetDevice)(
   5222         ID3D11Texture3D* This,
   5223         ID3D11Device **ppDevice);
   5224 
   5225     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   5226         ID3D11Texture3D* This,
   5227         REFGUID guid,
   5228         UINT *pDataSize,
   5229         void *pData);
   5230 
   5231     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   5232         ID3D11Texture3D* This,
   5233         REFGUID guid,
   5234         UINT DataSize,
   5235         const void *pData);
   5236 
   5237     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   5238         ID3D11Texture3D* This,
   5239         REFGUID guid,
   5240         const IUnknown *pData);
   5241 
   5242     /*** ID3D11Resource methods ***/
   5243     void (STDMETHODCALLTYPE *GetType)(
   5244         ID3D11Texture3D* This,
   5245         D3D11_RESOURCE_DIMENSION *pResourceDimension);
   5246 
   5247     void (STDMETHODCALLTYPE *SetEvictionPriority)(
   5248         ID3D11Texture3D* This,
   5249         UINT EvictionPriority);
   5250 
   5251     UINT (STDMETHODCALLTYPE *GetEvictionPriority)(
   5252         ID3D11Texture3D* This);
   5253 
   5254     /*** ID3D11Texture3D methods ***/
   5255     void (STDMETHODCALLTYPE *GetDesc)(
   5256         ID3D11Texture3D* This,
   5257         D3D11_TEXTURE3D_DESC *pDesc);
   5258 
   5259     END_INTERFACE
   5260 } ID3D11Texture3DVtbl;
   5261 interface ID3D11Texture3D {
   5262     CONST_VTBL ID3D11Texture3DVtbl* lpVtbl;
   5263 };
   5264 
   5265 #ifdef COBJMACROS
   5266 #ifndef WIDL_C_INLINE_WRAPPERS
   5267 /*** IUnknown methods ***/
   5268 #define ID3D11Texture3D_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   5269 #define ID3D11Texture3D_AddRef(This) (This)->lpVtbl->AddRef(This)
   5270 #define ID3D11Texture3D_Release(This) (This)->lpVtbl->Release(This)
   5271 /*** ID3D11DeviceChild methods ***/
   5272 #define ID3D11Texture3D_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   5273 #define ID3D11Texture3D_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   5274 #define ID3D11Texture3D_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   5275 #define ID3D11Texture3D_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   5276 /*** ID3D11Resource methods ***/
   5277 #define ID3D11Texture3D_GetType(This,pResourceDimension) (This)->lpVtbl->GetType(This,pResourceDimension)
   5278 #define ID3D11Texture3D_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority)
   5279 #define ID3D11Texture3D_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This)
   5280 /*** ID3D11Texture3D methods ***/
   5281 #define ID3D11Texture3D_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   5282 #else
   5283 /*** IUnknown methods ***/
   5284 static FORCEINLINE HRESULT ID3D11Texture3D_QueryInterface(ID3D11Texture3D* This,REFIID riid,void **ppvObject) {
   5285     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   5286 }
   5287 static FORCEINLINE ULONG ID3D11Texture3D_AddRef(ID3D11Texture3D* This) {
   5288     return This->lpVtbl->AddRef(This);
   5289 }
   5290 static FORCEINLINE ULONG ID3D11Texture3D_Release(ID3D11Texture3D* This) {
   5291     return This->lpVtbl->Release(This);
   5292 }
   5293 /*** ID3D11DeviceChild methods ***/
   5294 static FORCEINLINE void ID3D11Texture3D_GetDevice(ID3D11Texture3D* This,ID3D11Device **ppDevice) {
   5295     This->lpVtbl->GetDevice(This,ppDevice);
   5296 }
   5297 static FORCEINLINE HRESULT ID3D11Texture3D_GetPrivateData(ID3D11Texture3D* This,REFGUID guid,UINT *pDataSize,void *pData) {
   5298     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   5299 }
   5300 static FORCEINLINE HRESULT ID3D11Texture3D_SetPrivateData(ID3D11Texture3D* This,REFGUID guid,UINT DataSize,const void *pData) {
   5301     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   5302 }
   5303 static FORCEINLINE HRESULT ID3D11Texture3D_SetPrivateDataInterface(ID3D11Texture3D* This,REFGUID guid,const IUnknown *pData) {
   5304     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   5305 }
   5306 /*** ID3D11Resource methods ***/
   5307 static FORCEINLINE void ID3D11Texture3D_GetType(ID3D11Texture3D* This,D3D11_RESOURCE_DIMENSION *pResourceDimension) {
   5308     This->lpVtbl->GetType(This,pResourceDimension);
   5309 }
   5310 static FORCEINLINE void ID3D11Texture3D_SetEvictionPriority(ID3D11Texture3D* This,UINT EvictionPriority) {
   5311     This->lpVtbl->SetEvictionPriority(This,EvictionPriority);
   5312 }
   5313 static FORCEINLINE UINT ID3D11Texture3D_GetEvictionPriority(ID3D11Texture3D* This) {
   5314     return This->lpVtbl->GetEvictionPriority(This);
   5315 }
   5316 /*** ID3D11Texture3D methods ***/
   5317 static FORCEINLINE void ID3D11Texture3D_GetDesc(ID3D11Texture3D* This,D3D11_TEXTURE3D_DESC *pDesc) {
   5318     This->lpVtbl->GetDesc(This,pDesc);
   5319 }
   5320 #endif
   5321 #endif
   5322 
   5323 #endif
   5324 
   5325 void STDMETHODCALLTYPE ID3D11Texture3D_GetDesc_Proxy(
   5326     ID3D11Texture3D* This,
   5327     D3D11_TEXTURE3D_DESC *pDesc);
   5328 void __RPC_STUB ID3D11Texture3D_GetDesc_Stub(
   5329     IRpcStubBuffer* This,
   5330     IRpcChannelBuffer* pRpcChannelBuffer,
   5331     PRPC_MESSAGE pRpcMessage,
   5332     DWORD* pdwStubPhase);
   5333 
   5334 #endif  /* __ID3D11Texture3D_INTERFACE_DEFINED__ */
   5335 
   5336 /*****************************************************************************
   5337  * ID3D11UnorderedAccessView interface
   5338  */
   5339 #ifndef __ID3D11UnorderedAccessView_INTERFACE_DEFINED__
   5340 #define __ID3D11UnorderedAccessView_INTERFACE_DEFINED__
   5341 
   5342 DEFINE_GUID(IID_ID3D11UnorderedAccessView, 0x28acf509, 0x7f5c, 0x48f6, 0x86,0x11, 0xf3,0x16,0x01,0x0a,0x63,0x80);
   5343 #if defined(__cplusplus) && !defined(CINTERFACE)
   5344 MIDL_INTERFACE("28acf509-7f5c-48f6-8611-f316010a6380")
   5345 ID3D11UnorderedAccessView : public ID3D11View
   5346 {
   5347     virtual void STDMETHODCALLTYPE GetDesc(
   5348         D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc) = 0;
   5349 
   5350 };
   5351 #ifdef __CRT_UUID_DECL
   5352 __CRT_UUID_DECL(ID3D11UnorderedAccessView, 0x28acf509, 0x7f5c, 0x48f6, 0x86,0x11, 0xf3,0x16,0x01,0x0a,0x63,0x80)
   5353 #endif
   5354 #else
   5355 typedef struct ID3D11UnorderedAccessViewVtbl {
   5356     BEGIN_INTERFACE
   5357 
   5358     /*** IUnknown methods ***/
   5359     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   5360         ID3D11UnorderedAccessView* This,
   5361         REFIID riid,
   5362         void **ppvObject);
   5363 
   5364     ULONG (STDMETHODCALLTYPE *AddRef)(
   5365         ID3D11UnorderedAccessView* This);
   5366 
   5367     ULONG (STDMETHODCALLTYPE *Release)(
   5368         ID3D11UnorderedAccessView* This);
   5369 
   5370     /*** ID3D11DeviceChild methods ***/
   5371     void (STDMETHODCALLTYPE *GetDevice)(
   5372         ID3D11UnorderedAccessView* This,
   5373         ID3D11Device **ppDevice);
   5374 
   5375     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   5376         ID3D11UnorderedAccessView* This,
   5377         REFGUID guid,
   5378         UINT *pDataSize,
   5379         void *pData);
   5380 
   5381     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   5382         ID3D11UnorderedAccessView* This,
   5383         REFGUID guid,
   5384         UINT DataSize,
   5385         const void *pData);
   5386 
   5387     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   5388         ID3D11UnorderedAccessView* This,
   5389         REFGUID guid,
   5390         const IUnknown *pData);
   5391 
   5392     /*** ID3D11View methods ***/
   5393     void (STDMETHODCALLTYPE *GetResource)(
   5394         ID3D11UnorderedAccessView* This,
   5395         ID3D11Resource **ppResource);
   5396 
   5397     /*** ID3D11UnorderedAccessView methods ***/
   5398     void (STDMETHODCALLTYPE *GetDesc)(
   5399         ID3D11UnorderedAccessView* This,
   5400         D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc);
   5401 
   5402     END_INTERFACE
   5403 } ID3D11UnorderedAccessViewVtbl;
   5404 interface ID3D11UnorderedAccessView {
   5405     CONST_VTBL ID3D11UnorderedAccessViewVtbl* lpVtbl;
   5406 };
   5407 
   5408 #ifdef COBJMACROS
   5409 #ifndef WIDL_C_INLINE_WRAPPERS
   5410 /*** IUnknown methods ***/
   5411 #define ID3D11UnorderedAccessView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   5412 #define ID3D11UnorderedAccessView_AddRef(This) (This)->lpVtbl->AddRef(This)
   5413 #define ID3D11UnorderedAccessView_Release(This) (This)->lpVtbl->Release(This)
   5414 /*** ID3D11DeviceChild methods ***/
   5415 #define ID3D11UnorderedAccessView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   5416 #define ID3D11UnorderedAccessView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   5417 #define ID3D11UnorderedAccessView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   5418 #define ID3D11UnorderedAccessView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   5419 /*** ID3D11View methods ***/
   5420 #define ID3D11UnorderedAccessView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource)
   5421 /*** ID3D11UnorderedAccessView methods ***/
   5422 #define ID3D11UnorderedAccessView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   5423 #else
   5424 /*** IUnknown methods ***/
   5425 static FORCEINLINE HRESULT ID3D11UnorderedAccessView_QueryInterface(ID3D11UnorderedAccessView* This,REFIID riid,void **ppvObject) {
   5426     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   5427 }
   5428 static FORCEINLINE ULONG ID3D11UnorderedAccessView_AddRef(ID3D11UnorderedAccessView* This) {
   5429     return This->lpVtbl->AddRef(This);
   5430 }
   5431 static FORCEINLINE ULONG ID3D11UnorderedAccessView_Release(ID3D11UnorderedAccessView* This) {
   5432     return This->lpVtbl->Release(This);
   5433 }
   5434 /*** ID3D11DeviceChild methods ***/
   5435 static FORCEINLINE void ID3D11UnorderedAccessView_GetDevice(ID3D11UnorderedAccessView* This,ID3D11Device **ppDevice) {
   5436     This->lpVtbl->GetDevice(This,ppDevice);
   5437 }
   5438 static FORCEINLINE HRESULT ID3D11UnorderedAccessView_GetPrivateData(ID3D11UnorderedAccessView* This,REFGUID guid,UINT *pDataSize,void *pData) {
   5439     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   5440 }
   5441 static FORCEINLINE HRESULT ID3D11UnorderedAccessView_SetPrivateData(ID3D11UnorderedAccessView* This,REFGUID guid,UINT DataSize,const void *pData) {
   5442     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   5443 }
   5444 static FORCEINLINE HRESULT ID3D11UnorderedAccessView_SetPrivateDataInterface(ID3D11UnorderedAccessView* This,REFGUID guid,const IUnknown *pData) {
   5445     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   5446 }
   5447 /*** ID3D11View methods ***/
   5448 static FORCEINLINE void ID3D11UnorderedAccessView_GetResource(ID3D11UnorderedAccessView* This,ID3D11Resource **ppResource) {
   5449     This->lpVtbl->GetResource(This,ppResource);
   5450 }
   5451 /*** ID3D11UnorderedAccessView methods ***/
   5452 static FORCEINLINE void ID3D11UnorderedAccessView_GetDesc(ID3D11UnorderedAccessView* This,D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc) {
   5453     This->lpVtbl->GetDesc(This,pDesc);
   5454 }
   5455 #endif
   5456 #endif
   5457 
   5458 #endif
   5459 
   5460 void STDMETHODCALLTYPE ID3D11UnorderedAccessView_GetDesc_Proxy(
   5461     ID3D11UnorderedAccessView* This,
   5462     D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc);
   5463 void __RPC_STUB ID3D11UnorderedAccessView_GetDesc_Stub(
   5464     IRpcStubBuffer* This,
   5465     IRpcChannelBuffer* pRpcChannelBuffer,
   5466     PRPC_MESSAGE pRpcMessage,
   5467     DWORD* pdwStubPhase);
   5468 
   5469 #endif  /* __ID3D11UnorderedAccessView_INTERFACE_DEFINED__ */
   5470 
   5471 /*****************************************************************************
   5472  * ID3D11VertexShader interface
   5473  */
   5474 #ifndef __ID3D11VertexShader_INTERFACE_DEFINED__
   5475 #define __ID3D11VertexShader_INTERFACE_DEFINED__
   5476 
   5477 DEFINE_GUID(IID_ID3D11VertexShader, 0x3b301d64, 0xd678, 0x4289, 0x88,0x97, 0x22,0xf8,0x92,0x8b,0x72,0xf3);
   5478 #if defined(__cplusplus) && !defined(CINTERFACE)
   5479 MIDL_INTERFACE("3b301d64-d678-4289-8897-22f8928b72f3")
   5480 ID3D11VertexShader : public ID3D11DeviceChild
   5481 {
   5482 };
   5483 #ifdef __CRT_UUID_DECL
   5484 __CRT_UUID_DECL(ID3D11VertexShader, 0x3b301d64, 0xd678, 0x4289, 0x88,0x97, 0x22,0xf8,0x92,0x8b,0x72,0xf3)
   5485 #endif
   5486 #else
   5487 typedef struct ID3D11VertexShaderVtbl {
   5488     BEGIN_INTERFACE
   5489 
   5490     /*** IUnknown methods ***/
   5491     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   5492         ID3D11VertexShader* This,
   5493         REFIID riid,
   5494         void **ppvObject);
   5495 
   5496     ULONG (STDMETHODCALLTYPE *AddRef)(
   5497         ID3D11VertexShader* This);
   5498 
   5499     ULONG (STDMETHODCALLTYPE *Release)(
   5500         ID3D11VertexShader* This);
   5501 
   5502     /*** ID3D11DeviceChild methods ***/
   5503     void (STDMETHODCALLTYPE *GetDevice)(
   5504         ID3D11VertexShader* This,
   5505         ID3D11Device **ppDevice);
   5506 
   5507     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   5508         ID3D11VertexShader* This,
   5509         REFGUID guid,
   5510         UINT *pDataSize,
   5511         void *pData);
   5512 
   5513     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   5514         ID3D11VertexShader* This,
   5515         REFGUID guid,
   5516         UINT DataSize,
   5517         const void *pData);
   5518 
   5519     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   5520         ID3D11VertexShader* This,
   5521         REFGUID guid,
   5522         const IUnknown *pData);
   5523 
   5524     END_INTERFACE
   5525 } ID3D11VertexShaderVtbl;
   5526 interface ID3D11VertexShader {
   5527     CONST_VTBL ID3D11VertexShaderVtbl* lpVtbl;
   5528 };
   5529 
   5530 #ifdef COBJMACROS
   5531 #ifndef WIDL_C_INLINE_WRAPPERS
   5532 /*** IUnknown methods ***/
   5533 #define ID3D11VertexShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   5534 #define ID3D11VertexShader_AddRef(This) (This)->lpVtbl->AddRef(This)
   5535 #define ID3D11VertexShader_Release(This) (This)->lpVtbl->Release(This)
   5536 /*** ID3D11DeviceChild methods ***/
   5537 #define ID3D11VertexShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   5538 #define ID3D11VertexShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   5539 #define ID3D11VertexShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   5540 #define ID3D11VertexShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   5541 #else
   5542 /*** IUnknown methods ***/
   5543 static FORCEINLINE HRESULT ID3D11VertexShader_QueryInterface(ID3D11VertexShader* This,REFIID riid,void **ppvObject) {
   5544     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   5545 }
   5546 static FORCEINLINE ULONG ID3D11VertexShader_AddRef(ID3D11VertexShader* This) {
   5547     return This->lpVtbl->AddRef(This);
   5548 }
   5549 static FORCEINLINE ULONG ID3D11VertexShader_Release(ID3D11VertexShader* This) {
   5550     return This->lpVtbl->Release(This);
   5551 }
   5552 /*** ID3D11DeviceChild methods ***/
   5553 static FORCEINLINE void ID3D11VertexShader_GetDevice(ID3D11VertexShader* This,ID3D11Device **ppDevice) {
   5554     This->lpVtbl->GetDevice(This,ppDevice);
   5555 }
   5556 static FORCEINLINE HRESULT ID3D11VertexShader_GetPrivateData(ID3D11VertexShader* This,REFGUID guid,UINT *pDataSize,void *pData) {
   5557     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   5558 }
   5559 static FORCEINLINE HRESULT ID3D11VertexShader_SetPrivateData(ID3D11VertexShader* This,REFGUID guid,UINT DataSize,const void *pData) {
   5560     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   5561 }
   5562 static FORCEINLINE HRESULT ID3D11VertexShader_SetPrivateDataInterface(ID3D11VertexShader* This,REFGUID guid,const IUnknown *pData) {
   5563     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   5564 }
   5565 #endif
   5566 #endif
   5567 
   5568 #endif
   5569 
   5570 
   5571 #endif  /* __ID3D11VertexShader_INTERFACE_DEFINED__ */
   5572 
   5573 /*****************************************************************************
   5574  * ID3D11DeviceContext interface
   5575  */
   5576 #ifndef __ID3D11DeviceContext_INTERFACE_DEFINED__
   5577 #define __ID3D11DeviceContext_INTERFACE_DEFINED__
   5578 
   5579 DEFINE_GUID(IID_ID3D11DeviceContext, 0xc0bfa96c, 0xe089, 0x44fb, 0x8e,0xaf, 0x26,0xf8,0x79,0x61,0x90,0xda);
   5580 #if defined(__cplusplus) && !defined(CINTERFACE)
   5581 MIDL_INTERFACE("c0bfa96c-e089-44fb-8eaf-26f8796190da")
   5582 ID3D11DeviceContext : public ID3D11DeviceChild
   5583 {
   5584     virtual void STDMETHODCALLTYPE VSSetConstantBuffers(
   5585         UINT StartSlot,
   5586         UINT NumBuffers,
   5587         ID3D11Buffer *const *ppConstantBuffers) = 0;
   5588 
   5589     virtual void STDMETHODCALLTYPE PSSetShaderResources(
   5590         UINT StartSlot,
   5591         UINT NumViews,
   5592         ID3D11ShaderResourceView *const *ppShaderResourceViews) = 0;
   5593 
   5594     virtual void STDMETHODCALLTYPE PSSetShader(
   5595         ID3D11PixelShader *pPixelShader,
   5596         ID3D11ClassInstance *const *ppClassInstances,
   5597         UINT NumClassInstances) = 0;
   5598 
   5599     virtual void STDMETHODCALLTYPE PSSetSamplers(
   5600         UINT StartSlot,
   5601         UINT NumSamplers,
   5602         ID3D11SamplerState *const *ppSamplers) = 0;
   5603 
   5604     virtual void STDMETHODCALLTYPE VSSetShader(
   5605         ID3D11VertexShader *pVertexShader,
   5606         ID3D11ClassInstance *const *ppClassInstances,
   5607         UINT NumClassInstances) = 0;
   5608 
   5609     virtual void STDMETHODCALLTYPE DrawIndexed(
   5610         UINT IndexCount,
   5611         UINT StartIndexLocation,
   5612         INT BaseVertexLocation) = 0;
   5613 
   5614     virtual void STDMETHODCALLTYPE Draw(
   5615         UINT VertexCount,
   5616         UINT StartVertexLocation) = 0;
   5617 
   5618     virtual HRESULT STDMETHODCALLTYPE Map(
   5619         ID3D11Resource *pResource,
   5620         UINT Subresource,
   5621         D3D11_MAP MapType,
   5622         UINT MapFlags,
   5623         D3D11_MAPPED_SUBRESOURCE *pMappedResource) = 0;
   5624 
   5625     virtual void STDMETHODCALLTYPE Unmap(
   5626         ID3D11Resource *pResource,
   5627         UINT Subresource) = 0;
   5628 
   5629     virtual void STDMETHODCALLTYPE PSSetConstantBuffers(
   5630         UINT StartSlot,
   5631         UINT NumBuffers,
   5632         ID3D11Buffer *const *ppConstantBuffers) = 0;
   5633 
   5634     virtual void STDMETHODCALLTYPE IASetInputLayout(
   5635         ID3D11InputLayout *pInputLayout) = 0;
   5636 
   5637     virtual void STDMETHODCALLTYPE IASetVertexBuffers(
   5638         UINT StartSlot,
   5639         UINT NumBuffers,
   5640         ID3D11Buffer *const *ppVertexBuffers,
   5641         const UINT *pStrides,
   5642         const UINT *pOffsets) = 0;
   5643 
   5644     virtual void STDMETHODCALLTYPE IASetIndexBuffer(
   5645         ID3D11Buffer *pIndexBuffer,
   5646         DXGI_FORMAT Format,
   5647         UINT Offset) = 0;
   5648 
   5649     virtual void STDMETHODCALLTYPE DrawIndexedInstanced(
   5650         UINT IndexCountPerInstance,
   5651         UINT InstanceCount,
   5652         UINT StartIndexLocation,
   5653         INT BaseVertexLocation,
   5654         UINT StartInstanceLocation) = 0;
   5655 
   5656     virtual void STDMETHODCALLTYPE DrawInstanced(
   5657         UINT VertexCountPerInstance,
   5658         UINT InstanceCount,
   5659         UINT StartVertexLocation,
   5660         UINT StartInstanceLocation) = 0;
   5661 
   5662     virtual void STDMETHODCALLTYPE GSSetConstantBuffers(
   5663         UINT StartSlot,
   5664         UINT NumBuffers,
   5665         ID3D11Buffer *const *ppConstantBuffers) = 0;
   5666 
   5667     virtual void STDMETHODCALLTYPE GSSetShader(
   5668         ID3D11GeometryShader *pShader,
   5669         ID3D11ClassInstance *const *ppClassInstances,
   5670         UINT NumClassInstances) = 0;
   5671 
   5672     virtual void STDMETHODCALLTYPE IASetPrimitiveTopology(
   5673         D3D11_PRIMITIVE_TOPOLOGY Topology) = 0;
   5674 
   5675     virtual void STDMETHODCALLTYPE VSSetShaderResources(
   5676         UINT StartSlot,
   5677         UINT NumViews,
   5678         ID3D11ShaderResourceView *const *ppShaderResourceViews) = 0;
   5679 
   5680     virtual void STDMETHODCALLTYPE VSSetSamplers(
   5681         UINT StartSlot,
   5682         UINT NumSamplers,
   5683         ID3D11SamplerState *const *ppSamplers) = 0;
   5684 
   5685     virtual void STDMETHODCALLTYPE Begin(
   5686         ID3D11Asynchronous *pAsync) = 0;
   5687 
   5688     virtual void STDMETHODCALLTYPE End(
   5689         ID3D11Asynchronous *pAsync) = 0;
   5690 
   5691     virtual HRESULT STDMETHODCALLTYPE GetData(
   5692         ID3D11Asynchronous *pAsync,
   5693         void *pData,
   5694         UINT DataSize,
   5695         UINT GetDataFlags) = 0;
   5696 
   5697     virtual void STDMETHODCALLTYPE SetPredication(
   5698         ID3D11Predicate *pPredicate,
   5699         WINBOOL PredicateValue) = 0;
   5700 
   5701     virtual void STDMETHODCALLTYPE GSSetShaderResources(
   5702         UINT StartSlot,
   5703         UINT NumViews,
   5704         ID3D11ShaderResourceView *const *ppShaderResourceViews) = 0;
   5705 
   5706     virtual void STDMETHODCALLTYPE GSSetSamplers(
   5707         UINT StartSlot,
   5708         UINT NumSamplers,
   5709         ID3D11SamplerState *const *ppSamplers) = 0;
   5710 
   5711     virtual void STDMETHODCALLTYPE OMSetRenderTargets(
   5712         UINT NumViews,
   5713         ID3D11RenderTargetView *const *ppRenderTargetViews,
   5714         ID3D11DepthStencilView *pDepthStencilView) = 0;
   5715 
   5716     virtual void STDMETHODCALLTYPE OMSetRenderTargetsAndUnorderedAccessViews(
   5717         UINT NumRTVs,
   5718         ID3D11RenderTargetView *const *ppRenderTargetViews,
   5719         ID3D11DepthStencilView *pDepthStencilView,
   5720         UINT UAVStartSlot,
   5721         UINT NumUAVs,
   5722         ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,
   5723         const UINT *pUAVInitialCounts) = 0;
   5724 
   5725     virtual void STDMETHODCALLTYPE OMSetBlendState(
   5726         ID3D11BlendState *pBlendState,
   5727         const FLOAT BlendFactor[4],
   5728         UINT SampleMask) = 0;
   5729 
   5730     virtual void STDMETHODCALLTYPE OMSetDepthStencilState(
   5731         ID3D11DepthStencilState *pDepthStencilState,
   5732         UINT StencilRef) = 0;
   5733 
   5734     virtual void STDMETHODCALLTYPE SOSetTargets(
   5735         UINT NumBuffers,
   5736         ID3D11Buffer *const *ppSOTargets,
   5737         const UINT *pOffsets) = 0;
   5738 
   5739     virtual void STDMETHODCALLTYPE DrawAuto(
   5740         ) = 0;
   5741 
   5742     virtual void STDMETHODCALLTYPE DrawIndexedInstancedIndirect(
   5743         ID3D11Buffer *pBufferForArgs,
   5744         UINT AlignedByteOffsetForArgs) = 0;
   5745 
   5746     virtual void STDMETHODCALLTYPE DrawInstancedIndirect(
   5747         ID3D11Buffer *pBufferForArgs,
   5748         UINT AlignedByteOffsetForArgs) = 0;
   5749 
   5750     virtual void STDMETHODCALLTYPE Dispatch(
   5751         UINT ThreadGroupCountX,
   5752         UINT ThreadGroupCountY,
   5753         UINT ThreadGroupCountZ) = 0;
   5754 
   5755     virtual void STDMETHODCALLTYPE DispatchIndirect(
   5756         ID3D11Buffer *pBufferForArgs,
   5757         UINT AlignedByteOffsetForArgs) = 0;
   5758 
   5759     virtual void STDMETHODCALLTYPE RSSetState(
   5760         ID3D11RasterizerState *pRasterizerState) = 0;
   5761 
   5762     virtual void STDMETHODCALLTYPE RSSetViewports(
   5763         UINT NumViewports,
   5764         const D3D11_VIEWPORT *pViewports) = 0;
   5765 
   5766     virtual void STDMETHODCALLTYPE RSSetScissorRects(
   5767         UINT NumRects,
   5768         const D3D11_RECT *pRects) = 0;
   5769 
   5770     virtual void STDMETHODCALLTYPE CopySubresourceRegion(
   5771         ID3D11Resource *pDstResource,
   5772         UINT DstSubresource,
   5773         UINT DstX,
   5774         UINT DstY,
   5775         UINT DstZ,
   5776         ID3D11Resource *pSrcResource,
   5777         UINT SrcSubresource,
   5778         const D3D11_BOX *pSrcBox) = 0;
   5779 
   5780     virtual void STDMETHODCALLTYPE CopyResource(
   5781         ID3D11Resource *pDstResource,
   5782         ID3D11Resource *pSrcResource) = 0;
   5783 
   5784     virtual void STDMETHODCALLTYPE UpdateSubresource(
   5785         ID3D11Resource *pDstResource,
   5786         UINT DstSubresource,
   5787         const D3D11_BOX *pDstBox,
   5788         const void *pSrcData,
   5789         UINT SrcRowPitch,
   5790         UINT SrcDepthPitch) = 0;
   5791 
   5792     virtual void STDMETHODCALLTYPE CopyStructureCount(
   5793         ID3D11Buffer *pDstBuffer,
   5794         UINT DstAlignedByteOffset,
   5795         ID3D11UnorderedAccessView *pSrcView) = 0;
   5796 
   5797     virtual void STDMETHODCALLTYPE ClearRenderTargetView(
   5798         ID3D11RenderTargetView *pRenderTargetView,
   5799         const FLOAT ColorRGBA[4]) = 0;
   5800 
   5801     virtual void STDMETHODCALLTYPE ClearUnorderedAccessViewUint(
   5802         ID3D11UnorderedAccessView *pUnorderedAccessView,
   5803         const UINT Values[4]) = 0;
   5804 
   5805     virtual void STDMETHODCALLTYPE ClearUnorderedAccessViewFloat(
   5806         ID3D11UnorderedAccessView *pUnorderedAccessView,
   5807         const FLOAT Values[4]) = 0;
   5808 
   5809     virtual void STDMETHODCALLTYPE ClearDepthStencilView(
   5810         ID3D11DepthStencilView *pDepthStencilView,
   5811         UINT ClearFlags,
   5812         FLOAT Depth,
   5813         UINT8 Stencil) = 0;
   5814 
   5815     virtual void STDMETHODCALLTYPE GenerateMips(
   5816         ID3D11ShaderResourceView *pShaderResourceView) = 0;
   5817 
   5818     virtual void STDMETHODCALLTYPE SetResourceMinLOD(
   5819         ID3D11Resource *pResource,
   5820         FLOAT MinLOD) = 0;
   5821 
   5822     virtual FLOAT STDMETHODCALLTYPE GetResourceMinLOD(
   5823         ID3D11Resource *pResource) = 0;
   5824 
   5825     virtual void STDMETHODCALLTYPE ResolveSubresource(
   5826         ID3D11Resource *pDstResource,
   5827         UINT DstSubresource,
   5828         ID3D11Resource *pSrcResource,
   5829         UINT SrcSubresource,
   5830         DXGI_FORMAT Format) = 0;
   5831 
   5832     virtual void STDMETHODCALLTYPE ExecuteCommandList(
   5833         ID3D11CommandList *pCommandList,
   5834         WINBOOL RestoreContextState) = 0;
   5835 
   5836     virtual void STDMETHODCALLTYPE HSSetShaderResources(
   5837         UINT StartSlot,
   5838         UINT NumViews,
   5839         ID3D11ShaderResourceView *const *ppShaderResourceViews) = 0;
   5840 
   5841     virtual void STDMETHODCALLTYPE HSSetShader(
   5842         ID3D11HullShader *pHullShader,
   5843         ID3D11ClassInstance *const *ppClassInstances,
   5844         UINT NumClassInstances) = 0;
   5845 
   5846     virtual void STDMETHODCALLTYPE HSSetSamplers(
   5847         UINT StartSlot,
   5848         UINT NumSamplers,
   5849         ID3D11SamplerState *const *ppSamplers) = 0;
   5850 
   5851     virtual void STDMETHODCALLTYPE HSSetConstantBuffers(
   5852         UINT StartSlot,
   5853         UINT NumBuffers,
   5854         ID3D11Buffer *const *ppConstantBuffers) = 0;
   5855 
   5856     virtual void STDMETHODCALLTYPE DSSetShaderResources(
   5857         UINT StartSlot,
   5858         UINT NumViews,
   5859         ID3D11ShaderResourceView *const *ppShaderResourceViews) = 0;
   5860 
   5861     virtual void STDMETHODCALLTYPE DSSetShader(
   5862         ID3D11DomainShader *pDomainShader,
   5863         ID3D11ClassInstance *const *ppClassInstances,
   5864         UINT NumClassInstances) = 0;
   5865 
   5866     virtual void STDMETHODCALLTYPE DSSetSamplers(
   5867         UINT StartSlot,
   5868         UINT NumSamplers,
   5869         ID3D11SamplerState *const *ppSamplers) = 0;
   5870 
   5871     virtual void STDMETHODCALLTYPE DSSetConstantBuffers(
   5872         UINT StartSlot,
   5873         UINT NumBuffers,
   5874         ID3D11Buffer *const *ppConstantBuffers) = 0;
   5875 
   5876     virtual void STDMETHODCALLTYPE CSSetShaderResources(
   5877         UINT StartSlot,
   5878         UINT NumViews,
   5879         ID3D11ShaderResourceView *const *ppShaderResourceViews) = 0;
   5880 
   5881     virtual void STDMETHODCALLTYPE CSSetUnorderedAccessViews(
   5882         UINT StartSlot,
   5883         UINT NumUAVs,
   5884         ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,
   5885         const UINT *pUAVInitialCounts) = 0;
   5886 
   5887     virtual void STDMETHODCALLTYPE CSSetShader(
   5888         ID3D11ComputeShader *pComputeShader,
   5889         ID3D11ClassInstance *const *ppClassInstances,
   5890         UINT NumClassInstances) = 0;
   5891 
   5892     virtual void STDMETHODCALLTYPE CSSetSamplers(
   5893         UINT StartSlot,
   5894         UINT NumSamplers,
   5895         ID3D11SamplerState *const *ppSamplers) = 0;
   5896 
   5897     virtual void STDMETHODCALLTYPE CSSetConstantBuffers(
   5898         UINT StartSlot,
   5899         UINT NumBuffers,
   5900         ID3D11Buffer *const *ppConstantBuffers) = 0;
   5901 
   5902     virtual void STDMETHODCALLTYPE VSGetConstantBuffers(
   5903         UINT StartSlot,
   5904         UINT NumBuffers,
   5905         ID3D11Buffer **ppConstantBuffers) = 0;
   5906 
   5907     virtual void STDMETHODCALLTYPE PSGetShaderResources(
   5908         UINT StartSlot,
   5909         UINT NumViews,
   5910         ID3D11ShaderResourceView **ppShaderResourceViews) = 0;
   5911 
   5912     virtual void STDMETHODCALLTYPE PSGetShader(
   5913         ID3D11PixelShader **ppPixelShader,
   5914         ID3D11ClassInstance **ppClassInstances,
   5915         UINT *pNumClassInstances) = 0;
   5916 
   5917     virtual void STDMETHODCALLTYPE PSGetSamplers(
   5918         UINT StartSlot,
   5919         UINT NumSamplers,
   5920         ID3D11SamplerState **ppSamplers) = 0;
   5921 
   5922     virtual void STDMETHODCALLTYPE VSGetShader(
   5923         ID3D11VertexShader **ppVertexShader,
   5924         ID3D11ClassInstance **ppClassInstances,
   5925         UINT *pNumClassInstances) = 0;
   5926 
   5927     virtual void STDMETHODCALLTYPE PSGetConstantBuffers(
   5928         UINT StartSlot,
   5929         UINT NumBuffers,
   5930         ID3D11Buffer **ppConstantBuffers) = 0;
   5931 
   5932     virtual void STDMETHODCALLTYPE IAGetInputLayout(
   5933         ID3D11InputLayout **ppInputLayout) = 0;
   5934 
   5935     virtual void STDMETHODCALLTYPE IAGetVertexBuffers(
   5936         UINT StartSlot,
   5937         UINT NumBuffers,
   5938         ID3D11Buffer **ppVertexBuffers,
   5939         UINT *pStrides,
   5940         UINT *pOffsets) = 0;
   5941 
   5942     virtual void STDMETHODCALLTYPE IAGetIndexBuffer(
   5943         ID3D11Buffer **pIndexBuffer,
   5944         DXGI_FORMAT *Format,
   5945         UINT *Offset) = 0;
   5946 
   5947     virtual void STDMETHODCALLTYPE GSGetConstantBuffers(
   5948         UINT StartSlot,
   5949         UINT NumBuffers,
   5950         ID3D11Buffer **ppConstantBuffers) = 0;
   5951 
   5952     virtual void STDMETHODCALLTYPE GSGetShader(
   5953         ID3D11GeometryShader **ppGeometryShader,
   5954         ID3D11ClassInstance **ppClassInstances,
   5955         UINT *pNumClassInstances) = 0;
   5956 
   5957     virtual void STDMETHODCALLTYPE IAGetPrimitiveTopology(
   5958         D3D11_PRIMITIVE_TOPOLOGY *pTopology) = 0;
   5959 
   5960     virtual void STDMETHODCALLTYPE VSGetShaderResources(
   5961         UINT StartSlot,
   5962         UINT NumViews,
   5963         ID3D11ShaderResourceView **ppShaderResourceViews) = 0;
   5964 
   5965     virtual void STDMETHODCALLTYPE VSGetSamplers(
   5966         UINT StartSlot,
   5967         UINT NumSamplers,
   5968         ID3D11SamplerState **ppSamplers) = 0;
   5969 
   5970     virtual void STDMETHODCALLTYPE GetPredication(
   5971         ID3D11Predicate **ppPredicate,
   5972         WINBOOL *pPredicateValue) = 0;
   5973 
   5974     virtual void STDMETHODCALLTYPE GSGetShaderResources(
   5975         UINT StartSlot,
   5976         UINT NumViews,
   5977         ID3D11ShaderResourceView **ppShaderResourceViews) = 0;
   5978 
   5979     virtual void STDMETHODCALLTYPE GSGetSamplers(
   5980         UINT StartSlot,
   5981         UINT NumSamplers,
   5982         ID3D11SamplerState **ppSamplers) = 0;
   5983 
   5984     virtual void STDMETHODCALLTYPE OMGetRenderTargets(
   5985         UINT NumViews,
   5986         ID3D11RenderTargetView **ppRenderTargetViews,
   5987         ID3D11DepthStencilView **ppDepthStencilView) = 0;
   5988 
   5989     virtual void STDMETHODCALLTYPE OMGetRenderTargetsAndUnorderedAccessViews(
   5990         UINT NumRTVs,
   5991         ID3D11RenderTargetView **ppRenderTargetViews,
   5992         ID3D11DepthStencilView **ppDepthStencilView,
   5993         UINT UAVStartSlot,
   5994         UINT NumUAVs,
   5995         ID3D11UnorderedAccessView **ppUnorderedAccessViews) = 0;
   5996 
   5997     virtual void STDMETHODCALLTYPE OMGetBlendState(
   5998         ID3D11BlendState **ppBlendState,
   5999         FLOAT BlendFactor[4],
   6000         UINT *pSampleMask) = 0;
   6001 
   6002     virtual void STDMETHODCALLTYPE OMGetDepthStencilState(
   6003         ID3D11DepthStencilState **ppDepthStencilState,
   6004         UINT *pStencilRef) = 0;
   6005 
   6006     virtual void STDMETHODCALLTYPE SOGetTargets(
   6007         UINT NumBuffers,
   6008         ID3D11Buffer **ppSOTargets) = 0;
   6009 
   6010     virtual void STDMETHODCALLTYPE RSGetState(
   6011         ID3D11RasterizerState **ppRasterizerState) = 0;
   6012 
   6013     virtual void STDMETHODCALLTYPE RSGetViewports(
   6014         UINT *pNumViewports,
   6015         D3D11_VIEWPORT *pViewports) = 0;
   6016 
   6017     virtual void STDMETHODCALLTYPE RSGetScissorRects(
   6018         UINT *pNumRects,
   6019         D3D11_RECT *pRects) = 0;
   6020 
   6021     virtual void STDMETHODCALLTYPE HSGetShaderResources(
   6022         UINT StartSlot,
   6023         UINT NumViews,
   6024         ID3D11ShaderResourceView **ppShaderResourceViews) = 0;
   6025 
   6026     virtual void STDMETHODCALLTYPE HSGetShader(
   6027         ID3D11HullShader **ppHullShader,
   6028         ID3D11ClassInstance **ppClassInstances,
   6029         UINT *pNumClassInstances) = 0;
   6030 
   6031     virtual void STDMETHODCALLTYPE HSGetSamplers(
   6032         UINT StartSlot,
   6033         UINT NumSamplers,
   6034         ID3D11SamplerState **ppSamplers) = 0;
   6035 
   6036     virtual void STDMETHODCALLTYPE HSGetConstantBuffers(
   6037         UINT StartSlot,
   6038         UINT NumBuffers,
   6039         ID3D11Buffer **ppConstantBuffers) = 0;
   6040 
   6041     virtual void STDMETHODCALLTYPE DSGetShaderResources(
   6042         UINT StartSlot,
   6043         UINT NumViews,
   6044         ID3D11ShaderResourceView **ppShaderResourceViews) = 0;
   6045 
   6046     virtual void STDMETHODCALLTYPE DSGetShader(
   6047         ID3D11DomainShader **ppDomainShader,
   6048         ID3D11ClassInstance **ppClassInstances,
   6049         UINT *pNumClassInstances) = 0;
   6050 
   6051     virtual void STDMETHODCALLTYPE DSGetSamplers(
   6052         UINT StartSlot,
   6053         UINT NumSamplers,
   6054         ID3D11SamplerState **ppSamplers) = 0;
   6055 
   6056     virtual void STDMETHODCALLTYPE DSGetConstantBuffers(
   6057         UINT StartSlot,
   6058         UINT NumBuffers,
   6059         ID3D11Buffer **ppConstantBuffers) = 0;
   6060 
   6061     virtual void STDMETHODCALLTYPE CSGetShaderResources(
   6062         UINT StartSlot,
   6063         UINT NumViews,
   6064         ID3D11ShaderResourceView **ppShaderResourceViews) = 0;
   6065 
   6066     virtual void STDMETHODCALLTYPE CSGetUnorderedAccessViews(
   6067         UINT StartSlot,
   6068         UINT NumUAVs,
   6069         ID3D11UnorderedAccessView **ppUnorderedAccessViews) = 0;
   6070 
   6071     virtual void STDMETHODCALLTYPE CSGetShader(
   6072         ID3D11ComputeShader **ppComputeShader,
   6073         ID3D11ClassInstance **ppClassInstances,
   6074         UINT *pNumClassInstances) = 0;
   6075 
   6076     virtual void STDMETHODCALLTYPE CSGetSamplers(
   6077         UINT StartSlot,
   6078         UINT NumSamplers,
   6079         ID3D11SamplerState **ppSamplers) = 0;
   6080 
   6081     virtual void STDMETHODCALLTYPE CSGetConstantBuffers(
   6082         UINT StartSlot,
   6083         UINT NumBuffers,
   6084         ID3D11Buffer **ppConstantBuffers) = 0;
   6085 
   6086     virtual void STDMETHODCALLTYPE ClearState(
   6087         ) = 0;
   6088 
   6089     virtual void STDMETHODCALLTYPE Flush(
   6090         ) = 0;
   6091 
   6092     virtual D3D11_DEVICE_CONTEXT_TYPE STDMETHODCALLTYPE GetType(
   6093         ) = 0;
   6094 
   6095     virtual UINT STDMETHODCALLTYPE GetContextFlags(
   6096         ) = 0;
   6097 
   6098     virtual HRESULT STDMETHODCALLTYPE FinishCommandList(
   6099         WINBOOL RestoreDeferredContextState,
   6100         ID3D11CommandList **ppCommandList) = 0;
   6101 
   6102 };
   6103 #ifdef __CRT_UUID_DECL
   6104 __CRT_UUID_DECL(ID3D11DeviceContext, 0xc0bfa96c, 0xe089, 0x44fb, 0x8e,0xaf, 0x26,0xf8,0x79,0x61,0x90,0xda)
   6105 #endif
   6106 #else
   6107 typedef struct ID3D11DeviceContextVtbl {
   6108     BEGIN_INTERFACE
   6109 
   6110     /*** IUnknown methods ***/
   6111     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   6112         ID3D11DeviceContext* This,
   6113         REFIID riid,
   6114         void **ppvObject);
   6115 
   6116     ULONG (STDMETHODCALLTYPE *AddRef)(
   6117         ID3D11DeviceContext* This);
   6118 
   6119     ULONG (STDMETHODCALLTYPE *Release)(
   6120         ID3D11DeviceContext* This);
   6121 
   6122     /*** ID3D11DeviceChild methods ***/
   6123     void (STDMETHODCALLTYPE *GetDevice)(
   6124         ID3D11DeviceContext* This,
   6125         ID3D11Device **ppDevice);
   6126 
   6127     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   6128         ID3D11DeviceContext* This,
   6129         REFGUID guid,
   6130         UINT *pDataSize,
   6131         void *pData);
   6132 
   6133     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   6134         ID3D11DeviceContext* This,
   6135         REFGUID guid,
   6136         UINT DataSize,
   6137         const void *pData);
   6138 
   6139     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   6140         ID3D11DeviceContext* This,
   6141         REFGUID guid,
   6142         const IUnknown *pData);
   6143 
   6144     /*** ID3D11DeviceContext methods ***/
   6145     void (STDMETHODCALLTYPE *VSSetConstantBuffers)(
   6146         ID3D11DeviceContext* This,
   6147         UINT StartSlot,
   6148         UINT NumBuffers,
   6149         ID3D11Buffer *const *ppConstantBuffers);
   6150 
   6151     void (STDMETHODCALLTYPE *PSSetShaderResources)(
   6152         ID3D11DeviceContext* This,
   6153         UINT StartSlot,
   6154         UINT NumViews,
   6155         ID3D11ShaderResourceView *const *ppShaderResourceViews);
   6156 
   6157     void (STDMETHODCALLTYPE *PSSetShader)(
   6158         ID3D11DeviceContext* This,
   6159         ID3D11PixelShader *pPixelShader,
   6160         ID3D11ClassInstance *const *ppClassInstances,
   6161         UINT NumClassInstances);
   6162 
   6163     void (STDMETHODCALLTYPE *PSSetSamplers)(
   6164         ID3D11DeviceContext* This,
   6165         UINT StartSlot,
   6166         UINT NumSamplers,
   6167         ID3D11SamplerState *const *ppSamplers);
   6168 
   6169     void (STDMETHODCALLTYPE *VSSetShader)(
   6170         ID3D11DeviceContext* This,
   6171         ID3D11VertexShader *pVertexShader,
   6172         ID3D11ClassInstance *const *ppClassInstances,
   6173         UINT NumClassInstances);
   6174 
   6175     void (STDMETHODCALLTYPE *DrawIndexed)(
   6176         ID3D11DeviceContext* This,
   6177         UINT IndexCount,
   6178         UINT StartIndexLocation,
   6179         INT BaseVertexLocation);
   6180 
   6181     void (STDMETHODCALLTYPE *Draw)(
   6182         ID3D11DeviceContext* This,
   6183         UINT VertexCount,
   6184         UINT StartVertexLocation);
   6185 
   6186     HRESULT (STDMETHODCALLTYPE *Map)(
   6187         ID3D11DeviceContext* This,
   6188         ID3D11Resource *pResource,
   6189         UINT Subresource,
   6190         D3D11_MAP MapType,
   6191         UINT MapFlags,
   6192         D3D11_MAPPED_SUBRESOURCE *pMappedResource);
   6193 
   6194     void (STDMETHODCALLTYPE *Unmap)(
   6195         ID3D11DeviceContext* This,
   6196         ID3D11Resource *pResource,
   6197         UINT Subresource);
   6198 
   6199     void (STDMETHODCALLTYPE *PSSetConstantBuffers)(
   6200         ID3D11DeviceContext* This,
   6201         UINT StartSlot,
   6202         UINT NumBuffers,
   6203         ID3D11Buffer *const *ppConstantBuffers);
   6204 
   6205     void (STDMETHODCALLTYPE *IASetInputLayout)(
   6206         ID3D11DeviceContext* This,
   6207         ID3D11InputLayout *pInputLayout);
   6208 
   6209     void (STDMETHODCALLTYPE *IASetVertexBuffers)(
   6210         ID3D11DeviceContext* This,
   6211         UINT StartSlot,
   6212         UINT NumBuffers,
   6213         ID3D11Buffer *const *ppVertexBuffers,
   6214         const UINT *pStrides,
   6215         const UINT *pOffsets);
   6216 
   6217     void (STDMETHODCALLTYPE *IASetIndexBuffer)(
   6218         ID3D11DeviceContext* This,
   6219         ID3D11Buffer *pIndexBuffer,
   6220         DXGI_FORMAT Format,
   6221         UINT Offset);
   6222 
   6223     void (STDMETHODCALLTYPE *DrawIndexedInstanced)(
   6224         ID3D11DeviceContext* This,
   6225         UINT IndexCountPerInstance,
   6226         UINT InstanceCount,
   6227         UINT StartIndexLocation,
   6228         INT BaseVertexLocation,
   6229         UINT StartInstanceLocation);
   6230 
   6231     void (STDMETHODCALLTYPE *DrawInstanced)(
   6232         ID3D11DeviceContext* This,
   6233         UINT VertexCountPerInstance,
   6234         UINT InstanceCount,
   6235         UINT StartVertexLocation,
   6236         UINT StartInstanceLocation);
   6237 
   6238     void (STDMETHODCALLTYPE *GSSetConstantBuffers)(
   6239         ID3D11DeviceContext* This,
   6240         UINT StartSlot,
   6241         UINT NumBuffers,
   6242         ID3D11Buffer *const *ppConstantBuffers);
   6243 
   6244     void (STDMETHODCALLTYPE *GSSetShader)(
   6245         ID3D11DeviceContext* This,
   6246         ID3D11GeometryShader *pShader,
   6247         ID3D11ClassInstance *const *ppClassInstances,
   6248         UINT NumClassInstances);
   6249 
   6250     void (STDMETHODCALLTYPE *IASetPrimitiveTopology)(
   6251         ID3D11DeviceContext* This,
   6252         D3D11_PRIMITIVE_TOPOLOGY Topology);
   6253 
   6254     void (STDMETHODCALLTYPE *VSSetShaderResources)(
   6255         ID3D11DeviceContext* This,
   6256         UINT StartSlot,
   6257         UINT NumViews,
   6258         ID3D11ShaderResourceView *const *ppShaderResourceViews);
   6259 
   6260     void (STDMETHODCALLTYPE *VSSetSamplers)(
   6261         ID3D11DeviceContext* This,
   6262         UINT StartSlot,
   6263         UINT NumSamplers,
   6264         ID3D11SamplerState *const *ppSamplers);
   6265 
   6266     void (STDMETHODCALLTYPE *Begin)(
   6267         ID3D11DeviceContext* This,
   6268         ID3D11Asynchronous *pAsync);
   6269 
   6270     void (STDMETHODCALLTYPE *End)(
   6271         ID3D11DeviceContext* This,
   6272         ID3D11Asynchronous *pAsync);
   6273 
   6274     HRESULT (STDMETHODCALLTYPE *GetData)(
   6275         ID3D11DeviceContext* This,
   6276         ID3D11Asynchronous *pAsync,
   6277         void *pData,
   6278         UINT DataSize,
   6279         UINT GetDataFlags);
   6280 
   6281     void (STDMETHODCALLTYPE *SetPredication)(
   6282         ID3D11DeviceContext* This,
   6283         ID3D11Predicate *pPredicate,
   6284         WINBOOL PredicateValue);
   6285 
   6286     void (STDMETHODCALLTYPE *GSSetShaderResources)(
   6287         ID3D11DeviceContext* This,
   6288         UINT StartSlot,
   6289         UINT NumViews,
   6290         ID3D11ShaderResourceView *const *ppShaderResourceViews);
   6291 
   6292     void (STDMETHODCALLTYPE *GSSetSamplers)(
   6293         ID3D11DeviceContext* This,
   6294         UINT StartSlot,
   6295         UINT NumSamplers,
   6296         ID3D11SamplerState *const *ppSamplers);
   6297 
   6298     void (STDMETHODCALLTYPE *OMSetRenderTargets)(
   6299         ID3D11DeviceContext* This,
   6300         UINT NumViews,
   6301         ID3D11RenderTargetView *const *ppRenderTargetViews,
   6302         ID3D11DepthStencilView *pDepthStencilView);
   6303 
   6304     void (STDMETHODCALLTYPE *OMSetRenderTargetsAndUnorderedAccessViews)(
   6305         ID3D11DeviceContext* This,
   6306         UINT NumRTVs,
   6307         ID3D11RenderTargetView *const *ppRenderTargetViews,
   6308         ID3D11DepthStencilView *pDepthStencilView,
   6309         UINT UAVStartSlot,
   6310         UINT NumUAVs,
   6311         ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,
   6312         const UINT *pUAVInitialCounts);
   6313 
   6314     void (STDMETHODCALLTYPE *OMSetBlendState)(
   6315         ID3D11DeviceContext* This,
   6316         ID3D11BlendState *pBlendState,
   6317         const FLOAT BlendFactor[4],
   6318         UINT SampleMask);
   6319 
   6320     void (STDMETHODCALLTYPE *OMSetDepthStencilState)(
   6321         ID3D11DeviceContext* This,
   6322         ID3D11DepthStencilState *pDepthStencilState,
   6323         UINT StencilRef);
   6324 
   6325     void (STDMETHODCALLTYPE *SOSetTargets)(
   6326         ID3D11DeviceContext* This,
   6327         UINT NumBuffers,
   6328         ID3D11Buffer *const *ppSOTargets,
   6329         const UINT *pOffsets);
   6330 
   6331     void (STDMETHODCALLTYPE *DrawAuto)(
   6332         ID3D11DeviceContext* This);
   6333 
   6334     void (STDMETHODCALLTYPE *DrawIndexedInstancedIndirect)(
   6335         ID3D11DeviceContext* This,
   6336         ID3D11Buffer *pBufferForArgs,
   6337         UINT AlignedByteOffsetForArgs);
   6338 
   6339     void (STDMETHODCALLTYPE *DrawInstancedIndirect)(
   6340         ID3D11DeviceContext* This,
   6341         ID3D11Buffer *pBufferForArgs,
   6342         UINT AlignedByteOffsetForArgs);
   6343 
   6344     void (STDMETHODCALLTYPE *Dispatch)(
   6345         ID3D11DeviceContext* This,
   6346         UINT ThreadGroupCountX,
   6347         UINT ThreadGroupCountY,
   6348         UINT ThreadGroupCountZ);
   6349 
   6350     void (STDMETHODCALLTYPE *DispatchIndirect)(
   6351         ID3D11DeviceContext* This,
   6352         ID3D11Buffer *pBufferForArgs,
   6353         UINT AlignedByteOffsetForArgs);
   6354 
   6355     void (STDMETHODCALLTYPE *RSSetState)(
   6356         ID3D11DeviceContext* This,
   6357         ID3D11RasterizerState *pRasterizerState);
   6358 
   6359     void (STDMETHODCALLTYPE *RSSetViewports)(
   6360         ID3D11DeviceContext* This,
   6361         UINT NumViewports,
   6362         const D3D11_VIEWPORT *pViewports);
   6363 
   6364     void (STDMETHODCALLTYPE *RSSetScissorRects)(
   6365         ID3D11DeviceContext* This,
   6366         UINT NumRects,
   6367         const D3D11_RECT *pRects);
   6368 
   6369     void (STDMETHODCALLTYPE *CopySubresourceRegion)(
   6370         ID3D11DeviceContext* This,
   6371         ID3D11Resource *pDstResource,
   6372         UINT DstSubresource,
   6373         UINT DstX,
   6374         UINT DstY,
   6375         UINT DstZ,
   6376         ID3D11Resource *pSrcResource,
   6377         UINT SrcSubresource,
   6378         const D3D11_BOX *pSrcBox);
   6379 
   6380     void (STDMETHODCALLTYPE *CopyResource)(
   6381         ID3D11DeviceContext* This,
   6382         ID3D11Resource *pDstResource,
   6383         ID3D11Resource *pSrcResource);
   6384 
   6385     void (STDMETHODCALLTYPE *UpdateSubresource)(
   6386         ID3D11DeviceContext* This,
   6387         ID3D11Resource *pDstResource,
   6388         UINT DstSubresource,
   6389         const D3D11_BOX *pDstBox,
   6390         const void *pSrcData,
   6391         UINT SrcRowPitch,
   6392         UINT SrcDepthPitch);
   6393 
   6394     void (STDMETHODCALLTYPE *CopyStructureCount)(
   6395         ID3D11DeviceContext* This,
   6396         ID3D11Buffer *pDstBuffer,
   6397         UINT DstAlignedByteOffset,
   6398         ID3D11UnorderedAccessView *pSrcView);
   6399 
   6400     void (STDMETHODCALLTYPE *ClearRenderTargetView)(
   6401         ID3D11DeviceContext* This,
   6402         ID3D11RenderTargetView *pRenderTargetView,
   6403         const FLOAT ColorRGBA[4]);
   6404 
   6405     void (STDMETHODCALLTYPE *ClearUnorderedAccessViewUint)(
   6406         ID3D11DeviceContext* This,
   6407         ID3D11UnorderedAccessView *pUnorderedAccessView,
   6408         const UINT Values[4]);
   6409 
   6410     void (STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat)(
   6411         ID3D11DeviceContext* This,
   6412         ID3D11UnorderedAccessView *pUnorderedAccessView,
   6413         const FLOAT Values[4]);
   6414 
   6415     void (STDMETHODCALLTYPE *ClearDepthStencilView)(
   6416         ID3D11DeviceContext* This,
   6417         ID3D11DepthStencilView *pDepthStencilView,
   6418         UINT ClearFlags,
   6419         FLOAT Depth,
   6420         UINT8 Stencil);
   6421 
   6422     void (STDMETHODCALLTYPE *GenerateMips)(
   6423         ID3D11DeviceContext* This,
   6424         ID3D11ShaderResourceView *pShaderResourceView);
   6425 
   6426     void (STDMETHODCALLTYPE *SetResourceMinLOD)(
   6427         ID3D11DeviceContext* This,
   6428         ID3D11Resource *pResource,
   6429         FLOAT MinLOD);
   6430 
   6431     FLOAT (STDMETHODCALLTYPE *GetResourceMinLOD)(
   6432         ID3D11DeviceContext* This,
   6433         ID3D11Resource *pResource);
   6434 
   6435     void (STDMETHODCALLTYPE *ResolveSubresource)(
   6436         ID3D11DeviceContext* This,
   6437         ID3D11Resource *pDstResource,
   6438         UINT DstSubresource,
   6439         ID3D11Resource *pSrcResource,
   6440         UINT SrcSubresource,
   6441         DXGI_FORMAT Format);
   6442 
   6443     void (STDMETHODCALLTYPE *ExecuteCommandList)(
   6444         ID3D11DeviceContext* This,
   6445         ID3D11CommandList *pCommandList,
   6446         WINBOOL RestoreContextState);
   6447 
   6448     void (STDMETHODCALLTYPE *HSSetShaderResources)(
   6449         ID3D11DeviceContext* This,
   6450         UINT StartSlot,
   6451         UINT NumViews,
   6452         ID3D11ShaderResourceView *const *ppShaderResourceViews);
   6453 
   6454     void (STDMETHODCALLTYPE *HSSetShader)(
   6455         ID3D11DeviceContext* This,
   6456         ID3D11HullShader *pHullShader,
   6457         ID3D11ClassInstance *const *ppClassInstances,
   6458         UINT NumClassInstances);
   6459 
   6460     void (STDMETHODCALLTYPE *HSSetSamplers)(
   6461         ID3D11DeviceContext* This,
   6462         UINT StartSlot,
   6463         UINT NumSamplers,
   6464         ID3D11SamplerState *const *ppSamplers);
   6465 
   6466     void (STDMETHODCALLTYPE *HSSetConstantBuffers)(
   6467         ID3D11DeviceContext* This,
   6468         UINT StartSlot,
   6469         UINT NumBuffers,
   6470         ID3D11Buffer *const *ppConstantBuffers);
   6471 
   6472     void (STDMETHODCALLTYPE *DSSetShaderResources)(
   6473         ID3D11DeviceContext* This,
   6474         UINT StartSlot,
   6475         UINT NumViews,
   6476         ID3D11ShaderResourceView *const *ppShaderResourceViews);
   6477 
   6478     void (STDMETHODCALLTYPE *DSSetShader)(
   6479         ID3D11DeviceContext* This,
   6480         ID3D11DomainShader *pDomainShader,
   6481         ID3D11ClassInstance *const *ppClassInstances,
   6482         UINT NumClassInstances);
   6483 
   6484     void (STDMETHODCALLTYPE *DSSetSamplers)(
   6485         ID3D11DeviceContext* This,
   6486         UINT StartSlot,
   6487         UINT NumSamplers,
   6488         ID3D11SamplerState *const *ppSamplers);
   6489 
   6490     void (STDMETHODCALLTYPE *DSSetConstantBuffers)(
   6491         ID3D11DeviceContext* This,
   6492         UINT StartSlot,
   6493         UINT NumBuffers,
   6494         ID3D11Buffer *const *ppConstantBuffers);
   6495 
   6496     void (STDMETHODCALLTYPE *CSSetShaderResources)(
   6497         ID3D11DeviceContext* This,
   6498         UINT StartSlot,
   6499         UINT NumViews,
   6500         ID3D11ShaderResourceView *const *ppShaderResourceViews);
   6501 
   6502     void (STDMETHODCALLTYPE *CSSetUnorderedAccessViews)(
   6503         ID3D11DeviceContext* This,
   6504         UINT StartSlot,
   6505         UINT NumUAVs,
   6506         ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,
   6507         const UINT *pUAVInitialCounts);
   6508 
   6509     void (STDMETHODCALLTYPE *CSSetShader)(
   6510         ID3D11DeviceContext* This,
   6511         ID3D11ComputeShader *pComputeShader,
   6512         ID3D11ClassInstance *const *ppClassInstances,
   6513         UINT NumClassInstances);
   6514 
   6515     void (STDMETHODCALLTYPE *CSSetSamplers)(
   6516         ID3D11DeviceContext* This,
   6517         UINT StartSlot,
   6518         UINT NumSamplers,
   6519         ID3D11SamplerState *const *ppSamplers);
   6520 
   6521     void (STDMETHODCALLTYPE *CSSetConstantBuffers)(
   6522         ID3D11DeviceContext* This,
   6523         UINT StartSlot,
   6524         UINT NumBuffers,
   6525         ID3D11Buffer *const *ppConstantBuffers);
   6526 
   6527     void (STDMETHODCALLTYPE *VSGetConstantBuffers)(
   6528         ID3D11DeviceContext* This,
   6529         UINT StartSlot,
   6530         UINT NumBuffers,
   6531         ID3D11Buffer **ppConstantBuffers);
   6532 
   6533     void (STDMETHODCALLTYPE *PSGetShaderResources)(
   6534         ID3D11DeviceContext* This,
   6535         UINT StartSlot,
   6536         UINT NumViews,
   6537         ID3D11ShaderResourceView **ppShaderResourceViews);
   6538 
   6539     void (STDMETHODCALLTYPE *PSGetShader)(
   6540         ID3D11DeviceContext* This,
   6541         ID3D11PixelShader **ppPixelShader,
   6542         ID3D11ClassInstance **ppClassInstances,
   6543         UINT *pNumClassInstances);
   6544 
   6545     void (STDMETHODCALLTYPE *PSGetSamplers)(
   6546         ID3D11DeviceContext* This,
   6547         UINT StartSlot,
   6548         UINT NumSamplers,
   6549         ID3D11SamplerState **ppSamplers);
   6550 
   6551     void (STDMETHODCALLTYPE *VSGetShader)(
   6552         ID3D11DeviceContext* This,
   6553         ID3D11VertexShader **ppVertexShader,
   6554         ID3D11ClassInstance **ppClassInstances,
   6555         UINT *pNumClassInstances);
   6556 
   6557     void (STDMETHODCALLTYPE *PSGetConstantBuffers)(
   6558         ID3D11DeviceContext* This,
   6559         UINT StartSlot,
   6560         UINT NumBuffers,
   6561         ID3D11Buffer **ppConstantBuffers);
   6562 
   6563     void (STDMETHODCALLTYPE *IAGetInputLayout)(
   6564         ID3D11DeviceContext* This,
   6565         ID3D11InputLayout **ppInputLayout);
   6566 
   6567     void (STDMETHODCALLTYPE *IAGetVertexBuffers)(
   6568         ID3D11DeviceContext* This,
   6569         UINT StartSlot,
   6570         UINT NumBuffers,
   6571         ID3D11Buffer **ppVertexBuffers,
   6572         UINT *pStrides,
   6573         UINT *pOffsets);
   6574 
   6575     void (STDMETHODCALLTYPE *IAGetIndexBuffer)(
   6576         ID3D11DeviceContext* This,
   6577         ID3D11Buffer **pIndexBuffer,
   6578         DXGI_FORMAT *Format,
   6579         UINT *Offset);
   6580 
   6581     void (STDMETHODCALLTYPE *GSGetConstantBuffers)(
   6582         ID3D11DeviceContext* This,
   6583         UINT StartSlot,
   6584         UINT NumBuffers,
   6585         ID3D11Buffer **ppConstantBuffers);
   6586 
   6587     void (STDMETHODCALLTYPE *GSGetShader)(
   6588         ID3D11DeviceContext* This,
   6589         ID3D11GeometryShader **ppGeometryShader,
   6590         ID3D11ClassInstance **ppClassInstances,
   6591         UINT *pNumClassInstances);
   6592 
   6593     void (STDMETHODCALLTYPE *IAGetPrimitiveTopology)(
   6594         ID3D11DeviceContext* This,
   6595         D3D11_PRIMITIVE_TOPOLOGY *pTopology);
   6596 
   6597     void (STDMETHODCALLTYPE *VSGetShaderResources)(
   6598         ID3D11DeviceContext* This,
   6599         UINT StartSlot,
   6600         UINT NumViews,
   6601         ID3D11ShaderResourceView **ppShaderResourceViews);
   6602 
   6603     void (STDMETHODCALLTYPE *VSGetSamplers)(
   6604         ID3D11DeviceContext* This,
   6605         UINT StartSlot,
   6606         UINT NumSamplers,
   6607         ID3D11SamplerState **ppSamplers);
   6608 
   6609     void (STDMETHODCALLTYPE *GetPredication)(
   6610         ID3D11DeviceContext* This,
   6611         ID3D11Predicate **ppPredicate,
   6612         WINBOOL *pPredicateValue);
   6613 
   6614     void (STDMETHODCALLTYPE *GSGetShaderResources)(
   6615         ID3D11DeviceContext* This,
   6616         UINT StartSlot,
   6617         UINT NumViews,
   6618         ID3D11ShaderResourceView **ppShaderResourceViews);
   6619 
   6620     void (STDMETHODCALLTYPE *GSGetSamplers)(
   6621         ID3D11DeviceContext* This,
   6622         UINT StartSlot,
   6623         UINT NumSamplers,
   6624         ID3D11SamplerState **ppSamplers);
   6625 
   6626     void (STDMETHODCALLTYPE *OMGetRenderTargets)(
   6627         ID3D11DeviceContext* This,
   6628         UINT NumViews,
   6629         ID3D11RenderTargetView **ppRenderTargetViews,
   6630         ID3D11DepthStencilView **ppDepthStencilView);
   6631 
   6632     void (STDMETHODCALLTYPE *OMGetRenderTargetsAndUnorderedAccessViews)(
   6633         ID3D11DeviceContext* This,
   6634         UINT NumRTVs,
   6635         ID3D11RenderTargetView **ppRenderTargetViews,
   6636         ID3D11DepthStencilView **ppDepthStencilView,
   6637         UINT UAVStartSlot,
   6638         UINT NumUAVs,
   6639         ID3D11UnorderedAccessView **ppUnorderedAccessViews);
   6640 
   6641     void (STDMETHODCALLTYPE *OMGetBlendState)(
   6642         ID3D11DeviceContext* This,
   6643         ID3D11BlendState **ppBlendState,
   6644         FLOAT BlendFactor[4],
   6645         UINT *pSampleMask);
   6646 
   6647     void (STDMETHODCALLTYPE *OMGetDepthStencilState)(
   6648         ID3D11DeviceContext* This,
   6649         ID3D11DepthStencilState **ppDepthStencilState,
   6650         UINT *pStencilRef);
   6651 
   6652     void (STDMETHODCALLTYPE *SOGetTargets)(
   6653         ID3D11DeviceContext* This,
   6654         UINT NumBuffers,
   6655         ID3D11Buffer **ppSOTargets);
   6656 
   6657     void (STDMETHODCALLTYPE *RSGetState)(
   6658         ID3D11DeviceContext* This,
   6659         ID3D11RasterizerState **ppRasterizerState);
   6660 
   6661     void (STDMETHODCALLTYPE *RSGetViewports)(
   6662         ID3D11DeviceContext* This,
   6663         UINT *pNumViewports,
   6664         D3D11_VIEWPORT *pViewports);
   6665 
   6666     void (STDMETHODCALLTYPE *RSGetScissorRects)(
   6667         ID3D11DeviceContext* This,
   6668         UINT *pNumRects,
   6669         D3D11_RECT *pRects);
   6670 
   6671     void (STDMETHODCALLTYPE *HSGetShaderResources)(
   6672         ID3D11DeviceContext* This,
   6673         UINT StartSlot,
   6674         UINT NumViews,
   6675         ID3D11ShaderResourceView **ppShaderResourceViews);
   6676 
   6677     void (STDMETHODCALLTYPE *HSGetShader)(
   6678         ID3D11DeviceContext* This,
   6679         ID3D11HullShader **ppHullShader,
   6680         ID3D11ClassInstance **ppClassInstances,
   6681         UINT *pNumClassInstances);
   6682 
   6683     void (STDMETHODCALLTYPE *HSGetSamplers)(
   6684         ID3D11DeviceContext* This,
   6685         UINT StartSlot,
   6686         UINT NumSamplers,
   6687         ID3D11SamplerState **ppSamplers);
   6688 
   6689     void (STDMETHODCALLTYPE *HSGetConstantBuffers)(
   6690         ID3D11DeviceContext* This,
   6691         UINT StartSlot,
   6692         UINT NumBuffers,
   6693         ID3D11Buffer **ppConstantBuffers);
   6694 
   6695     void (STDMETHODCALLTYPE *DSGetShaderResources)(
   6696         ID3D11DeviceContext* This,
   6697         UINT StartSlot,
   6698         UINT NumViews,
   6699         ID3D11ShaderResourceView **ppShaderResourceViews);
   6700 
   6701     void (STDMETHODCALLTYPE *DSGetShader)(
   6702         ID3D11DeviceContext* This,
   6703         ID3D11DomainShader **ppDomainShader,
   6704         ID3D11ClassInstance **ppClassInstances,
   6705         UINT *pNumClassInstances);
   6706 
   6707     void (STDMETHODCALLTYPE *DSGetSamplers)(
   6708         ID3D11DeviceContext* This,
   6709         UINT StartSlot,
   6710         UINT NumSamplers,
   6711         ID3D11SamplerState **ppSamplers);
   6712 
   6713     void (STDMETHODCALLTYPE *DSGetConstantBuffers)(
   6714         ID3D11DeviceContext* This,
   6715         UINT StartSlot,
   6716         UINT NumBuffers,
   6717         ID3D11Buffer **ppConstantBuffers);
   6718 
   6719     void (STDMETHODCALLTYPE *CSGetShaderResources)(
   6720         ID3D11DeviceContext* This,
   6721         UINT StartSlot,
   6722         UINT NumViews,
   6723         ID3D11ShaderResourceView **ppShaderResourceViews);
   6724 
   6725     void (STDMETHODCALLTYPE *CSGetUnorderedAccessViews)(
   6726         ID3D11DeviceContext* This,
   6727         UINT StartSlot,
   6728         UINT NumUAVs,
   6729         ID3D11UnorderedAccessView **ppUnorderedAccessViews);
   6730 
   6731     void (STDMETHODCALLTYPE *CSGetShader)(
   6732         ID3D11DeviceContext* This,
   6733         ID3D11ComputeShader **ppComputeShader,
   6734         ID3D11ClassInstance **ppClassInstances,
   6735         UINT *pNumClassInstances);
   6736 
   6737     void (STDMETHODCALLTYPE *CSGetSamplers)(
   6738         ID3D11DeviceContext* This,
   6739         UINT StartSlot,
   6740         UINT NumSamplers,
   6741         ID3D11SamplerState **ppSamplers);
   6742 
   6743     void (STDMETHODCALLTYPE *CSGetConstantBuffers)(
   6744         ID3D11DeviceContext* This,
   6745         UINT StartSlot,
   6746         UINT NumBuffers,
   6747         ID3D11Buffer **ppConstantBuffers);
   6748 
   6749     void (STDMETHODCALLTYPE *ClearState)(
   6750         ID3D11DeviceContext* This);
   6751 
   6752     void (STDMETHODCALLTYPE *Flush)(
   6753         ID3D11DeviceContext* This);
   6754 
   6755     D3D11_DEVICE_CONTEXT_TYPE (STDMETHODCALLTYPE *GetType)(
   6756         ID3D11DeviceContext* This);
   6757 
   6758     UINT (STDMETHODCALLTYPE *GetContextFlags)(
   6759         ID3D11DeviceContext* This);
   6760 
   6761     HRESULT (STDMETHODCALLTYPE *FinishCommandList)(
   6762         ID3D11DeviceContext* This,
   6763         WINBOOL RestoreDeferredContextState,
   6764         ID3D11CommandList **ppCommandList);
   6765 
   6766     END_INTERFACE
   6767 } ID3D11DeviceContextVtbl;
   6768 interface ID3D11DeviceContext {
   6769     CONST_VTBL ID3D11DeviceContextVtbl* lpVtbl;
   6770 };
   6771 
   6772 #ifdef COBJMACROS
   6773 #ifndef WIDL_C_INLINE_WRAPPERS
   6774 /*** IUnknown methods ***/
   6775 #define ID3D11DeviceContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   6776 #define ID3D11DeviceContext_AddRef(This) (This)->lpVtbl->AddRef(This)
   6777 #define ID3D11DeviceContext_Release(This) (This)->lpVtbl->Release(This)
   6778 /*** ID3D11DeviceChild methods ***/
   6779 #define ID3D11DeviceContext_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   6780 #define ID3D11DeviceContext_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   6781 #define ID3D11DeviceContext_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   6782 #define ID3D11DeviceContext_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   6783 /*** ID3D11DeviceContext methods ***/
   6784 #define ID3D11DeviceContext_VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
   6785 #define ID3D11DeviceContext_PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
   6786 #define ID3D11DeviceContext_PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances)
   6787 #define ID3D11DeviceContext_PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
   6788 #define ID3D11DeviceContext_VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances)
   6789 #define ID3D11DeviceContext_DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) (This)->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation)
   6790 #define ID3D11DeviceContext_Draw(This,VertexCount,StartVertexLocation) (This)->lpVtbl->Draw(This,VertexCount,StartVertexLocation)
   6791 #define ID3D11DeviceContext_Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource) (This)->lpVtbl->Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource)
   6792 #define ID3D11DeviceContext_Unmap(This,pResource,Subresource) (This)->lpVtbl->Unmap(This,pResource,Subresource)
   6793 #define ID3D11DeviceContext_PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
   6794 #define ID3D11DeviceContext_IASetInputLayout(This,pInputLayout) (This)->lpVtbl->IASetInputLayout(This,pInputLayout)
   6795 #define ID3D11DeviceContext_IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets)
   6796 #define ID3D11DeviceContext_IASetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset)
   6797 #define ID3D11DeviceContext_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation)
   6798 #define ID3D11DeviceContext_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation)
   6799 #define ID3D11DeviceContext_GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
   6800 #define ID3D11DeviceContext_GSSetShader(This,pShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->GSSetShader(This,pShader,ppClassInstances,NumClassInstances)
   6801 #define ID3D11DeviceContext_IASetPrimitiveTopology(This,Topology) (This)->lpVtbl->IASetPrimitiveTopology(This,Topology)
   6802 #define ID3D11DeviceContext_VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
   6803 #define ID3D11DeviceContext_VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
   6804 #define ID3D11DeviceContext_Begin(This,pAsync) (This)->lpVtbl->Begin(This,pAsync)
   6805 #define ID3D11DeviceContext_End(This,pAsync) (This)->lpVtbl->End(This,pAsync)
   6806 #define ID3D11DeviceContext_GetData(This,pAsync,pData,DataSize,GetDataFlags) (This)->lpVtbl->GetData(This,pAsync,pData,DataSize,GetDataFlags)
   6807 #define ID3D11DeviceContext_SetPredication(This,pPredicate,PredicateValue) (This)->lpVtbl->SetPredication(This,pPredicate,PredicateValue)
   6808 #define ID3D11DeviceContext_GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
   6809 #define ID3D11DeviceContext_GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
   6810 #define ID3D11DeviceContext_OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) (This)->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView)
   6811 #define ID3D11DeviceContext_OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) (This)->lpVtbl->OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts)
   6812 #define ID3D11DeviceContext_OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) (This)->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask)
   6813 #define ID3D11DeviceContext_OMSetDepthStencilState(This,pDepthStencilState,StencilRef) (This)->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef)
   6814 #define ID3D11DeviceContext_SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) (This)->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets)
   6815 #define ID3D11DeviceContext_DrawAuto(This) (This)->lpVtbl->DrawAuto(This)
   6816 #define ID3D11DeviceContext_DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs)
   6817 #define ID3D11DeviceContext_DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs)
   6818 #define ID3D11DeviceContext_Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) (This)->lpVtbl->Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ)
   6819 #define ID3D11DeviceContext_DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs)
   6820 #define ID3D11DeviceContext_RSSetState(This,pRasterizerState) (This)->lpVtbl->RSSetState(This,pRasterizerState)
   6821 #define ID3D11DeviceContext_RSSetViewports(This,NumViewports,pViewports) (This)->lpVtbl->RSSetViewports(This,NumViewports,pViewports)
   6822 #define ID3D11DeviceContext_RSSetScissorRects(This,NumRects,pRects) (This)->lpVtbl->RSSetScissorRects(This,NumRects,pRects)
   6823 #define ID3D11DeviceContext_CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) (This)->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox)
   6824 #define ID3D11DeviceContext_CopyResource(This,pDstResource,pSrcResource) (This)->lpVtbl->CopyResource(This,pDstResource,pSrcResource)
   6825 #define ID3D11DeviceContext_UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) (This)->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch)
   6826 #define ID3D11DeviceContext_CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView) (This)->lpVtbl->CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView)
   6827 #define ID3D11DeviceContext_ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) (This)->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA)
   6828 #define ID3D11DeviceContext_ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values) (This)->lpVtbl->ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values)
   6829 #define ID3D11DeviceContext_ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values) (This)->lpVtbl->ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values)
   6830 #define ID3D11DeviceContext_ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) (This)->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil)
   6831 #define ID3D11DeviceContext_GenerateMips(This,pShaderResourceView) (This)->lpVtbl->GenerateMips(This,pShaderResourceView)
   6832 #define ID3D11DeviceContext_SetResourceMinLOD(This,pResource,MinLOD) (This)->lpVtbl->SetResourceMinLOD(This,pResource,MinLOD)
   6833 #define ID3D11DeviceContext_GetResourceMinLOD(This,pResource) (This)->lpVtbl->GetResourceMinLOD(This,pResource)
   6834 #define ID3D11DeviceContext_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) (This)->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format)
   6835 #define ID3D11DeviceContext_ExecuteCommandList(This,pCommandList,RestoreContextState) (This)->lpVtbl->ExecuteCommandList(This,pCommandList,RestoreContextState)
   6836 #define ID3D11DeviceContext_HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
   6837 #define ID3D11DeviceContext_HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances)
   6838 #define ID3D11DeviceContext_HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
   6839 #define ID3D11DeviceContext_HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
   6840 #define ID3D11DeviceContext_DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
   6841 #define ID3D11DeviceContext_DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances)
   6842 #define ID3D11DeviceContext_DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
   6843 #define ID3D11DeviceContext_DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
   6844 #define ID3D11DeviceContext_CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
   6845 #define ID3D11DeviceContext_CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) (This)->lpVtbl->CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts)
   6846 #define ID3D11DeviceContext_CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances)
   6847 #define ID3D11DeviceContext_CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
   6848 #define ID3D11DeviceContext_CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
   6849 #define ID3D11DeviceContext_VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
   6850 #define ID3D11DeviceContext_PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
   6851 #define ID3D11DeviceContext_PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances)
   6852 #define ID3D11DeviceContext_PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
   6853 #define ID3D11DeviceContext_VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances)
   6854 #define ID3D11DeviceContext_PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
   6855 #define ID3D11DeviceContext_IAGetInputLayout(This,ppInputLayout) (This)->lpVtbl->IAGetInputLayout(This,ppInputLayout)
   6856 #define ID3D11DeviceContext_IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets)
   6857 #define ID3D11DeviceContext_IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset)
   6858 #define ID3D11DeviceContext_GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
   6859 #define ID3D11DeviceContext_GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances)
   6860 #define ID3D11DeviceContext_IAGetPrimitiveTopology(This,pTopology) (This)->lpVtbl->IAGetPrimitiveTopology(This,pTopology)
   6861 #define ID3D11DeviceContext_VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
   6862 #define ID3D11DeviceContext_VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
   6863 #define ID3D11DeviceContext_GetPredication(This,ppPredicate,pPredicateValue) (This)->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue)
   6864 #define ID3D11DeviceContext_GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
   6865 #define ID3D11DeviceContext_GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
   6866 #define ID3D11DeviceContext_OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) (This)->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView)
   6867 #define ID3D11DeviceContext_OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews) (This)->lpVtbl->OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews)
   6868 #define ID3D11DeviceContext_OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) (This)->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask)
   6869 #define ID3D11DeviceContext_OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) (This)->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef)
   6870 #define ID3D11DeviceContext_SOGetTargets(This,NumBuffers,ppSOTargets) (This)->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets)
   6871 #define ID3D11DeviceContext_RSGetState(This,ppRasterizerState) (This)->lpVtbl->RSGetState(This,ppRasterizerState)
   6872 #define ID3D11DeviceContext_RSGetViewports(This,pNumViewports,pViewports) (This)->lpVtbl->RSGetViewports(This,pNumViewports,pViewports)
   6873 #define ID3D11DeviceContext_RSGetScissorRects(This,pNumRects,pRects) (This)->lpVtbl->RSGetScissorRects(This,pNumRects,pRects)
   6874 #define ID3D11DeviceContext_HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
   6875 #define ID3D11DeviceContext_HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances)
   6876 #define ID3D11DeviceContext_HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
   6877 #define ID3D11DeviceContext_HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
   6878 #define ID3D11DeviceContext_DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
   6879 #define ID3D11DeviceContext_DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances)
   6880 #define ID3D11DeviceContext_DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
   6881 #define ID3D11DeviceContext_DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
   6882 #define ID3D11DeviceContext_CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
   6883 #define ID3D11DeviceContext_CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews) (This)->lpVtbl->CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews)
   6884 #define ID3D11DeviceContext_CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances)
   6885 #define ID3D11DeviceContext_CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
   6886 #define ID3D11DeviceContext_CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
   6887 #define ID3D11DeviceContext_ClearState(This) (This)->lpVtbl->ClearState(This)
   6888 #define ID3D11DeviceContext_Flush(This) (This)->lpVtbl->Flush(This)
   6889 #define ID3D11DeviceContext_GetType(This) (This)->lpVtbl->GetType(This)
   6890 #define ID3D11DeviceContext_GetContextFlags(This) (This)->lpVtbl->GetContextFlags(This)
   6891 #define ID3D11DeviceContext_FinishCommandList(This,RestoreDeferredContextState,ppCommandList) (This)->lpVtbl->FinishCommandList(This,RestoreDeferredContextState,ppCommandList)
   6892 #else
   6893 /*** IUnknown methods ***/
   6894 static FORCEINLINE HRESULT ID3D11DeviceContext_QueryInterface(ID3D11DeviceContext* This,REFIID riid,void **ppvObject) {
   6895     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   6896 }
   6897 static FORCEINLINE ULONG ID3D11DeviceContext_AddRef(ID3D11DeviceContext* This) {
   6898     return This->lpVtbl->AddRef(This);
   6899 }
   6900 static FORCEINLINE ULONG ID3D11DeviceContext_Release(ID3D11DeviceContext* This) {
   6901     return This->lpVtbl->Release(This);
   6902 }
   6903 /*** ID3D11DeviceChild methods ***/
   6904 static FORCEINLINE void ID3D11DeviceContext_GetDevice(ID3D11DeviceContext* This,ID3D11Device **ppDevice) {
   6905     This->lpVtbl->GetDevice(This,ppDevice);
   6906 }
   6907 static FORCEINLINE HRESULT ID3D11DeviceContext_GetPrivateData(ID3D11DeviceContext* This,REFGUID guid,UINT *pDataSize,void *pData) {
   6908     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   6909 }
   6910 static FORCEINLINE HRESULT ID3D11DeviceContext_SetPrivateData(ID3D11DeviceContext* This,REFGUID guid,UINT DataSize,const void *pData) {
   6911     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   6912 }
   6913 static FORCEINLINE HRESULT ID3D11DeviceContext_SetPrivateDataInterface(ID3D11DeviceContext* This,REFGUID guid,const IUnknown *pData) {
   6914     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   6915 }
   6916 /*** ID3D11DeviceContext methods ***/
   6917 static FORCEINLINE void ID3D11DeviceContext_VSSetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
   6918     This->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
   6919 }
   6920 static FORCEINLINE void ID3D11DeviceContext_PSSetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
   6921     This->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
   6922 }
   6923 static FORCEINLINE void ID3D11DeviceContext_PSSetShader(ID3D11DeviceContext* This,ID3D11PixelShader *pPixelShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
   6924     This->lpVtbl->PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances);
   6925 }
   6926 static FORCEINLINE void ID3D11DeviceContext_PSSetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
   6927     This->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
   6928 }
   6929 static FORCEINLINE void ID3D11DeviceContext_VSSetShader(ID3D11DeviceContext* This,ID3D11VertexShader *pVertexShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
   6930     This->lpVtbl->VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances);
   6931 }
   6932 static FORCEINLINE void ID3D11DeviceContext_DrawIndexed(ID3D11DeviceContext* This,UINT IndexCount,UINT StartIndexLocation,INT BaseVertexLocation) {
   6933     This->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation);
   6934 }
   6935 static FORCEINLINE void ID3D11DeviceContext_Draw(ID3D11DeviceContext* This,UINT VertexCount,UINT StartVertexLocation) {
   6936     This->lpVtbl->Draw(This,VertexCount,StartVertexLocation);
   6937 }
   6938 static FORCEINLINE HRESULT ID3D11DeviceContext_Map(ID3D11DeviceContext* This,ID3D11Resource *pResource,UINT Subresource,D3D11_MAP MapType,UINT MapFlags,D3D11_MAPPED_SUBRESOURCE *pMappedResource) {
   6939     return This->lpVtbl->Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource);
   6940 }
   6941 static FORCEINLINE void ID3D11DeviceContext_Unmap(ID3D11DeviceContext* This,ID3D11Resource *pResource,UINT Subresource) {
   6942     This->lpVtbl->Unmap(This,pResource,Subresource);
   6943 }
   6944 static FORCEINLINE void ID3D11DeviceContext_PSSetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
   6945     This->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
   6946 }
   6947 static FORCEINLINE void ID3D11DeviceContext_IASetInputLayout(ID3D11DeviceContext* This,ID3D11InputLayout *pInputLayout) {
   6948     This->lpVtbl->IASetInputLayout(This,pInputLayout);
   6949 }
   6950 static FORCEINLINE void ID3D11DeviceContext_IASetVertexBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppVertexBuffers,const UINT *pStrides,const UINT *pOffsets) {
   6951     This->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets);
   6952 }
   6953 static FORCEINLINE void ID3D11DeviceContext_IASetIndexBuffer(ID3D11DeviceContext* This,ID3D11Buffer *pIndexBuffer,DXGI_FORMAT Format,UINT Offset) {
   6954     This->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset);
   6955 }
   6956 static FORCEINLINE void ID3D11DeviceContext_DrawIndexedInstanced(ID3D11DeviceContext* This,UINT IndexCountPerInstance,UINT InstanceCount,UINT StartIndexLocation,INT BaseVertexLocation,UINT StartInstanceLocation) {
   6957     This->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation);
   6958 }
   6959 static FORCEINLINE void ID3D11DeviceContext_DrawInstanced(ID3D11DeviceContext* This,UINT VertexCountPerInstance,UINT InstanceCount,UINT StartVertexLocation,UINT StartInstanceLocation) {
   6960     This->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation);
   6961 }
   6962 static FORCEINLINE void ID3D11DeviceContext_GSSetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
   6963     This->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
   6964 }
   6965 static FORCEINLINE void ID3D11DeviceContext_GSSetShader(ID3D11DeviceContext* This,ID3D11GeometryShader *pShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
   6966     This->lpVtbl->GSSetShader(This,pShader,ppClassInstances,NumClassInstances);
   6967 }
   6968 static FORCEINLINE void ID3D11DeviceContext_IASetPrimitiveTopology(ID3D11DeviceContext* This,D3D11_PRIMITIVE_TOPOLOGY Topology) {
   6969     This->lpVtbl->IASetPrimitiveTopology(This,Topology);
   6970 }
   6971 static FORCEINLINE void ID3D11DeviceContext_VSSetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
   6972     This->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
   6973 }
   6974 static FORCEINLINE void ID3D11DeviceContext_VSSetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
   6975     This->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
   6976 }
   6977 static FORCEINLINE void ID3D11DeviceContext_Begin(ID3D11DeviceContext* This,ID3D11Asynchronous *pAsync) {
   6978     This->lpVtbl->Begin(This,pAsync);
   6979 }
   6980 static FORCEINLINE void ID3D11DeviceContext_End(ID3D11DeviceContext* This,ID3D11Asynchronous *pAsync) {
   6981     This->lpVtbl->End(This,pAsync);
   6982 }
   6983 static FORCEINLINE HRESULT ID3D11DeviceContext_GetData(ID3D11DeviceContext* This,ID3D11Asynchronous *pAsync,void *pData,UINT DataSize,UINT GetDataFlags) {
   6984     return This->lpVtbl->GetData(This,pAsync,pData,DataSize,GetDataFlags);
   6985 }
   6986 static FORCEINLINE void ID3D11DeviceContext_SetPredication(ID3D11DeviceContext* This,ID3D11Predicate *pPredicate,WINBOOL PredicateValue) {
   6987     This->lpVtbl->SetPredication(This,pPredicate,PredicateValue);
   6988 }
   6989 static FORCEINLINE void ID3D11DeviceContext_GSSetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
   6990     This->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
   6991 }
   6992 static FORCEINLINE void ID3D11DeviceContext_GSSetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
   6993     This->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
   6994 }
   6995 static FORCEINLINE void ID3D11DeviceContext_OMSetRenderTargets(ID3D11DeviceContext* This,UINT NumViews,ID3D11RenderTargetView *const *ppRenderTargetViews,ID3D11DepthStencilView *pDepthStencilView) {
   6996     This->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView);
   6997 }
   6998 static FORCEINLINE void ID3D11DeviceContext_OMSetRenderTargetsAndUnorderedAccessViews(ID3D11DeviceContext* This,UINT NumRTVs,ID3D11RenderTargetView *const *ppRenderTargetViews,ID3D11DepthStencilView *pDepthStencilView,UINT UAVStartSlot,UINT NumUAVs,ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,const UINT *pUAVInitialCounts) {
   6999     This->lpVtbl->OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts);
   7000 }
   7001 static FORCEINLINE void ID3D11DeviceContext_OMSetBlendState(ID3D11DeviceContext* This,ID3D11BlendState *pBlendState,const FLOAT BlendFactor[4],UINT SampleMask) {
   7002     This->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask);
   7003 }
   7004 static FORCEINLINE void ID3D11DeviceContext_OMSetDepthStencilState(ID3D11DeviceContext* This,ID3D11DepthStencilState *pDepthStencilState,UINT StencilRef) {
   7005     This->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef);
   7006 }
   7007 static FORCEINLINE void ID3D11DeviceContext_SOSetTargets(ID3D11DeviceContext* This,UINT NumBuffers,ID3D11Buffer *const *ppSOTargets,const UINT *pOffsets) {
   7008     This->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets);
   7009 }
   7010 static FORCEINLINE void ID3D11DeviceContext_DrawAuto(ID3D11DeviceContext* This) {
   7011     This->lpVtbl->DrawAuto(This);
   7012 }
   7013 static FORCEINLINE void ID3D11DeviceContext_DrawIndexedInstancedIndirect(ID3D11DeviceContext* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) {
   7014     This->lpVtbl->DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs);
   7015 }
   7016 static FORCEINLINE void ID3D11DeviceContext_DrawInstancedIndirect(ID3D11DeviceContext* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) {
   7017     This->lpVtbl->DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs);
   7018 }
   7019 static FORCEINLINE void ID3D11DeviceContext_Dispatch(ID3D11DeviceContext* This,UINT ThreadGroupCountX,UINT ThreadGroupCountY,UINT ThreadGroupCountZ) {
   7020     This->lpVtbl->Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ);
   7021 }
   7022 static FORCEINLINE void ID3D11DeviceContext_DispatchIndirect(ID3D11DeviceContext* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) {
   7023     This->lpVtbl->DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs);
   7024 }
   7025 static FORCEINLINE void ID3D11DeviceContext_RSSetState(ID3D11DeviceContext* This,ID3D11RasterizerState *pRasterizerState) {
   7026     This->lpVtbl->RSSetState(This,pRasterizerState);
   7027 }
   7028 static FORCEINLINE void ID3D11DeviceContext_RSSetViewports(ID3D11DeviceContext* This,UINT NumViewports,const D3D11_VIEWPORT *pViewports) {
   7029     This->lpVtbl->RSSetViewports(This,NumViewports,pViewports);
   7030 }
   7031 static FORCEINLINE void ID3D11DeviceContext_RSSetScissorRects(ID3D11DeviceContext* This,UINT NumRects,const D3D11_RECT *pRects) {
   7032     This->lpVtbl->RSSetScissorRects(This,NumRects,pRects);
   7033 }
   7034 static FORCEINLINE void ID3D11DeviceContext_CopySubresourceRegion(ID3D11DeviceContext* This,ID3D11Resource *pDstResource,UINT DstSubresource,UINT DstX,UINT DstY,UINT DstZ,ID3D11Resource *pSrcResource,UINT SrcSubresource,const D3D11_BOX *pSrcBox) {
   7035     This->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox);
   7036 }
   7037 static FORCEINLINE void ID3D11DeviceContext_CopyResource(ID3D11DeviceContext* This,ID3D11Resource *pDstResource,ID3D11Resource *pSrcResource) {
   7038     This->lpVtbl->CopyResource(This,pDstResource,pSrcResource);
   7039 }
   7040 static FORCEINLINE void ID3D11DeviceContext_UpdateSubresource(ID3D11DeviceContext* This,ID3D11Resource *pDstResource,UINT DstSubresource,const D3D11_BOX *pDstBox,const void *pSrcData,UINT SrcRowPitch,UINT SrcDepthPitch) {
   7041     This->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch);
   7042 }
   7043 static FORCEINLINE void ID3D11DeviceContext_CopyStructureCount(ID3D11DeviceContext* This,ID3D11Buffer *pDstBuffer,UINT DstAlignedByteOffset,ID3D11UnorderedAccessView *pSrcView) {
   7044     This->lpVtbl->CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView);
   7045 }
   7046 static FORCEINLINE void ID3D11DeviceContext_ClearRenderTargetView(ID3D11DeviceContext* This,ID3D11RenderTargetView *pRenderTargetView,const FLOAT ColorRGBA[4]) {
   7047     This->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA);
   7048 }
   7049 static FORCEINLINE void ID3D11DeviceContext_ClearUnorderedAccessViewUint(ID3D11DeviceContext* This,ID3D11UnorderedAccessView *pUnorderedAccessView,const UINT Values[4]) {
   7050     This->lpVtbl->ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values);
   7051 }
   7052 static FORCEINLINE void ID3D11DeviceContext_ClearUnorderedAccessViewFloat(ID3D11DeviceContext* This,ID3D11UnorderedAccessView *pUnorderedAccessView,const FLOAT Values[4]) {
   7053     This->lpVtbl->ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values);
   7054 }
   7055 static FORCEINLINE void ID3D11DeviceContext_ClearDepthStencilView(ID3D11DeviceContext* This,ID3D11DepthStencilView *pDepthStencilView,UINT ClearFlags,FLOAT Depth,UINT8 Stencil) {
   7056     This->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil);
   7057 }
   7058 static FORCEINLINE void ID3D11DeviceContext_GenerateMips(ID3D11DeviceContext* This,ID3D11ShaderResourceView *pShaderResourceView) {
   7059     This->lpVtbl->GenerateMips(This,pShaderResourceView);
   7060 }
   7061 static FORCEINLINE void ID3D11DeviceContext_SetResourceMinLOD(ID3D11DeviceContext* This,ID3D11Resource *pResource,FLOAT MinLOD) {
   7062     This->lpVtbl->SetResourceMinLOD(This,pResource,MinLOD);
   7063 }
   7064 static FORCEINLINE FLOAT ID3D11DeviceContext_GetResourceMinLOD(ID3D11DeviceContext* This,ID3D11Resource *pResource) {
   7065     return This->lpVtbl->GetResourceMinLOD(This,pResource);
   7066 }
   7067 static FORCEINLINE void ID3D11DeviceContext_ResolveSubresource(ID3D11DeviceContext* This,ID3D11Resource *pDstResource,UINT DstSubresource,ID3D11Resource *pSrcResource,UINT SrcSubresource,DXGI_FORMAT Format) {
   7068     This->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format);
   7069 }
   7070 static FORCEINLINE void ID3D11DeviceContext_ExecuteCommandList(ID3D11DeviceContext* This,ID3D11CommandList *pCommandList,WINBOOL RestoreContextState) {
   7071     This->lpVtbl->ExecuteCommandList(This,pCommandList,RestoreContextState);
   7072 }
   7073 static FORCEINLINE void ID3D11DeviceContext_HSSetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
   7074     This->lpVtbl->HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
   7075 }
   7076 static FORCEINLINE void ID3D11DeviceContext_HSSetShader(ID3D11DeviceContext* This,ID3D11HullShader *pHullShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
   7077     This->lpVtbl->HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances);
   7078 }
   7079 static FORCEINLINE void ID3D11DeviceContext_HSSetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
   7080     This->lpVtbl->HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
   7081 }
   7082 static FORCEINLINE void ID3D11DeviceContext_HSSetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
   7083     This->lpVtbl->HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
   7084 }
   7085 static FORCEINLINE void ID3D11DeviceContext_DSSetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
   7086     This->lpVtbl->DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
   7087 }
   7088 static FORCEINLINE void ID3D11DeviceContext_DSSetShader(ID3D11DeviceContext* This,ID3D11DomainShader *pDomainShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
   7089     This->lpVtbl->DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances);
   7090 }
   7091 static FORCEINLINE void ID3D11DeviceContext_DSSetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
   7092     This->lpVtbl->DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
   7093 }
   7094 static FORCEINLINE void ID3D11DeviceContext_DSSetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
   7095     This->lpVtbl->DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
   7096 }
   7097 static FORCEINLINE void ID3D11DeviceContext_CSSetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
   7098     This->lpVtbl->CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
   7099 }
   7100 static FORCEINLINE void ID3D11DeviceContext_CSSetUnorderedAccessViews(ID3D11DeviceContext* This,UINT StartSlot,UINT NumUAVs,ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,const UINT *pUAVInitialCounts) {
   7101     This->lpVtbl->CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts);
   7102 }
   7103 static FORCEINLINE void ID3D11DeviceContext_CSSetShader(ID3D11DeviceContext* This,ID3D11ComputeShader *pComputeShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
   7104     This->lpVtbl->CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances);
   7105 }
   7106 static FORCEINLINE void ID3D11DeviceContext_CSSetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
   7107     This->lpVtbl->CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
   7108 }
   7109 static FORCEINLINE void ID3D11DeviceContext_CSSetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
   7110     This->lpVtbl->CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
   7111 }
   7112 static FORCEINLINE void ID3D11DeviceContext_VSGetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
   7113     This->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
   7114 }
   7115 static FORCEINLINE void ID3D11DeviceContext_PSGetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
   7116     This->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
   7117 }
   7118 static FORCEINLINE void ID3D11DeviceContext_PSGetShader(ID3D11DeviceContext* This,ID3D11PixelShader **ppPixelShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
   7119     This->lpVtbl->PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances);
   7120 }
   7121 static FORCEINLINE void ID3D11DeviceContext_PSGetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
   7122     This->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
   7123 }
   7124 static FORCEINLINE void ID3D11DeviceContext_VSGetShader(ID3D11DeviceContext* This,ID3D11VertexShader **ppVertexShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
   7125     This->lpVtbl->VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances);
   7126 }
   7127 static FORCEINLINE void ID3D11DeviceContext_PSGetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
   7128     This->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
   7129 }
   7130 static FORCEINLINE void ID3D11DeviceContext_IAGetInputLayout(ID3D11DeviceContext* This,ID3D11InputLayout **ppInputLayout) {
   7131     This->lpVtbl->IAGetInputLayout(This,ppInputLayout);
   7132 }
   7133 static FORCEINLINE void ID3D11DeviceContext_IAGetVertexBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppVertexBuffers,UINT *pStrides,UINT *pOffsets) {
   7134     This->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets);
   7135 }
   7136 static FORCEINLINE void ID3D11DeviceContext_IAGetIndexBuffer(ID3D11DeviceContext* This,ID3D11Buffer **pIndexBuffer,DXGI_FORMAT *Format,UINT *Offset) {
   7137     This->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset);
   7138 }
   7139 static FORCEINLINE void ID3D11DeviceContext_GSGetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
   7140     This->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
   7141 }
   7142 static FORCEINLINE void ID3D11DeviceContext_GSGetShader(ID3D11DeviceContext* This,ID3D11GeometryShader **ppGeometryShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
   7143     This->lpVtbl->GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances);
   7144 }
   7145 static FORCEINLINE void ID3D11DeviceContext_IAGetPrimitiveTopology(ID3D11DeviceContext* This,D3D11_PRIMITIVE_TOPOLOGY *pTopology) {
   7146     This->lpVtbl->IAGetPrimitiveTopology(This,pTopology);
   7147 }
   7148 static FORCEINLINE void ID3D11DeviceContext_VSGetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
   7149     This->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
   7150 }
   7151 static FORCEINLINE void ID3D11DeviceContext_VSGetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
   7152     This->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
   7153 }
   7154 static FORCEINLINE void ID3D11DeviceContext_GetPredication(ID3D11DeviceContext* This,ID3D11Predicate **ppPredicate,WINBOOL *pPredicateValue) {
   7155     This->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue);
   7156 }
   7157 static FORCEINLINE void ID3D11DeviceContext_GSGetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
   7158     This->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
   7159 }
   7160 static FORCEINLINE void ID3D11DeviceContext_GSGetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
   7161     This->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
   7162 }
   7163 static FORCEINLINE void ID3D11DeviceContext_OMGetRenderTargets(ID3D11DeviceContext* This,UINT NumViews,ID3D11RenderTargetView **ppRenderTargetViews,ID3D11DepthStencilView **ppDepthStencilView) {
   7164     This->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView);
   7165 }
   7166 static FORCEINLINE void ID3D11DeviceContext_OMGetRenderTargetsAndUnorderedAccessViews(ID3D11DeviceContext* This,UINT NumRTVs,ID3D11RenderTargetView **ppRenderTargetViews,ID3D11DepthStencilView **ppDepthStencilView,UINT UAVStartSlot,UINT NumUAVs,ID3D11UnorderedAccessView **ppUnorderedAccessViews) {
   7167     This->lpVtbl->OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews);
   7168 }
   7169 static FORCEINLINE void ID3D11DeviceContext_OMGetBlendState(ID3D11DeviceContext* This,ID3D11BlendState **ppBlendState,FLOAT BlendFactor[4],UINT *pSampleMask) {
   7170     This->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask);
   7171 }
   7172 static FORCEINLINE void ID3D11DeviceContext_OMGetDepthStencilState(ID3D11DeviceContext* This,ID3D11DepthStencilState **ppDepthStencilState,UINT *pStencilRef) {
   7173     This->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef);
   7174 }
   7175 static FORCEINLINE void ID3D11DeviceContext_SOGetTargets(ID3D11DeviceContext* This,UINT NumBuffers,ID3D11Buffer **ppSOTargets) {
   7176     This->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets);
   7177 }
   7178 static FORCEINLINE void ID3D11DeviceContext_RSGetState(ID3D11DeviceContext* This,ID3D11RasterizerState **ppRasterizerState) {
   7179     This->lpVtbl->RSGetState(This,ppRasterizerState);
   7180 }
   7181 static FORCEINLINE void ID3D11DeviceContext_RSGetViewports(ID3D11DeviceContext* This,UINT *pNumViewports,D3D11_VIEWPORT *pViewports) {
   7182     This->lpVtbl->RSGetViewports(This,pNumViewports,pViewports);
   7183 }
   7184 static FORCEINLINE void ID3D11DeviceContext_RSGetScissorRects(ID3D11DeviceContext* This,UINT *pNumRects,D3D11_RECT *pRects) {
   7185     This->lpVtbl->RSGetScissorRects(This,pNumRects,pRects);
   7186 }
   7187 static FORCEINLINE void ID3D11DeviceContext_HSGetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
   7188     This->lpVtbl->HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
   7189 }
   7190 static FORCEINLINE void ID3D11DeviceContext_HSGetShader(ID3D11DeviceContext* This,ID3D11HullShader **ppHullShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
   7191     This->lpVtbl->HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances);
   7192 }
   7193 static FORCEINLINE void ID3D11DeviceContext_HSGetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
   7194     This->lpVtbl->HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
   7195 }
   7196 static FORCEINLINE void ID3D11DeviceContext_HSGetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
   7197     This->lpVtbl->HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
   7198 }
   7199 static FORCEINLINE void ID3D11DeviceContext_DSGetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
   7200     This->lpVtbl->DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
   7201 }
   7202 static FORCEINLINE void ID3D11DeviceContext_DSGetShader(ID3D11DeviceContext* This,ID3D11DomainShader **ppDomainShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
   7203     This->lpVtbl->DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances);
   7204 }
   7205 static FORCEINLINE void ID3D11DeviceContext_DSGetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
   7206     This->lpVtbl->DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
   7207 }
   7208 static FORCEINLINE void ID3D11DeviceContext_DSGetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
   7209     This->lpVtbl->DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
   7210 }
   7211 static FORCEINLINE void ID3D11DeviceContext_CSGetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
   7212     This->lpVtbl->CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
   7213 }
   7214 static FORCEINLINE void ID3D11DeviceContext_CSGetUnorderedAccessViews(ID3D11DeviceContext* This,UINT StartSlot,UINT NumUAVs,ID3D11UnorderedAccessView **ppUnorderedAccessViews) {
   7215     This->lpVtbl->CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews);
   7216 }
   7217 static FORCEINLINE void ID3D11DeviceContext_CSGetShader(ID3D11DeviceContext* This,ID3D11ComputeShader **ppComputeShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
   7218     This->lpVtbl->CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances);
   7219 }
   7220 static FORCEINLINE void ID3D11DeviceContext_CSGetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
   7221     This->lpVtbl->CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
   7222 }
   7223 static FORCEINLINE void ID3D11DeviceContext_CSGetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
   7224     This->lpVtbl->CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
   7225 }
   7226 static FORCEINLINE void ID3D11DeviceContext_ClearState(ID3D11DeviceContext* This) {
   7227     This->lpVtbl->ClearState(This);
   7228 }
   7229 static FORCEINLINE void ID3D11DeviceContext_Flush(ID3D11DeviceContext* This) {
   7230     This->lpVtbl->Flush(This);
   7231 }
   7232 static FORCEINLINE D3D11_DEVICE_CONTEXT_TYPE ID3D11DeviceContext_GetType(ID3D11DeviceContext* This) {
   7233     return This->lpVtbl->GetType(This);
   7234 }
   7235 static FORCEINLINE UINT ID3D11DeviceContext_GetContextFlags(ID3D11DeviceContext* This) {
   7236     return This->lpVtbl->GetContextFlags(This);
   7237 }
   7238 static FORCEINLINE HRESULT ID3D11DeviceContext_FinishCommandList(ID3D11DeviceContext* This,WINBOOL RestoreDeferredContextState,ID3D11CommandList **ppCommandList) {
   7239     return This->lpVtbl->FinishCommandList(This,RestoreDeferredContextState,ppCommandList);
   7240 }
   7241 #endif
   7242 #endif
   7243 
   7244 #endif
   7245 
   7246 void STDMETHODCALLTYPE ID3D11DeviceContext_VSSetConstantBuffers_Proxy(
   7247     ID3D11DeviceContext* This,
   7248     UINT StartSlot,
   7249     UINT NumBuffers,
   7250     ID3D11Buffer *const *ppConstantBuffers);
   7251 void __RPC_STUB ID3D11DeviceContext_VSSetConstantBuffers_Stub(
   7252     IRpcStubBuffer* This,
   7253     IRpcChannelBuffer* pRpcChannelBuffer,
   7254     PRPC_MESSAGE pRpcMessage,
   7255     DWORD* pdwStubPhase);
   7256 void STDMETHODCALLTYPE ID3D11DeviceContext_PSSetShaderResources_Proxy(
   7257     ID3D11DeviceContext* This,
   7258     UINT StartSlot,
   7259     UINT NumViews,
   7260     ID3D11ShaderResourceView *const *ppShaderResourceViews);
   7261 void __RPC_STUB ID3D11DeviceContext_PSSetShaderResources_Stub(
   7262     IRpcStubBuffer* This,
   7263     IRpcChannelBuffer* pRpcChannelBuffer,
   7264     PRPC_MESSAGE pRpcMessage,
   7265     DWORD* pdwStubPhase);
   7266 void STDMETHODCALLTYPE ID3D11DeviceContext_PSSetShader_Proxy(
   7267     ID3D11DeviceContext* This,
   7268     ID3D11PixelShader *pPixelShader,
   7269     ID3D11ClassInstance *const *ppClassInstances,
   7270     UINT NumClassInstances);
   7271 void __RPC_STUB ID3D11DeviceContext_PSSetShader_Stub(
   7272     IRpcStubBuffer* This,
   7273     IRpcChannelBuffer* pRpcChannelBuffer,
   7274     PRPC_MESSAGE pRpcMessage,
   7275     DWORD* pdwStubPhase);
   7276 void STDMETHODCALLTYPE ID3D11DeviceContext_PSSetSamplers_Proxy(
   7277     ID3D11DeviceContext* This,
   7278     UINT StartSlot,
   7279     UINT NumSamplers,
   7280     ID3D11SamplerState *const *ppSamplers);
   7281 void __RPC_STUB ID3D11DeviceContext_PSSetSamplers_Stub(
   7282     IRpcStubBuffer* This,
   7283     IRpcChannelBuffer* pRpcChannelBuffer,
   7284     PRPC_MESSAGE pRpcMessage,
   7285     DWORD* pdwStubPhase);
   7286 void STDMETHODCALLTYPE ID3D11DeviceContext_VSSetShader_Proxy(
   7287     ID3D11DeviceContext* This,
   7288     ID3D11VertexShader *pVertexShader,
   7289     ID3D11ClassInstance *const *ppClassInstances,
   7290     UINT NumClassInstances);
   7291 void __RPC_STUB ID3D11DeviceContext_VSSetShader_Stub(
   7292     IRpcStubBuffer* This,
   7293     IRpcChannelBuffer* pRpcChannelBuffer,
   7294     PRPC_MESSAGE pRpcMessage,
   7295     DWORD* pdwStubPhase);
   7296 void STDMETHODCALLTYPE ID3D11DeviceContext_DrawIndexed_Proxy(
   7297     ID3D11DeviceContext* This,
   7298     UINT IndexCount,
   7299     UINT StartIndexLocation,
   7300     INT BaseVertexLocation);
   7301 void __RPC_STUB ID3D11DeviceContext_DrawIndexed_Stub(
   7302     IRpcStubBuffer* This,
   7303     IRpcChannelBuffer* pRpcChannelBuffer,
   7304     PRPC_MESSAGE pRpcMessage,
   7305     DWORD* pdwStubPhase);
   7306 void STDMETHODCALLTYPE ID3D11DeviceContext_Draw_Proxy(
   7307     ID3D11DeviceContext* This,
   7308     UINT VertexCount,
   7309     UINT StartVertexLocation);
   7310 void __RPC_STUB ID3D11DeviceContext_Draw_Stub(
   7311     IRpcStubBuffer* This,
   7312     IRpcChannelBuffer* pRpcChannelBuffer,
   7313     PRPC_MESSAGE pRpcMessage,
   7314     DWORD* pdwStubPhase);
   7315 HRESULT STDMETHODCALLTYPE ID3D11DeviceContext_Map_Proxy(
   7316     ID3D11DeviceContext* This,
   7317     ID3D11Resource *pResource,
   7318     UINT Subresource,
   7319     D3D11_MAP MapType,
   7320     UINT MapFlags,
   7321     D3D11_MAPPED_SUBRESOURCE *pMappedResource);
   7322 void __RPC_STUB ID3D11DeviceContext_Map_Stub(
   7323     IRpcStubBuffer* This,
   7324     IRpcChannelBuffer* pRpcChannelBuffer,
   7325     PRPC_MESSAGE pRpcMessage,
   7326     DWORD* pdwStubPhase);
   7327 void STDMETHODCALLTYPE ID3D11DeviceContext_Unmap_Proxy(
   7328     ID3D11DeviceContext* This,
   7329     ID3D11Resource *pResource,
   7330     UINT Subresource);
   7331 void __RPC_STUB ID3D11DeviceContext_Unmap_Stub(
   7332     IRpcStubBuffer* This,
   7333     IRpcChannelBuffer* pRpcChannelBuffer,
   7334     PRPC_MESSAGE pRpcMessage,
   7335     DWORD* pdwStubPhase);
   7336 void STDMETHODCALLTYPE ID3D11DeviceContext_PSSetConstantBuffers_Proxy(
   7337     ID3D11DeviceContext* This,
   7338     UINT StartSlot,
   7339     UINT NumBuffers,
   7340     ID3D11Buffer *const *ppConstantBuffers);
   7341 void __RPC_STUB ID3D11DeviceContext_PSSetConstantBuffers_Stub(
   7342     IRpcStubBuffer* This,
   7343     IRpcChannelBuffer* pRpcChannelBuffer,
   7344     PRPC_MESSAGE pRpcMessage,
   7345     DWORD* pdwStubPhase);
   7346 void STDMETHODCALLTYPE ID3D11DeviceContext_IASetInputLayout_Proxy(
   7347     ID3D11DeviceContext* This,
   7348     ID3D11InputLayout *pInputLayout);
   7349 void __RPC_STUB ID3D11DeviceContext_IASetInputLayout_Stub(
   7350     IRpcStubBuffer* This,
   7351     IRpcChannelBuffer* pRpcChannelBuffer,
   7352     PRPC_MESSAGE pRpcMessage,
   7353     DWORD* pdwStubPhase);
   7354 void STDMETHODCALLTYPE ID3D11DeviceContext_IASetVertexBuffers_Proxy(
   7355     ID3D11DeviceContext* This,
   7356     UINT StartSlot,
   7357     UINT NumBuffers,
   7358     ID3D11Buffer *const *ppVertexBuffers,
   7359     const UINT *pStrides,
   7360     const UINT *pOffsets);
   7361 void __RPC_STUB ID3D11DeviceContext_IASetVertexBuffers_Stub(
   7362     IRpcStubBuffer* This,
   7363     IRpcChannelBuffer* pRpcChannelBuffer,
   7364     PRPC_MESSAGE pRpcMessage,
   7365     DWORD* pdwStubPhase);
   7366 void STDMETHODCALLTYPE ID3D11DeviceContext_IASetIndexBuffer_Proxy(
   7367     ID3D11DeviceContext* This,
   7368     ID3D11Buffer *pIndexBuffer,
   7369     DXGI_FORMAT Format,
   7370     UINT Offset);
   7371 void __RPC_STUB ID3D11DeviceContext_IASetIndexBuffer_Stub(
   7372     IRpcStubBuffer* This,
   7373     IRpcChannelBuffer* pRpcChannelBuffer,
   7374     PRPC_MESSAGE pRpcMessage,
   7375     DWORD* pdwStubPhase);
   7376 void STDMETHODCALLTYPE ID3D11DeviceContext_DrawIndexedInstanced_Proxy(
   7377     ID3D11DeviceContext* This,
   7378     UINT IndexCountPerInstance,
   7379     UINT InstanceCount,
   7380     UINT StartIndexLocation,
   7381     INT BaseVertexLocation,
   7382     UINT StartInstanceLocation);
   7383 void __RPC_STUB ID3D11DeviceContext_DrawIndexedInstanced_Stub(
   7384     IRpcStubBuffer* This,
   7385     IRpcChannelBuffer* pRpcChannelBuffer,
   7386     PRPC_MESSAGE pRpcMessage,
   7387     DWORD* pdwStubPhase);
   7388 void STDMETHODCALLTYPE ID3D11DeviceContext_DrawInstanced_Proxy(
   7389     ID3D11DeviceContext* This,
   7390     UINT VertexCountPerInstance,
   7391     UINT InstanceCount,
   7392     UINT StartVertexLocation,
   7393     UINT StartInstanceLocation);
   7394 void __RPC_STUB ID3D11DeviceContext_DrawInstanced_Stub(
   7395     IRpcStubBuffer* This,
   7396     IRpcChannelBuffer* pRpcChannelBuffer,
   7397     PRPC_MESSAGE pRpcMessage,
   7398     DWORD* pdwStubPhase);
   7399 void STDMETHODCALLTYPE ID3D11DeviceContext_GSSetConstantBuffers_Proxy(
   7400     ID3D11DeviceContext* This,
   7401     UINT StartSlot,
   7402     UINT NumBuffers,
   7403     ID3D11Buffer *const *ppConstantBuffers);
   7404 void __RPC_STUB ID3D11DeviceContext_GSSetConstantBuffers_Stub(
   7405     IRpcStubBuffer* This,
   7406     IRpcChannelBuffer* pRpcChannelBuffer,
   7407     PRPC_MESSAGE pRpcMessage,
   7408     DWORD* pdwStubPhase);
   7409 void STDMETHODCALLTYPE ID3D11DeviceContext_GSSetShader_Proxy(
   7410     ID3D11DeviceContext* This,
   7411     ID3D11GeometryShader *pShader,
   7412     ID3D11ClassInstance *const *ppClassInstances,
   7413     UINT NumClassInstances);
   7414 void __RPC_STUB ID3D11DeviceContext_GSSetShader_Stub(
   7415     IRpcStubBuffer* This,
   7416     IRpcChannelBuffer* pRpcChannelBuffer,
   7417     PRPC_MESSAGE pRpcMessage,
   7418     DWORD* pdwStubPhase);
   7419 void STDMETHODCALLTYPE ID3D11DeviceContext_IASetPrimitiveTopology_Proxy(
   7420     ID3D11DeviceContext* This,
   7421     D3D11_PRIMITIVE_TOPOLOGY Topology);
   7422 void __RPC_STUB ID3D11DeviceContext_IASetPrimitiveTopology_Stub(
   7423     IRpcStubBuffer* This,
   7424     IRpcChannelBuffer* pRpcChannelBuffer,
   7425     PRPC_MESSAGE pRpcMessage,
   7426     DWORD* pdwStubPhase);
   7427 void STDMETHODCALLTYPE ID3D11DeviceContext_VSSetShaderResources_Proxy(
   7428     ID3D11DeviceContext* This,
   7429     UINT StartSlot,
   7430     UINT NumViews,
   7431     ID3D11ShaderResourceView *const *ppShaderResourceViews);
   7432 void __RPC_STUB ID3D11DeviceContext_VSSetShaderResources_Stub(
   7433     IRpcStubBuffer* This,
   7434     IRpcChannelBuffer* pRpcChannelBuffer,
   7435     PRPC_MESSAGE pRpcMessage,
   7436     DWORD* pdwStubPhase);
   7437 void STDMETHODCALLTYPE ID3D11DeviceContext_VSSetSamplers_Proxy(
   7438     ID3D11DeviceContext* This,
   7439     UINT StartSlot,
   7440     UINT NumSamplers,
   7441     ID3D11SamplerState *const *ppSamplers);
   7442 void __RPC_STUB ID3D11DeviceContext_VSSetSamplers_Stub(
   7443     IRpcStubBuffer* This,
   7444     IRpcChannelBuffer* pRpcChannelBuffer,
   7445     PRPC_MESSAGE pRpcMessage,
   7446     DWORD* pdwStubPhase);
   7447 void STDMETHODCALLTYPE ID3D11DeviceContext_Begin_Proxy(
   7448     ID3D11DeviceContext* This,
   7449     ID3D11Asynchronous *pAsync);
   7450 void __RPC_STUB ID3D11DeviceContext_Begin_Stub(
   7451     IRpcStubBuffer* This,
   7452     IRpcChannelBuffer* pRpcChannelBuffer,
   7453     PRPC_MESSAGE pRpcMessage,
   7454     DWORD* pdwStubPhase);
   7455 void STDMETHODCALLTYPE ID3D11DeviceContext_End_Proxy(
   7456     ID3D11DeviceContext* This,
   7457     ID3D11Asynchronous *pAsync);
   7458 void __RPC_STUB ID3D11DeviceContext_End_Stub(
   7459     IRpcStubBuffer* This,
   7460     IRpcChannelBuffer* pRpcChannelBuffer,
   7461     PRPC_MESSAGE pRpcMessage,
   7462     DWORD* pdwStubPhase);
   7463 HRESULT STDMETHODCALLTYPE ID3D11DeviceContext_GetData_Proxy(
   7464     ID3D11DeviceContext* This,
   7465     ID3D11Asynchronous *pAsync,
   7466     void *pData,
   7467     UINT DataSize,
   7468     UINT GetDataFlags);
   7469 void __RPC_STUB ID3D11DeviceContext_GetData_Stub(
   7470     IRpcStubBuffer* This,
   7471     IRpcChannelBuffer* pRpcChannelBuffer,
   7472     PRPC_MESSAGE pRpcMessage,
   7473     DWORD* pdwStubPhase);
   7474 void STDMETHODCALLTYPE ID3D11DeviceContext_SetPredication_Proxy(
   7475     ID3D11DeviceContext* This,
   7476     ID3D11Predicate *pPredicate,
   7477     WINBOOL PredicateValue);
   7478 void __RPC_STUB ID3D11DeviceContext_SetPredication_Stub(
   7479     IRpcStubBuffer* This,
   7480     IRpcChannelBuffer* pRpcChannelBuffer,
   7481     PRPC_MESSAGE pRpcMessage,
   7482     DWORD* pdwStubPhase);
   7483 void STDMETHODCALLTYPE ID3D11DeviceContext_GSSetShaderResources_Proxy(
   7484     ID3D11DeviceContext* This,
   7485     UINT StartSlot,
   7486     UINT NumViews,
   7487     ID3D11ShaderResourceView *const *ppShaderResourceViews);
   7488 void __RPC_STUB ID3D11DeviceContext_GSSetShaderResources_Stub(
   7489     IRpcStubBuffer* This,
   7490     IRpcChannelBuffer* pRpcChannelBuffer,
   7491     PRPC_MESSAGE pRpcMessage,
   7492     DWORD* pdwStubPhase);
   7493 void STDMETHODCALLTYPE ID3D11DeviceContext_GSSetSamplers_Proxy(
   7494     ID3D11DeviceContext* This,
   7495     UINT StartSlot,
   7496     UINT NumSamplers,
   7497     ID3D11SamplerState *const *ppSamplers);
   7498 void __RPC_STUB ID3D11DeviceContext_GSSetSamplers_Stub(
   7499     IRpcStubBuffer* This,
   7500     IRpcChannelBuffer* pRpcChannelBuffer,
   7501     PRPC_MESSAGE pRpcMessage,
   7502     DWORD* pdwStubPhase);
   7503 void STDMETHODCALLTYPE ID3D11DeviceContext_OMSetRenderTargets_Proxy(
   7504     ID3D11DeviceContext* This,
   7505     UINT NumViews,
   7506     ID3D11RenderTargetView *const *ppRenderTargetViews,
   7507     ID3D11DepthStencilView *pDepthStencilView);
   7508 void __RPC_STUB ID3D11DeviceContext_OMSetRenderTargets_Stub(
   7509     IRpcStubBuffer* This,
   7510     IRpcChannelBuffer* pRpcChannelBuffer,
   7511     PRPC_MESSAGE pRpcMessage,
   7512     DWORD* pdwStubPhase);
   7513 void STDMETHODCALLTYPE ID3D11DeviceContext_OMSetRenderTargetsAndUnorderedAccessViews_Proxy(
   7514     ID3D11DeviceContext* This,
   7515     UINT NumRTVs,
   7516     ID3D11RenderTargetView *const *ppRenderTargetViews,
   7517     ID3D11DepthStencilView *pDepthStencilView,
   7518     UINT UAVStartSlot,
   7519     UINT NumUAVs,
   7520     ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,
   7521     const UINT *pUAVInitialCounts);
   7522 void __RPC_STUB ID3D11DeviceContext_OMSetRenderTargetsAndUnorderedAccessViews_Stub(
   7523     IRpcStubBuffer* This,
   7524     IRpcChannelBuffer* pRpcChannelBuffer,
   7525     PRPC_MESSAGE pRpcMessage,
   7526     DWORD* pdwStubPhase);
   7527 void STDMETHODCALLTYPE ID3D11DeviceContext_OMSetBlendState_Proxy(
   7528     ID3D11DeviceContext* This,
   7529     ID3D11BlendState *pBlendState,
   7530     const FLOAT BlendFactor[4],
   7531     UINT SampleMask);
   7532 void __RPC_STUB ID3D11DeviceContext_OMSetBlendState_Stub(
   7533     IRpcStubBuffer* This,
   7534     IRpcChannelBuffer* pRpcChannelBuffer,
   7535     PRPC_MESSAGE pRpcMessage,
   7536     DWORD* pdwStubPhase);
   7537 void STDMETHODCALLTYPE ID3D11DeviceContext_OMSetDepthStencilState_Proxy(
   7538     ID3D11DeviceContext* This,
   7539     ID3D11DepthStencilState *pDepthStencilState,
   7540     UINT StencilRef);
   7541 void __RPC_STUB ID3D11DeviceContext_OMSetDepthStencilState_Stub(
   7542     IRpcStubBuffer* This,
   7543     IRpcChannelBuffer* pRpcChannelBuffer,
   7544     PRPC_MESSAGE pRpcMessage,
   7545     DWORD* pdwStubPhase);
   7546 void STDMETHODCALLTYPE ID3D11DeviceContext_SOSetTargets_Proxy(
   7547     ID3D11DeviceContext* This,
   7548     UINT NumBuffers,
   7549     ID3D11Buffer *const *ppSOTargets,
   7550     const UINT *pOffsets);
   7551 void __RPC_STUB ID3D11DeviceContext_SOSetTargets_Stub(
   7552     IRpcStubBuffer* This,
   7553     IRpcChannelBuffer* pRpcChannelBuffer,
   7554     PRPC_MESSAGE pRpcMessage,
   7555     DWORD* pdwStubPhase);
   7556 void STDMETHODCALLTYPE ID3D11DeviceContext_DrawAuto_Proxy(
   7557     ID3D11DeviceContext* This);
   7558 void __RPC_STUB ID3D11DeviceContext_DrawAuto_Stub(
   7559     IRpcStubBuffer* This,
   7560     IRpcChannelBuffer* pRpcChannelBuffer,
   7561     PRPC_MESSAGE pRpcMessage,
   7562     DWORD* pdwStubPhase);
   7563 void STDMETHODCALLTYPE ID3D11DeviceContext_DrawIndexedInstancedIndirect_Proxy(
   7564     ID3D11DeviceContext* This,
   7565     ID3D11Buffer *pBufferForArgs,
   7566     UINT AlignedByteOffsetForArgs);
   7567 void __RPC_STUB ID3D11DeviceContext_DrawIndexedInstancedIndirect_Stub(
   7568     IRpcStubBuffer* This,
   7569     IRpcChannelBuffer* pRpcChannelBuffer,
   7570     PRPC_MESSAGE pRpcMessage,
   7571     DWORD* pdwStubPhase);
   7572 void STDMETHODCALLTYPE ID3D11DeviceContext_DrawInstancedIndirect_Proxy(
   7573     ID3D11DeviceContext* This,
   7574     ID3D11Buffer *pBufferForArgs,
   7575     UINT AlignedByteOffsetForArgs);
   7576 void __RPC_STUB ID3D11DeviceContext_DrawInstancedIndirect_Stub(
   7577     IRpcStubBuffer* This,
   7578     IRpcChannelBuffer* pRpcChannelBuffer,
   7579     PRPC_MESSAGE pRpcMessage,
   7580     DWORD* pdwStubPhase);
   7581 void STDMETHODCALLTYPE ID3D11DeviceContext_Dispatch_Proxy(
   7582     ID3D11DeviceContext* This,
   7583     UINT ThreadGroupCountX,
   7584     UINT ThreadGroupCountY,
   7585     UINT ThreadGroupCountZ);
   7586 void __RPC_STUB ID3D11DeviceContext_Dispatch_Stub(
   7587     IRpcStubBuffer* This,
   7588     IRpcChannelBuffer* pRpcChannelBuffer,
   7589     PRPC_MESSAGE pRpcMessage,
   7590     DWORD* pdwStubPhase);
   7591 void STDMETHODCALLTYPE ID3D11DeviceContext_DispatchIndirect_Proxy(
   7592     ID3D11DeviceContext* This,
   7593     ID3D11Buffer *pBufferForArgs,
   7594     UINT AlignedByteOffsetForArgs);
   7595 void __RPC_STUB ID3D11DeviceContext_DispatchIndirect_Stub(
   7596     IRpcStubBuffer* This,
   7597     IRpcChannelBuffer* pRpcChannelBuffer,
   7598     PRPC_MESSAGE pRpcMessage,
   7599     DWORD* pdwStubPhase);
   7600 void STDMETHODCALLTYPE ID3D11DeviceContext_RSSetState_Proxy(
   7601     ID3D11DeviceContext* This,
   7602     ID3D11RasterizerState *pRasterizerState);
   7603 void __RPC_STUB ID3D11DeviceContext_RSSetState_Stub(
   7604     IRpcStubBuffer* This,
   7605     IRpcChannelBuffer* pRpcChannelBuffer,
   7606     PRPC_MESSAGE pRpcMessage,
   7607     DWORD* pdwStubPhase);
   7608 void STDMETHODCALLTYPE ID3D11DeviceContext_RSSetViewports_Proxy(
   7609     ID3D11DeviceContext* This,
   7610     UINT NumViewports,
   7611     const D3D11_VIEWPORT *pViewports);
   7612 void __RPC_STUB ID3D11DeviceContext_RSSetViewports_Stub(
   7613     IRpcStubBuffer* This,
   7614     IRpcChannelBuffer* pRpcChannelBuffer,
   7615     PRPC_MESSAGE pRpcMessage,
   7616     DWORD* pdwStubPhase);
   7617 void STDMETHODCALLTYPE ID3D11DeviceContext_RSSetScissorRects_Proxy(
   7618     ID3D11DeviceContext* This,
   7619     UINT NumRects,
   7620     const D3D11_RECT *pRects);
   7621 void __RPC_STUB ID3D11DeviceContext_RSSetScissorRects_Stub(
   7622     IRpcStubBuffer* This,
   7623     IRpcChannelBuffer* pRpcChannelBuffer,
   7624     PRPC_MESSAGE pRpcMessage,
   7625     DWORD* pdwStubPhase);
   7626 void STDMETHODCALLTYPE ID3D11DeviceContext_CopySubresourceRegion_Proxy(
   7627     ID3D11DeviceContext* This,
   7628     ID3D11Resource *pDstResource,
   7629     UINT DstSubresource,
   7630     UINT DstX,
   7631     UINT DstY,
   7632     UINT DstZ,
   7633     ID3D11Resource *pSrcResource,
   7634     UINT SrcSubresource,
   7635     const D3D11_BOX *pSrcBox);
   7636 void __RPC_STUB ID3D11DeviceContext_CopySubresourceRegion_Stub(
   7637     IRpcStubBuffer* This,
   7638     IRpcChannelBuffer* pRpcChannelBuffer,
   7639     PRPC_MESSAGE pRpcMessage,
   7640     DWORD* pdwStubPhase);
   7641 void STDMETHODCALLTYPE ID3D11DeviceContext_CopyResource_Proxy(
   7642     ID3D11DeviceContext* This,
   7643     ID3D11Resource *pDstResource,
   7644     ID3D11Resource *pSrcResource);
   7645 void __RPC_STUB ID3D11DeviceContext_CopyResource_Stub(
   7646     IRpcStubBuffer* This,
   7647     IRpcChannelBuffer* pRpcChannelBuffer,
   7648     PRPC_MESSAGE pRpcMessage,
   7649     DWORD* pdwStubPhase);
   7650 void STDMETHODCALLTYPE ID3D11DeviceContext_UpdateSubresource_Proxy(
   7651     ID3D11DeviceContext* This,
   7652     ID3D11Resource *pDstResource,
   7653     UINT DstSubresource,
   7654     const D3D11_BOX *pDstBox,
   7655     const void *pSrcData,
   7656     UINT SrcRowPitch,
   7657     UINT SrcDepthPitch);
   7658 void __RPC_STUB ID3D11DeviceContext_UpdateSubresource_Stub(
   7659     IRpcStubBuffer* This,
   7660     IRpcChannelBuffer* pRpcChannelBuffer,
   7661     PRPC_MESSAGE pRpcMessage,
   7662     DWORD* pdwStubPhase);
   7663 void STDMETHODCALLTYPE ID3D11DeviceContext_CopyStructureCount_Proxy(
   7664     ID3D11DeviceContext* This,
   7665     ID3D11Buffer *pDstBuffer,
   7666     UINT DstAlignedByteOffset,
   7667     ID3D11UnorderedAccessView *pSrcView);
   7668 void __RPC_STUB ID3D11DeviceContext_CopyStructureCount_Stub(
   7669     IRpcStubBuffer* This,
   7670     IRpcChannelBuffer* pRpcChannelBuffer,
   7671     PRPC_MESSAGE pRpcMessage,
   7672     DWORD* pdwStubPhase);
   7673 void STDMETHODCALLTYPE ID3D11DeviceContext_ClearRenderTargetView_Proxy(
   7674     ID3D11DeviceContext* This,
   7675     ID3D11RenderTargetView *pRenderTargetView,
   7676     const FLOAT ColorRGBA[4]);
   7677 void __RPC_STUB ID3D11DeviceContext_ClearRenderTargetView_Stub(
   7678     IRpcStubBuffer* This,
   7679     IRpcChannelBuffer* pRpcChannelBuffer,
   7680     PRPC_MESSAGE pRpcMessage,
   7681     DWORD* pdwStubPhase);
   7682 void STDMETHODCALLTYPE ID3D11DeviceContext_ClearUnorderedAccessViewUint_Proxy(
   7683     ID3D11DeviceContext* This,
   7684     ID3D11UnorderedAccessView *pUnorderedAccessView,
   7685     const UINT Values[4]);
   7686 void __RPC_STUB ID3D11DeviceContext_ClearUnorderedAccessViewUint_Stub(
   7687     IRpcStubBuffer* This,
   7688     IRpcChannelBuffer* pRpcChannelBuffer,
   7689     PRPC_MESSAGE pRpcMessage,
   7690     DWORD* pdwStubPhase);
   7691 void STDMETHODCALLTYPE ID3D11DeviceContext_ClearUnorderedAccessViewFloat_Proxy(
   7692     ID3D11DeviceContext* This,
   7693     ID3D11UnorderedAccessView *pUnorderedAccessView,
   7694     const FLOAT Values[4]);
   7695 void __RPC_STUB ID3D11DeviceContext_ClearUnorderedAccessViewFloat_Stub(
   7696     IRpcStubBuffer* This,
   7697     IRpcChannelBuffer* pRpcChannelBuffer,
   7698     PRPC_MESSAGE pRpcMessage,
   7699     DWORD* pdwStubPhase);
   7700 void STDMETHODCALLTYPE ID3D11DeviceContext_ClearDepthStencilView_Proxy(
   7701     ID3D11DeviceContext* This,
   7702     ID3D11DepthStencilView *pDepthStencilView,
   7703     UINT ClearFlags,
   7704     FLOAT Depth,
   7705     UINT8 Stencil);
   7706 void __RPC_STUB ID3D11DeviceContext_ClearDepthStencilView_Stub(
   7707     IRpcStubBuffer* This,
   7708     IRpcChannelBuffer* pRpcChannelBuffer,
   7709     PRPC_MESSAGE pRpcMessage,
   7710     DWORD* pdwStubPhase);
   7711 void STDMETHODCALLTYPE ID3D11DeviceContext_GenerateMips_Proxy(
   7712     ID3D11DeviceContext* This,
   7713     ID3D11ShaderResourceView *pShaderResourceView);
   7714 void __RPC_STUB ID3D11DeviceContext_GenerateMips_Stub(
   7715     IRpcStubBuffer* This,
   7716     IRpcChannelBuffer* pRpcChannelBuffer,
   7717     PRPC_MESSAGE pRpcMessage,
   7718     DWORD* pdwStubPhase);
   7719 void STDMETHODCALLTYPE ID3D11DeviceContext_SetResourceMinLOD_Proxy(
   7720     ID3D11DeviceContext* This,
   7721     ID3D11Resource *pResource,
   7722     FLOAT MinLOD);
   7723 void __RPC_STUB ID3D11DeviceContext_SetResourceMinLOD_Stub(
   7724     IRpcStubBuffer* This,
   7725     IRpcChannelBuffer* pRpcChannelBuffer,
   7726     PRPC_MESSAGE pRpcMessage,
   7727     DWORD* pdwStubPhase);
   7728 FLOAT STDMETHODCALLTYPE ID3D11DeviceContext_GetResourceMinLOD_Proxy(
   7729     ID3D11DeviceContext* This,
   7730     ID3D11Resource *pResource);
   7731 void __RPC_STUB ID3D11DeviceContext_GetResourceMinLOD_Stub(
   7732     IRpcStubBuffer* This,
   7733     IRpcChannelBuffer* pRpcChannelBuffer,
   7734     PRPC_MESSAGE pRpcMessage,
   7735     DWORD* pdwStubPhase);
   7736 void STDMETHODCALLTYPE ID3D11DeviceContext_ResolveSubresource_Proxy(
   7737     ID3D11DeviceContext* This,
   7738     ID3D11Resource *pDstResource,
   7739     UINT DstSubresource,
   7740     ID3D11Resource *pSrcResource,
   7741     UINT SrcSubresource,
   7742     DXGI_FORMAT Format);
   7743 void __RPC_STUB ID3D11DeviceContext_ResolveSubresource_Stub(
   7744     IRpcStubBuffer* This,
   7745     IRpcChannelBuffer* pRpcChannelBuffer,
   7746     PRPC_MESSAGE pRpcMessage,
   7747     DWORD* pdwStubPhase);
   7748 void STDMETHODCALLTYPE ID3D11DeviceContext_ExecuteCommandList_Proxy(
   7749     ID3D11DeviceContext* This,
   7750     ID3D11CommandList *pCommandList,
   7751     WINBOOL RestoreContextState);
   7752 void __RPC_STUB ID3D11DeviceContext_ExecuteCommandList_Stub(
   7753     IRpcStubBuffer* This,
   7754     IRpcChannelBuffer* pRpcChannelBuffer,
   7755     PRPC_MESSAGE pRpcMessage,
   7756     DWORD* pdwStubPhase);
   7757 void STDMETHODCALLTYPE ID3D11DeviceContext_HSSetShaderResources_Proxy(
   7758     ID3D11DeviceContext* This,
   7759     UINT StartSlot,
   7760     UINT NumViews,
   7761     ID3D11ShaderResourceView *const *ppShaderResourceViews);
   7762 void __RPC_STUB ID3D11DeviceContext_HSSetShaderResources_Stub(
   7763     IRpcStubBuffer* This,
   7764     IRpcChannelBuffer* pRpcChannelBuffer,
   7765     PRPC_MESSAGE pRpcMessage,
   7766     DWORD* pdwStubPhase);
   7767 void STDMETHODCALLTYPE ID3D11DeviceContext_HSSetShader_Proxy(
   7768     ID3D11DeviceContext* This,
   7769     ID3D11HullShader *pHullShader,
   7770     ID3D11ClassInstance *const *ppClassInstances,
   7771     UINT NumClassInstances);
   7772 void __RPC_STUB ID3D11DeviceContext_HSSetShader_Stub(
   7773     IRpcStubBuffer* This,
   7774     IRpcChannelBuffer* pRpcChannelBuffer,
   7775     PRPC_MESSAGE pRpcMessage,
   7776     DWORD* pdwStubPhase);
   7777 void STDMETHODCALLTYPE ID3D11DeviceContext_HSSetSamplers_Proxy(
   7778     ID3D11DeviceContext* This,
   7779     UINT StartSlot,
   7780     UINT NumSamplers,
   7781     ID3D11SamplerState *const *ppSamplers);
   7782 void __RPC_STUB ID3D11DeviceContext_HSSetSamplers_Stub(
   7783     IRpcStubBuffer* This,
   7784     IRpcChannelBuffer* pRpcChannelBuffer,
   7785     PRPC_MESSAGE pRpcMessage,
   7786     DWORD* pdwStubPhase);
   7787 void STDMETHODCALLTYPE ID3D11DeviceContext_HSSetConstantBuffers_Proxy(
   7788     ID3D11DeviceContext* This,
   7789     UINT StartSlot,
   7790     UINT NumBuffers,
   7791     ID3D11Buffer *const *ppConstantBuffers);
   7792 void __RPC_STUB ID3D11DeviceContext_HSSetConstantBuffers_Stub(
   7793     IRpcStubBuffer* This,
   7794     IRpcChannelBuffer* pRpcChannelBuffer,
   7795     PRPC_MESSAGE pRpcMessage,
   7796     DWORD* pdwStubPhase);
   7797 void STDMETHODCALLTYPE ID3D11DeviceContext_DSSetShaderResources_Proxy(
   7798     ID3D11DeviceContext* This,
   7799     UINT StartSlot,
   7800     UINT NumViews,
   7801     ID3D11ShaderResourceView *const *ppShaderResourceViews);
   7802 void __RPC_STUB ID3D11DeviceContext_DSSetShaderResources_Stub(
   7803     IRpcStubBuffer* This,
   7804     IRpcChannelBuffer* pRpcChannelBuffer,
   7805     PRPC_MESSAGE pRpcMessage,
   7806     DWORD* pdwStubPhase);
   7807 void STDMETHODCALLTYPE ID3D11DeviceContext_DSSetShader_Proxy(
   7808     ID3D11DeviceContext* This,
   7809     ID3D11DomainShader *pDomainShader,
   7810     ID3D11ClassInstance *const *ppClassInstances,
   7811     UINT NumClassInstances);
   7812 void __RPC_STUB ID3D11DeviceContext_DSSetShader_Stub(
   7813     IRpcStubBuffer* This,
   7814     IRpcChannelBuffer* pRpcChannelBuffer,
   7815     PRPC_MESSAGE pRpcMessage,
   7816     DWORD* pdwStubPhase);
   7817 void STDMETHODCALLTYPE ID3D11DeviceContext_DSSetSamplers_Proxy(
   7818     ID3D11DeviceContext* This,
   7819     UINT StartSlot,
   7820     UINT NumSamplers,
   7821     ID3D11SamplerState *const *ppSamplers);
   7822 void __RPC_STUB ID3D11DeviceContext_DSSetSamplers_Stub(
   7823     IRpcStubBuffer* This,
   7824     IRpcChannelBuffer* pRpcChannelBuffer,
   7825     PRPC_MESSAGE pRpcMessage,
   7826     DWORD* pdwStubPhase);
   7827 void STDMETHODCALLTYPE ID3D11DeviceContext_DSSetConstantBuffers_Proxy(
   7828     ID3D11DeviceContext* This,
   7829     UINT StartSlot,
   7830     UINT NumBuffers,
   7831     ID3D11Buffer *const *ppConstantBuffers);
   7832 void __RPC_STUB ID3D11DeviceContext_DSSetConstantBuffers_Stub(
   7833     IRpcStubBuffer* This,
   7834     IRpcChannelBuffer* pRpcChannelBuffer,
   7835     PRPC_MESSAGE pRpcMessage,
   7836     DWORD* pdwStubPhase);
   7837 void STDMETHODCALLTYPE ID3D11DeviceContext_CSSetShaderResources_Proxy(
   7838     ID3D11DeviceContext* This,
   7839     UINT StartSlot,
   7840     UINT NumViews,
   7841     ID3D11ShaderResourceView *const *ppShaderResourceViews);
   7842 void __RPC_STUB ID3D11DeviceContext_CSSetShaderResources_Stub(
   7843     IRpcStubBuffer* This,
   7844     IRpcChannelBuffer* pRpcChannelBuffer,
   7845     PRPC_MESSAGE pRpcMessage,
   7846     DWORD* pdwStubPhase);
   7847 void STDMETHODCALLTYPE ID3D11DeviceContext_CSSetUnorderedAccessViews_Proxy(
   7848     ID3D11DeviceContext* This,
   7849     UINT StartSlot,
   7850     UINT NumUAVs,
   7851     ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,
   7852     const UINT *pUAVInitialCounts);
   7853 void __RPC_STUB ID3D11DeviceContext_CSSetUnorderedAccessViews_Stub(
   7854     IRpcStubBuffer* This,
   7855     IRpcChannelBuffer* pRpcChannelBuffer,
   7856     PRPC_MESSAGE pRpcMessage,
   7857     DWORD* pdwStubPhase);
   7858 void STDMETHODCALLTYPE ID3D11DeviceContext_CSSetShader_Proxy(
   7859     ID3D11DeviceContext* This,
   7860     ID3D11ComputeShader *pComputeShader,
   7861     ID3D11ClassInstance *const *ppClassInstances,
   7862     UINT NumClassInstances);
   7863 void __RPC_STUB ID3D11DeviceContext_CSSetShader_Stub(
   7864     IRpcStubBuffer* This,
   7865     IRpcChannelBuffer* pRpcChannelBuffer,
   7866     PRPC_MESSAGE pRpcMessage,
   7867     DWORD* pdwStubPhase);
   7868 void STDMETHODCALLTYPE ID3D11DeviceContext_CSSetSamplers_Proxy(
   7869     ID3D11DeviceContext* This,
   7870     UINT StartSlot,
   7871     UINT NumSamplers,
   7872     ID3D11SamplerState *const *ppSamplers);
   7873 void __RPC_STUB ID3D11DeviceContext_CSSetSamplers_Stub(
   7874     IRpcStubBuffer* This,
   7875     IRpcChannelBuffer* pRpcChannelBuffer,
   7876     PRPC_MESSAGE pRpcMessage,
   7877     DWORD* pdwStubPhase);
   7878 void STDMETHODCALLTYPE ID3D11DeviceContext_CSSetConstantBuffers_Proxy(
   7879     ID3D11DeviceContext* This,
   7880     UINT StartSlot,
   7881     UINT NumBuffers,
   7882     ID3D11Buffer *const *ppConstantBuffers);
   7883 void __RPC_STUB ID3D11DeviceContext_CSSetConstantBuffers_Stub(
   7884     IRpcStubBuffer* This,
   7885     IRpcChannelBuffer* pRpcChannelBuffer,
   7886     PRPC_MESSAGE pRpcMessage,
   7887     DWORD* pdwStubPhase);
   7888 void STDMETHODCALLTYPE ID3D11DeviceContext_VSGetConstantBuffers_Proxy(
   7889     ID3D11DeviceContext* This,
   7890     UINT StartSlot,
   7891     UINT NumBuffers,
   7892     ID3D11Buffer **ppConstantBuffers);
   7893 void __RPC_STUB ID3D11DeviceContext_VSGetConstantBuffers_Stub(
   7894     IRpcStubBuffer* This,
   7895     IRpcChannelBuffer* pRpcChannelBuffer,
   7896     PRPC_MESSAGE pRpcMessage,
   7897     DWORD* pdwStubPhase);
   7898 void STDMETHODCALLTYPE ID3D11DeviceContext_PSGetShaderResources_Proxy(
   7899     ID3D11DeviceContext* This,
   7900     UINT StartSlot,
   7901     UINT NumViews,
   7902     ID3D11ShaderResourceView **ppShaderResourceViews);
   7903 void __RPC_STUB ID3D11DeviceContext_PSGetShaderResources_Stub(
   7904     IRpcStubBuffer* This,
   7905     IRpcChannelBuffer* pRpcChannelBuffer,
   7906     PRPC_MESSAGE pRpcMessage,
   7907     DWORD* pdwStubPhase);
   7908 void STDMETHODCALLTYPE ID3D11DeviceContext_PSGetShader_Proxy(
   7909     ID3D11DeviceContext* This,
   7910     ID3D11PixelShader **ppPixelShader,
   7911     ID3D11ClassInstance **ppClassInstances,
   7912     UINT *pNumClassInstances);
   7913 void __RPC_STUB ID3D11DeviceContext_PSGetShader_Stub(
   7914     IRpcStubBuffer* This,
   7915     IRpcChannelBuffer* pRpcChannelBuffer,
   7916     PRPC_MESSAGE pRpcMessage,
   7917     DWORD* pdwStubPhase);
   7918 void STDMETHODCALLTYPE ID3D11DeviceContext_PSGetSamplers_Proxy(
   7919     ID3D11DeviceContext* This,
   7920     UINT StartSlot,
   7921     UINT NumSamplers,
   7922     ID3D11SamplerState **ppSamplers);
   7923 void __RPC_STUB ID3D11DeviceContext_PSGetSamplers_Stub(
   7924     IRpcStubBuffer* This,
   7925     IRpcChannelBuffer* pRpcChannelBuffer,
   7926     PRPC_MESSAGE pRpcMessage,
   7927     DWORD* pdwStubPhase);
   7928 void STDMETHODCALLTYPE ID3D11DeviceContext_VSGetShader_Proxy(
   7929     ID3D11DeviceContext* This,
   7930     ID3D11VertexShader **ppVertexShader,
   7931     ID3D11ClassInstance **ppClassInstances,
   7932     UINT *pNumClassInstances);
   7933 void __RPC_STUB ID3D11DeviceContext_VSGetShader_Stub(
   7934     IRpcStubBuffer* This,
   7935     IRpcChannelBuffer* pRpcChannelBuffer,
   7936     PRPC_MESSAGE pRpcMessage,
   7937     DWORD* pdwStubPhase);
   7938 void STDMETHODCALLTYPE ID3D11DeviceContext_PSGetConstantBuffers_Proxy(
   7939     ID3D11DeviceContext* This,
   7940     UINT StartSlot,
   7941     UINT NumBuffers,
   7942     ID3D11Buffer **ppConstantBuffers);
   7943 void __RPC_STUB ID3D11DeviceContext_PSGetConstantBuffers_Stub(
   7944     IRpcStubBuffer* This,
   7945     IRpcChannelBuffer* pRpcChannelBuffer,
   7946     PRPC_MESSAGE pRpcMessage,
   7947     DWORD* pdwStubPhase);
   7948 void STDMETHODCALLTYPE ID3D11DeviceContext_IAGetInputLayout_Proxy(
   7949     ID3D11DeviceContext* This,
   7950     ID3D11InputLayout **ppInputLayout);
   7951 void __RPC_STUB ID3D11DeviceContext_IAGetInputLayout_Stub(
   7952     IRpcStubBuffer* This,
   7953     IRpcChannelBuffer* pRpcChannelBuffer,
   7954     PRPC_MESSAGE pRpcMessage,
   7955     DWORD* pdwStubPhase);
   7956 void STDMETHODCALLTYPE ID3D11DeviceContext_IAGetVertexBuffers_Proxy(
   7957     ID3D11DeviceContext* This,
   7958     UINT StartSlot,
   7959     UINT NumBuffers,
   7960     ID3D11Buffer **ppVertexBuffers,
   7961     UINT *pStrides,
   7962     UINT *pOffsets);
   7963 void __RPC_STUB ID3D11DeviceContext_IAGetVertexBuffers_Stub(
   7964     IRpcStubBuffer* This,
   7965     IRpcChannelBuffer* pRpcChannelBuffer,
   7966     PRPC_MESSAGE pRpcMessage,
   7967     DWORD* pdwStubPhase);
   7968 void STDMETHODCALLTYPE ID3D11DeviceContext_IAGetIndexBuffer_Proxy(
   7969     ID3D11DeviceContext* This,
   7970     ID3D11Buffer **pIndexBuffer,
   7971     DXGI_FORMAT *Format,
   7972     UINT *Offset);
   7973 void __RPC_STUB ID3D11DeviceContext_IAGetIndexBuffer_Stub(
   7974     IRpcStubBuffer* This,
   7975     IRpcChannelBuffer* pRpcChannelBuffer,
   7976     PRPC_MESSAGE pRpcMessage,
   7977     DWORD* pdwStubPhase);
   7978 void STDMETHODCALLTYPE ID3D11DeviceContext_GSGetConstantBuffers_Proxy(
   7979     ID3D11DeviceContext* This,
   7980     UINT StartSlot,
   7981     UINT NumBuffers,
   7982     ID3D11Buffer **ppConstantBuffers);
   7983 void __RPC_STUB ID3D11DeviceContext_GSGetConstantBuffers_Stub(
   7984     IRpcStubBuffer* This,
   7985     IRpcChannelBuffer* pRpcChannelBuffer,
   7986     PRPC_MESSAGE pRpcMessage,
   7987     DWORD* pdwStubPhase);
   7988 void STDMETHODCALLTYPE ID3D11DeviceContext_GSGetShader_Proxy(
   7989     ID3D11DeviceContext* This,
   7990     ID3D11GeometryShader **ppGeometryShader,
   7991     ID3D11ClassInstance **ppClassInstances,
   7992     UINT *pNumClassInstances);
   7993 void __RPC_STUB ID3D11DeviceContext_GSGetShader_Stub(
   7994     IRpcStubBuffer* This,
   7995     IRpcChannelBuffer* pRpcChannelBuffer,
   7996     PRPC_MESSAGE pRpcMessage,
   7997     DWORD* pdwStubPhase);
   7998 void STDMETHODCALLTYPE ID3D11DeviceContext_IAGetPrimitiveTopology_Proxy(
   7999     ID3D11DeviceContext* This,
   8000     D3D11_PRIMITIVE_TOPOLOGY *pTopology);
   8001 void __RPC_STUB ID3D11DeviceContext_IAGetPrimitiveTopology_Stub(
   8002     IRpcStubBuffer* This,
   8003     IRpcChannelBuffer* pRpcChannelBuffer,
   8004     PRPC_MESSAGE pRpcMessage,
   8005     DWORD* pdwStubPhase);
   8006 void STDMETHODCALLTYPE ID3D11DeviceContext_VSGetShaderResources_Proxy(
   8007     ID3D11DeviceContext* This,
   8008     UINT StartSlot,
   8009     UINT NumViews,
   8010     ID3D11ShaderResourceView **ppShaderResourceViews);
   8011 void __RPC_STUB ID3D11DeviceContext_VSGetShaderResources_Stub(
   8012     IRpcStubBuffer* This,
   8013     IRpcChannelBuffer* pRpcChannelBuffer,
   8014     PRPC_MESSAGE pRpcMessage,
   8015     DWORD* pdwStubPhase);
   8016 void STDMETHODCALLTYPE ID3D11DeviceContext_VSGetSamplers_Proxy(
   8017     ID3D11DeviceContext* This,
   8018     UINT StartSlot,
   8019     UINT NumSamplers,
   8020     ID3D11SamplerState **ppSamplers);
   8021 void __RPC_STUB ID3D11DeviceContext_VSGetSamplers_Stub(
   8022     IRpcStubBuffer* This,
   8023     IRpcChannelBuffer* pRpcChannelBuffer,
   8024     PRPC_MESSAGE pRpcMessage,
   8025     DWORD* pdwStubPhase);
   8026 void STDMETHODCALLTYPE ID3D11DeviceContext_GetPredication_Proxy(
   8027     ID3D11DeviceContext* This,
   8028     ID3D11Predicate **ppPredicate,
   8029     WINBOOL *pPredicateValue);
   8030 void __RPC_STUB ID3D11DeviceContext_GetPredication_Stub(
   8031     IRpcStubBuffer* This,
   8032     IRpcChannelBuffer* pRpcChannelBuffer,
   8033     PRPC_MESSAGE pRpcMessage,
   8034     DWORD* pdwStubPhase);
   8035 void STDMETHODCALLTYPE ID3D11DeviceContext_GSGetShaderResources_Proxy(
   8036     ID3D11DeviceContext* This,
   8037     UINT StartSlot,
   8038     UINT NumViews,
   8039     ID3D11ShaderResourceView **ppShaderResourceViews);
   8040 void __RPC_STUB ID3D11DeviceContext_GSGetShaderResources_Stub(
   8041     IRpcStubBuffer* This,
   8042     IRpcChannelBuffer* pRpcChannelBuffer,
   8043     PRPC_MESSAGE pRpcMessage,
   8044     DWORD* pdwStubPhase);
   8045 void STDMETHODCALLTYPE ID3D11DeviceContext_GSGetSamplers_Proxy(
   8046     ID3D11DeviceContext* This,
   8047     UINT StartSlot,
   8048     UINT NumSamplers,
   8049     ID3D11SamplerState **ppSamplers);
   8050 void __RPC_STUB ID3D11DeviceContext_GSGetSamplers_Stub(
   8051     IRpcStubBuffer* This,
   8052     IRpcChannelBuffer* pRpcChannelBuffer,
   8053     PRPC_MESSAGE pRpcMessage,
   8054     DWORD* pdwStubPhase);
   8055 void STDMETHODCALLTYPE ID3D11DeviceContext_OMGetRenderTargets_Proxy(
   8056     ID3D11DeviceContext* This,
   8057     UINT NumViews,
   8058     ID3D11RenderTargetView **ppRenderTargetViews,
   8059     ID3D11DepthStencilView **ppDepthStencilView);
   8060 void __RPC_STUB ID3D11DeviceContext_OMGetRenderTargets_Stub(
   8061     IRpcStubBuffer* This,
   8062     IRpcChannelBuffer* pRpcChannelBuffer,
   8063     PRPC_MESSAGE pRpcMessage,
   8064     DWORD* pdwStubPhase);
   8065 void STDMETHODCALLTYPE ID3D11DeviceContext_OMGetRenderTargetsAndUnorderedAccessViews_Proxy(
   8066     ID3D11DeviceContext* This,
   8067     UINT NumRTVs,
   8068     ID3D11RenderTargetView **ppRenderTargetViews,
   8069     ID3D11DepthStencilView **ppDepthStencilView,
   8070     UINT UAVStartSlot,
   8071     UINT NumUAVs,
   8072     ID3D11UnorderedAccessView **ppUnorderedAccessViews);
   8073 void __RPC_STUB ID3D11DeviceContext_OMGetRenderTargetsAndUnorderedAccessViews_Stub(
   8074     IRpcStubBuffer* This,
   8075     IRpcChannelBuffer* pRpcChannelBuffer,
   8076     PRPC_MESSAGE pRpcMessage,
   8077     DWORD* pdwStubPhase);
   8078 void STDMETHODCALLTYPE ID3D11DeviceContext_OMGetBlendState_Proxy(
   8079     ID3D11DeviceContext* This,
   8080     ID3D11BlendState **ppBlendState,
   8081     FLOAT BlendFactor[4],
   8082     UINT *pSampleMask);
   8083 void __RPC_STUB ID3D11DeviceContext_OMGetBlendState_Stub(
   8084     IRpcStubBuffer* This,
   8085     IRpcChannelBuffer* pRpcChannelBuffer,
   8086     PRPC_MESSAGE pRpcMessage,
   8087     DWORD* pdwStubPhase);
   8088 void STDMETHODCALLTYPE ID3D11DeviceContext_OMGetDepthStencilState_Proxy(
   8089     ID3D11DeviceContext* This,
   8090     ID3D11DepthStencilState **ppDepthStencilState,
   8091     UINT *pStencilRef);
   8092 void __RPC_STUB ID3D11DeviceContext_OMGetDepthStencilState_Stub(
   8093     IRpcStubBuffer* This,
   8094     IRpcChannelBuffer* pRpcChannelBuffer,
   8095     PRPC_MESSAGE pRpcMessage,
   8096     DWORD* pdwStubPhase);
   8097 void STDMETHODCALLTYPE ID3D11DeviceContext_SOGetTargets_Proxy(
   8098     ID3D11DeviceContext* This,
   8099     UINT NumBuffers,
   8100     ID3D11Buffer **ppSOTargets);
   8101 void __RPC_STUB ID3D11DeviceContext_SOGetTargets_Stub(
   8102     IRpcStubBuffer* This,
   8103     IRpcChannelBuffer* pRpcChannelBuffer,
   8104     PRPC_MESSAGE pRpcMessage,
   8105     DWORD* pdwStubPhase);
   8106 void STDMETHODCALLTYPE ID3D11DeviceContext_RSGetState_Proxy(
   8107     ID3D11DeviceContext* This,
   8108     ID3D11RasterizerState **ppRasterizerState);
   8109 void __RPC_STUB ID3D11DeviceContext_RSGetState_Stub(
   8110     IRpcStubBuffer* This,
   8111     IRpcChannelBuffer* pRpcChannelBuffer,
   8112     PRPC_MESSAGE pRpcMessage,
   8113     DWORD* pdwStubPhase);
   8114 void STDMETHODCALLTYPE ID3D11DeviceContext_RSGetViewports_Proxy(
   8115     ID3D11DeviceContext* This,
   8116     UINT *pNumViewports,
   8117     D3D11_VIEWPORT *pViewports);
   8118 void __RPC_STUB ID3D11DeviceContext_RSGetViewports_Stub(
   8119     IRpcStubBuffer* This,
   8120     IRpcChannelBuffer* pRpcChannelBuffer,
   8121     PRPC_MESSAGE pRpcMessage,
   8122     DWORD* pdwStubPhase);
   8123 void STDMETHODCALLTYPE ID3D11DeviceContext_RSGetScissorRects_Proxy(
   8124     ID3D11DeviceContext* This,
   8125     UINT *pNumRects,
   8126     D3D11_RECT *pRects);
   8127 void __RPC_STUB ID3D11DeviceContext_RSGetScissorRects_Stub(
   8128     IRpcStubBuffer* This,
   8129     IRpcChannelBuffer* pRpcChannelBuffer,
   8130     PRPC_MESSAGE pRpcMessage,
   8131     DWORD* pdwStubPhase);
   8132 void STDMETHODCALLTYPE ID3D11DeviceContext_HSGetShaderResources_Proxy(
   8133     ID3D11DeviceContext* This,
   8134     UINT StartSlot,
   8135     UINT NumViews,
   8136     ID3D11ShaderResourceView **ppShaderResourceViews);
   8137 void __RPC_STUB ID3D11DeviceContext_HSGetShaderResources_Stub(
   8138     IRpcStubBuffer* This,
   8139     IRpcChannelBuffer* pRpcChannelBuffer,
   8140     PRPC_MESSAGE pRpcMessage,
   8141     DWORD* pdwStubPhase);
   8142 void STDMETHODCALLTYPE ID3D11DeviceContext_HSGetShader_Proxy(
   8143     ID3D11DeviceContext* This,
   8144     ID3D11HullShader **ppHullShader,
   8145     ID3D11ClassInstance **ppClassInstances,
   8146     UINT *pNumClassInstances);
   8147 void __RPC_STUB ID3D11DeviceContext_HSGetShader_Stub(
   8148     IRpcStubBuffer* This,
   8149     IRpcChannelBuffer* pRpcChannelBuffer,
   8150     PRPC_MESSAGE pRpcMessage,
   8151     DWORD* pdwStubPhase);
   8152 void STDMETHODCALLTYPE ID3D11DeviceContext_HSGetSamplers_Proxy(
   8153     ID3D11DeviceContext* This,
   8154     UINT StartSlot,
   8155     UINT NumSamplers,
   8156     ID3D11SamplerState **ppSamplers);
   8157 void __RPC_STUB ID3D11DeviceContext_HSGetSamplers_Stub(
   8158     IRpcStubBuffer* This,
   8159     IRpcChannelBuffer* pRpcChannelBuffer,
   8160     PRPC_MESSAGE pRpcMessage,
   8161     DWORD* pdwStubPhase);
   8162 void STDMETHODCALLTYPE ID3D11DeviceContext_HSGetConstantBuffers_Proxy(
   8163     ID3D11DeviceContext* This,
   8164     UINT StartSlot,
   8165     UINT NumBuffers,
   8166     ID3D11Buffer **ppConstantBuffers);
   8167 void __RPC_STUB ID3D11DeviceContext_HSGetConstantBuffers_Stub(
   8168     IRpcStubBuffer* This,
   8169     IRpcChannelBuffer* pRpcChannelBuffer,
   8170     PRPC_MESSAGE pRpcMessage,
   8171     DWORD* pdwStubPhase);
   8172 void STDMETHODCALLTYPE ID3D11DeviceContext_DSGetShaderResources_Proxy(
   8173     ID3D11DeviceContext* This,
   8174     UINT StartSlot,
   8175     UINT NumViews,
   8176     ID3D11ShaderResourceView **ppShaderResourceViews);
   8177 void __RPC_STUB ID3D11DeviceContext_DSGetShaderResources_Stub(
   8178     IRpcStubBuffer* This,
   8179     IRpcChannelBuffer* pRpcChannelBuffer,
   8180     PRPC_MESSAGE pRpcMessage,
   8181     DWORD* pdwStubPhase);
   8182 void STDMETHODCALLTYPE ID3D11DeviceContext_DSGetShader_Proxy(
   8183     ID3D11DeviceContext* This,
   8184     ID3D11DomainShader **ppDomainShader,
   8185     ID3D11ClassInstance **ppClassInstances,
   8186     UINT *pNumClassInstances);
   8187 void __RPC_STUB ID3D11DeviceContext_DSGetShader_Stub(
   8188     IRpcStubBuffer* This,
   8189     IRpcChannelBuffer* pRpcChannelBuffer,
   8190     PRPC_MESSAGE pRpcMessage,
   8191     DWORD* pdwStubPhase);
   8192 void STDMETHODCALLTYPE ID3D11DeviceContext_DSGetSamplers_Proxy(
   8193     ID3D11DeviceContext* This,
   8194     UINT StartSlot,
   8195     UINT NumSamplers,
   8196     ID3D11SamplerState **ppSamplers);
   8197 void __RPC_STUB ID3D11DeviceContext_DSGetSamplers_Stub(
   8198     IRpcStubBuffer* This,
   8199     IRpcChannelBuffer* pRpcChannelBuffer,
   8200     PRPC_MESSAGE pRpcMessage,
   8201     DWORD* pdwStubPhase);
   8202 void STDMETHODCALLTYPE ID3D11DeviceContext_DSGetConstantBuffers_Proxy(
   8203     ID3D11DeviceContext* This,
   8204     UINT StartSlot,
   8205     UINT NumBuffers,
   8206     ID3D11Buffer **ppConstantBuffers);
   8207 void __RPC_STUB ID3D11DeviceContext_DSGetConstantBuffers_Stub(
   8208     IRpcStubBuffer* This,
   8209     IRpcChannelBuffer* pRpcChannelBuffer,
   8210     PRPC_MESSAGE pRpcMessage,
   8211     DWORD* pdwStubPhase);
   8212 void STDMETHODCALLTYPE ID3D11DeviceContext_CSGetShaderResources_Proxy(
   8213     ID3D11DeviceContext* This,
   8214     UINT StartSlot,
   8215     UINT NumViews,
   8216     ID3D11ShaderResourceView **ppShaderResourceViews);
   8217 void __RPC_STUB ID3D11DeviceContext_CSGetShaderResources_Stub(
   8218     IRpcStubBuffer* This,
   8219     IRpcChannelBuffer* pRpcChannelBuffer,
   8220     PRPC_MESSAGE pRpcMessage,
   8221     DWORD* pdwStubPhase);
   8222 void STDMETHODCALLTYPE ID3D11DeviceContext_CSGetUnorderedAccessViews_Proxy(
   8223     ID3D11DeviceContext* This,
   8224     UINT StartSlot,
   8225     UINT NumUAVs,
   8226     ID3D11UnorderedAccessView **ppUnorderedAccessViews);
   8227 void __RPC_STUB ID3D11DeviceContext_CSGetUnorderedAccessViews_Stub(
   8228     IRpcStubBuffer* This,
   8229     IRpcChannelBuffer* pRpcChannelBuffer,
   8230     PRPC_MESSAGE pRpcMessage,
   8231     DWORD* pdwStubPhase);
   8232 void STDMETHODCALLTYPE ID3D11DeviceContext_CSGetShader_Proxy(
   8233     ID3D11DeviceContext* This,
   8234     ID3D11ComputeShader **ppComputeShader,
   8235     ID3D11ClassInstance **ppClassInstances,
   8236     UINT *pNumClassInstances);
   8237 void __RPC_STUB ID3D11DeviceContext_CSGetShader_Stub(
   8238     IRpcStubBuffer* This,
   8239     IRpcChannelBuffer* pRpcChannelBuffer,
   8240     PRPC_MESSAGE pRpcMessage,
   8241     DWORD* pdwStubPhase);
   8242 void STDMETHODCALLTYPE ID3D11DeviceContext_CSGetSamplers_Proxy(
   8243     ID3D11DeviceContext* This,
   8244     UINT StartSlot,
   8245     UINT NumSamplers,
   8246     ID3D11SamplerState **ppSamplers);
   8247 void __RPC_STUB ID3D11DeviceContext_CSGetSamplers_Stub(
   8248     IRpcStubBuffer* This,
   8249     IRpcChannelBuffer* pRpcChannelBuffer,
   8250     PRPC_MESSAGE pRpcMessage,
   8251     DWORD* pdwStubPhase);
   8252 void STDMETHODCALLTYPE ID3D11DeviceContext_CSGetConstantBuffers_Proxy(
   8253     ID3D11DeviceContext* This,
   8254     UINT StartSlot,
   8255     UINT NumBuffers,
   8256     ID3D11Buffer **ppConstantBuffers);
   8257 void __RPC_STUB ID3D11DeviceContext_CSGetConstantBuffers_Stub(
   8258     IRpcStubBuffer* This,
   8259     IRpcChannelBuffer* pRpcChannelBuffer,
   8260     PRPC_MESSAGE pRpcMessage,
   8261     DWORD* pdwStubPhase);
   8262 void STDMETHODCALLTYPE ID3D11DeviceContext_ClearState_Proxy(
   8263     ID3D11DeviceContext* This);
   8264 void __RPC_STUB ID3D11DeviceContext_ClearState_Stub(
   8265     IRpcStubBuffer* This,
   8266     IRpcChannelBuffer* pRpcChannelBuffer,
   8267     PRPC_MESSAGE pRpcMessage,
   8268     DWORD* pdwStubPhase);
   8269 void STDMETHODCALLTYPE ID3D11DeviceContext_Flush_Proxy(
   8270     ID3D11DeviceContext* This);
   8271 void __RPC_STUB ID3D11DeviceContext_Flush_Stub(
   8272     IRpcStubBuffer* This,
   8273     IRpcChannelBuffer* pRpcChannelBuffer,
   8274     PRPC_MESSAGE pRpcMessage,
   8275     DWORD* pdwStubPhase);
   8276 D3D11_DEVICE_CONTEXT_TYPE STDMETHODCALLTYPE ID3D11DeviceContext_GetType_Proxy(
   8277     ID3D11DeviceContext* This);
   8278 void __RPC_STUB ID3D11DeviceContext_GetType_Stub(
   8279     IRpcStubBuffer* This,
   8280     IRpcChannelBuffer* pRpcChannelBuffer,
   8281     PRPC_MESSAGE pRpcMessage,
   8282     DWORD* pdwStubPhase);
   8283 UINT STDMETHODCALLTYPE ID3D11DeviceContext_GetContextFlags_Proxy(
   8284     ID3D11DeviceContext* This);
   8285 void __RPC_STUB ID3D11DeviceContext_GetContextFlags_Stub(
   8286     IRpcStubBuffer* This,
   8287     IRpcChannelBuffer* pRpcChannelBuffer,
   8288     PRPC_MESSAGE pRpcMessage,
   8289     DWORD* pdwStubPhase);
   8290 HRESULT STDMETHODCALLTYPE ID3D11DeviceContext_FinishCommandList_Proxy(
   8291     ID3D11DeviceContext* This,
   8292     WINBOOL RestoreDeferredContextState,
   8293     ID3D11CommandList **ppCommandList);
   8294 void __RPC_STUB ID3D11DeviceContext_FinishCommandList_Stub(
   8295     IRpcStubBuffer* This,
   8296     IRpcChannelBuffer* pRpcChannelBuffer,
   8297     PRPC_MESSAGE pRpcMessage,
   8298     DWORD* pdwStubPhase);
   8299 
   8300 #endif  /* __ID3D11DeviceContext_INTERFACE_DEFINED__ */
   8301 
   8302 /*****************************************************************************
   8303  * ID3D11AuthenticatedChannel interface
   8304  */
   8305 #ifndef __ID3D11AuthenticatedChannel_INTERFACE_DEFINED__
   8306 #define __ID3D11AuthenticatedChannel_INTERFACE_DEFINED__
   8307 
   8308 DEFINE_GUID(IID_ID3D11AuthenticatedChannel, 0x3015a308, 0xdcbd, 0x47aa, 0xa7,0x47, 0x19,0x24,0x86,0xd1,0x4d,0x4a);
   8309 #if defined(__cplusplus) && !defined(CINTERFACE)
   8310 MIDL_INTERFACE("3015a308-dcbd-47aa-a747-192486d14d4a")
   8311 ID3D11AuthenticatedChannel : public ID3D11DeviceChild
   8312 {
   8313     virtual HRESULT STDMETHODCALLTYPE GetCertificateSize(
   8314         UINT *pCertificateSize) = 0;
   8315 
   8316     virtual HRESULT STDMETHODCALLTYPE GetCertificate(
   8317         UINT CertificateSize,
   8318         BYTE *pCertificate) = 0;
   8319 
   8320     virtual void STDMETHODCALLTYPE GetChannelHandle(
   8321         HANDLE *pChannelHandle) = 0;
   8322 
   8323 };
   8324 #ifdef __CRT_UUID_DECL
   8325 __CRT_UUID_DECL(ID3D11AuthenticatedChannel, 0x3015a308, 0xdcbd, 0x47aa, 0xa7,0x47, 0x19,0x24,0x86,0xd1,0x4d,0x4a)
   8326 #endif
   8327 #else
   8328 typedef struct ID3D11AuthenticatedChannelVtbl {
   8329     BEGIN_INTERFACE
   8330 
   8331     /*** IUnknown methods ***/
   8332     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   8333         ID3D11AuthenticatedChannel* This,
   8334         REFIID riid,
   8335         void **ppvObject);
   8336 
   8337     ULONG (STDMETHODCALLTYPE *AddRef)(
   8338         ID3D11AuthenticatedChannel* This);
   8339 
   8340     ULONG (STDMETHODCALLTYPE *Release)(
   8341         ID3D11AuthenticatedChannel* This);
   8342 
   8343     /*** ID3D11DeviceChild methods ***/
   8344     void (STDMETHODCALLTYPE *GetDevice)(
   8345         ID3D11AuthenticatedChannel* This,
   8346         ID3D11Device **ppDevice);
   8347 
   8348     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   8349         ID3D11AuthenticatedChannel* This,
   8350         REFGUID guid,
   8351         UINT *pDataSize,
   8352         void *pData);
   8353 
   8354     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   8355         ID3D11AuthenticatedChannel* This,
   8356         REFGUID guid,
   8357         UINT DataSize,
   8358         const void *pData);
   8359 
   8360     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   8361         ID3D11AuthenticatedChannel* This,
   8362         REFGUID guid,
   8363         const IUnknown *pData);
   8364 
   8365     /*** ID3D11AuthenticatedChannel methods ***/
   8366     HRESULT (STDMETHODCALLTYPE *GetCertificateSize)(
   8367         ID3D11AuthenticatedChannel* This,
   8368         UINT *pCertificateSize);
   8369 
   8370     HRESULT (STDMETHODCALLTYPE *GetCertificate)(
   8371         ID3D11AuthenticatedChannel* This,
   8372         UINT CertificateSize,
   8373         BYTE *pCertificate);
   8374 
   8375     void (STDMETHODCALLTYPE *GetChannelHandle)(
   8376         ID3D11AuthenticatedChannel* This,
   8377         HANDLE *pChannelHandle);
   8378 
   8379     END_INTERFACE
   8380 } ID3D11AuthenticatedChannelVtbl;
   8381 interface ID3D11AuthenticatedChannel {
   8382     CONST_VTBL ID3D11AuthenticatedChannelVtbl* lpVtbl;
   8383 };
   8384 
   8385 #ifdef COBJMACROS
   8386 #ifndef WIDL_C_INLINE_WRAPPERS
   8387 /*** IUnknown methods ***/
   8388 #define ID3D11AuthenticatedChannel_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   8389 #define ID3D11AuthenticatedChannel_AddRef(This) (This)->lpVtbl->AddRef(This)
   8390 #define ID3D11AuthenticatedChannel_Release(This) (This)->lpVtbl->Release(This)
   8391 /*** ID3D11DeviceChild methods ***/
   8392 #define ID3D11AuthenticatedChannel_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   8393 #define ID3D11AuthenticatedChannel_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   8394 #define ID3D11AuthenticatedChannel_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   8395 #define ID3D11AuthenticatedChannel_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   8396 /*** ID3D11AuthenticatedChannel methods ***/
   8397 #define ID3D11AuthenticatedChannel_GetCertificateSize(This,pCertificateSize) (This)->lpVtbl->GetCertificateSize(This,pCertificateSize)
   8398 #define ID3D11AuthenticatedChannel_GetCertificate(This,CertificateSize,pCertificate) (This)->lpVtbl->GetCertificate(This,CertificateSize,pCertificate)
   8399 #define ID3D11AuthenticatedChannel_GetChannelHandle(This,pChannelHandle) (This)->lpVtbl->GetChannelHandle(This,pChannelHandle)
   8400 #else
   8401 /*** IUnknown methods ***/
   8402 static FORCEINLINE HRESULT ID3D11AuthenticatedChannel_QueryInterface(ID3D11AuthenticatedChannel* This,REFIID riid,void **ppvObject) {
   8403     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   8404 }
   8405 static FORCEINLINE ULONG ID3D11AuthenticatedChannel_AddRef(ID3D11AuthenticatedChannel* This) {
   8406     return This->lpVtbl->AddRef(This);
   8407 }
   8408 static FORCEINLINE ULONG ID3D11AuthenticatedChannel_Release(ID3D11AuthenticatedChannel* This) {
   8409     return This->lpVtbl->Release(This);
   8410 }
   8411 /*** ID3D11DeviceChild methods ***/
   8412 static FORCEINLINE void ID3D11AuthenticatedChannel_GetDevice(ID3D11AuthenticatedChannel* This,ID3D11Device **ppDevice) {
   8413     This->lpVtbl->GetDevice(This,ppDevice);
   8414 }
   8415 static FORCEINLINE HRESULT ID3D11AuthenticatedChannel_GetPrivateData(ID3D11AuthenticatedChannel* This,REFGUID guid,UINT *pDataSize,void *pData) {
   8416     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   8417 }
   8418 static FORCEINLINE HRESULT ID3D11AuthenticatedChannel_SetPrivateData(ID3D11AuthenticatedChannel* This,REFGUID guid,UINT DataSize,const void *pData) {
   8419     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   8420 }
   8421 static FORCEINLINE HRESULT ID3D11AuthenticatedChannel_SetPrivateDataInterface(ID3D11AuthenticatedChannel* This,REFGUID guid,const IUnknown *pData) {
   8422     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   8423 }
   8424 /*** ID3D11AuthenticatedChannel methods ***/
   8425 static FORCEINLINE HRESULT ID3D11AuthenticatedChannel_GetCertificateSize(ID3D11AuthenticatedChannel* This,UINT *pCertificateSize) {
   8426     return This->lpVtbl->GetCertificateSize(This,pCertificateSize);
   8427 }
   8428 static FORCEINLINE HRESULT ID3D11AuthenticatedChannel_GetCertificate(ID3D11AuthenticatedChannel* This,UINT CertificateSize,BYTE *pCertificate) {
   8429     return This->lpVtbl->GetCertificate(This,CertificateSize,pCertificate);
   8430 }
   8431 static FORCEINLINE void ID3D11AuthenticatedChannel_GetChannelHandle(ID3D11AuthenticatedChannel* This,HANDLE *pChannelHandle) {
   8432     This->lpVtbl->GetChannelHandle(This,pChannelHandle);
   8433 }
   8434 #endif
   8435 #endif
   8436 
   8437 #endif
   8438 
   8439 HRESULT STDMETHODCALLTYPE ID3D11AuthenticatedChannel_GetCertificateSize_Proxy(
   8440     ID3D11AuthenticatedChannel* This,
   8441     UINT *pCertificateSize);
   8442 void __RPC_STUB ID3D11AuthenticatedChannel_GetCertificateSize_Stub(
   8443     IRpcStubBuffer* This,
   8444     IRpcChannelBuffer* pRpcChannelBuffer,
   8445     PRPC_MESSAGE pRpcMessage,
   8446     DWORD* pdwStubPhase);
   8447 HRESULT STDMETHODCALLTYPE ID3D11AuthenticatedChannel_GetCertificate_Proxy(
   8448     ID3D11AuthenticatedChannel* This,
   8449     UINT CertificateSize,
   8450     BYTE *pCertificate);
   8451 void __RPC_STUB ID3D11AuthenticatedChannel_GetCertificate_Stub(
   8452     IRpcStubBuffer* This,
   8453     IRpcChannelBuffer* pRpcChannelBuffer,
   8454     PRPC_MESSAGE pRpcMessage,
   8455     DWORD* pdwStubPhase);
   8456 void STDMETHODCALLTYPE ID3D11AuthenticatedChannel_GetChannelHandle_Proxy(
   8457     ID3D11AuthenticatedChannel* This,
   8458     HANDLE *pChannelHandle);
   8459 void __RPC_STUB ID3D11AuthenticatedChannel_GetChannelHandle_Stub(
   8460     IRpcStubBuffer* This,
   8461     IRpcChannelBuffer* pRpcChannelBuffer,
   8462     PRPC_MESSAGE pRpcMessage,
   8463     DWORD* pdwStubPhase);
   8464 
   8465 #endif  /* __ID3D11AuthenticatedChannel_INTERFACE_DEFINED__ */
   8466 
   8467 /*****************************************************************************
   8468  * ID3D11CryptoSession interface
   8469  */
   8470 #ifndef __ID3D11CryptoSession_INTERFACE_DEFINED__
   8471 #define __ID3D11CryptoSession_INTERFACE_DEFINED__
   8472 
   8473 DEFINE_GUID(IID_ID3D11CryptoSession, 0x9b32f9ad, 0xbdcc, 0x40a6, 0xa3,0x9d, 0xd5,0xc8,0x65,0x84,0x57,0x20);
   8474 #if defined(__cplusplus) && !defined(CINTERFACE)
   8475 MIDL_INTERFACE("9b32f9ad-bdcc-40a6-a39d-d5c865845720")
   8476 ID3D11CryptoSession : public ID3D11DeviceChild
   8477 {
   8478     virtual void STDMETHODCALLTYPE GetCryptoType(
   8479         GUID *pCryptoType) = 0;
   8480 
   8481     virtual void STDMETHODCALLTYPE GetDecoderProfile(
   8482         GUID *pDecoderProfile) = 0;
   8483 
   8484     virtual HRESULT STDMETHODCALLTYPE GetCertificateSize(
   8485         UINT *pCertificateSize) = 0;
   8486 
   8487     virtual HRESULT STDMETHODCALLTYPE GetCertificate(
   8488         UINT CertificateSize,
   8489         BYTE *pCertificate) = 0;
   8490 
   8491     virtual void STDMETHODCALLTYPE GetCryptoSessionHandle(
   8492         HANDLE *pCryptoSessionHandle) = 0;
   8493 
   8494 };
   8495 #ifdef __CRT_UUID_DECL
   8496 __CRT_UUID_DECL(ID3D11CryptoSession, 0x9b32f9ad, 0xbdcc, 0x40a6, 0xa3,0x9d, 0xd5,0xc8,0x65,0x84,0x57,0x20)
   8497 #endif
   8498 #else
   8499 typedef struct ID3D11CryptoSessionVtbl {
   8500     BEGIN_INTERFACE
   8501 
   8502     /*** IUnknown methods ***/
   8503     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   8504         ID3D11CryptoSession* This,
   8505         REFIID riid,
   8506         void **ppvObject);
   8507 
   8508     ULONG (STDMETHODCALLTYPE *AddRef)(
   8509         ID3D11CryptoSession* This);
   8510 
   8511     ULONG (STDMETHODCALLTYPE *Release)(
   8512         ID3D11CryptoSession* This);
   8513 
   8514     /*** ID3D11DeviceChild methods ***/
   8515     void (STDMETHODCALLTYPE *GetDevice)(
   8516         ID3D11CryptoSession* This,
   8517         ID3D11Device **ppDevice);
   8518 
   8519     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   8520         ID3D11CryptoSession* This,
   8521         REFGUID guid,
   8522         UINT *pDataSize,
   8523         void *pData);
   8524 
   8525     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   8526         ID3D11CryptoSession* This,
   8527         REFGUID guid,
   8528         UINT DataSize,
   8529         const void *pData);
   8530 
   8531     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   8532         ID3D11CryptoSession* This,
   8533         REFGUID guid,
   8534         const IUnknown *pData);
   8535 
   8536     /*** ID3D11CryptoSession methods ***/
   8537     void (STDMETHODCALLTYPE *GetCryptoType)(
   8538         ID3D11CryptoSession* This,
   8539         GUID *pCryptoType);
   8540 
   8541     void (STDMETHODCALLTYPE *GetDecoderProfile)(
   8542         ID3D11CryptoSession* This,
   8543         GUID *pDecoderProfile);
   8544 
   8545     HRESULT (STDMETHODCALLTYPE *GetCertificateSize)(
   8546         ID3D11CryptoSession* This,
   8547         UINT *pCertificateSize);
   8548 
   8549     HRESULT (STDMETHODCALLTYPE *GetCertificate)(
   8550         ID3D11CryptoSession* This,
   8551         UINT CertificateSize,
   8552         BYTE *pCertificate);
   8553 
   8554     void (STDMETHODCALLTYPE *GetCryptoSessionHandle)(
   8555         ID3D11CryptoSession* This,
   8556         HANDLE *pCryptoSessionHandle);
   8557 
   8558     END_INTERFACE
   8559 } ID3D11CryptoSessionVtbl;
   8560 interface ID3D11CryptoSession {
   8561     CONST_VTBL ID3D11CryptoSessionVtbl* lpVtbl;
   8562 };
   8563 
   8564 #ifdef COBJMACROS
   8565 #ifndef WIDL_C_INLINE_WRAPPERS
   8566 /*** IUnknown methods ***/
   8567 #define ID3D11CryptoSession_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   8568 #define ID3D11CryptoSession_AddRef(This) (This)->lpVtbl->AddRef(This)
   8569 #define ID3D11CryptoSession_Release(This) (This)->lpVtbl->Release(This)
   8570 /*** ID3D11DeviceChild methods ***/
   8571 #define ID3D11CryptoSession_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   8572 #define ID3D11CryptoSession_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   8573 #define ID3D11CryptoSession_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   8574 #define ID3D11CryptoSession_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   8575 /*** ID3D11CryptoSession methods ***/
   8576 #define ID3D11CryptoSession_GetCryptoType(This,pCryptoType) (This)->lpVtbl->GetCryptoType(This,pCryptoType)
   8577 #define ID3D11CryptoSession_GetDecoderProfile(This,pDecoderProfile) (This)->lpVtbl->GetDecoderProfile(This,pDecoderProfile)
   8578 #define ID3D11CryptoSession_GetCertificateSize(This,pCertificateSize) (This)->lpVtbl->GetCertificateSize(This,pCertificateSize)
   8579 #define ID3D11CryptoSession_GetCertificate(This,CertificateSize,pCertificate) (This)->lpVtbl->GetCertificate(This,CertificateSize,pCertificate)
   8580 #define ID3D11CryptoSession_GetCryptoSessionHandle(This,pCryptoSessionHandle) (This)->lpVtbl->GetCryptoSessionHandle(This,pCryptoSessionHandle)
   8581 #else
   8582 /*** IUnknown methods ***/
   8583 static FORCEINLINE HRESULT ID3D11CryptoSession_QueryInterface(ID3D11CryptoSession* This,REFIID riid,void **ppvObject) {
   8584     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   8585 }
   8586 static FORCEINLINE ULONG ID3D11CryptoSession_AddRef(ID3D11CryptoSession* This) {
   8587     return This->lpVtbl->AddRef(This);
   8588 }
   8589 static FORCEINLINE ULONG ID3D11CryptoSession_Release(ID3D11CryptoSession* This) {
   8590     return This->lpVtbl->Release(This);
   8591 }
   8592 /*** ID3D11DeviceChild methods ***/
   8593 static FORCEINLINE void ID3D11CryptoSession_GetDevice(ID3D11CryptoSession* This,ID3D11Device **ppDevice) {
   8594     This->lpVtbl->GetDevice(This,ppDevice);
   8595 }
   8596 static FORCEINLINE HRESULT ID3D11CryptoSession_GetPrivateData(ID3D11CryptoSession* This,REFGUID guid,UINT *pDataSize,void *pData) {
   8597     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   8598 }
   8599 static FORCEINLINE HRESULT ID3D11CryptoSession_SetPrivateData(ID3D11CryptoSession* This,REFGUID guid,UINT DataSize,const void *pData) {
   8600     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   8601 }
   8602 static FORCEINLINE HRESULT ID3D11CryptoSession_SetPrivateDataInterface(ID3D11CryptoSession* This,REFGUID guid,const IUnknown *pData) {
   8603     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   8604 }
   8605 /*** ID3D11CryptoSession methods ***/
   8606 static FORCEINLINE void ID3D11CryptoSession_GetCryptoType(ID3D11CryptoSession* This,GUID *pCryptoType) {
   8607     This->lpVtbl->GetCryptoType(This,pCryptoType);
   8608 }
   8609 static FORCEINLINE void ID3D11CryptoSession_GetDecoderProfile(ID3D11CryptoSession* This,GUID *pDecoderProfile) {
   8610     This->lpVtbl->GetDecoderProfile(This,pDecoderProfile);
   8611 }
   8612 static FORCEINLINE HRESULT ID3D11CryptoSession_GetCertificateSize(ID3D11CryptoSession* This,UINT *pCertificateSize) {
   8613     return This->lpVtbl->GetCertificateSize(This,pCertificateSize);
   8614 }
   8615 static FORCEINLINE HRESULT ID3D11CryptoSession_GetCertificate(ID3D11CryptoSession* This,UINT CertificateSize,BYTE *pCertificate) {
   8616     return This->lpVtbl->GetCertificate(This,CertificateSize,pCertificate);
   8617 }
   8618 static FORCEINLINE void ID3D11CryptoSession_GetCryptoSessionHandle(ID3D11CryptoSession* This,HANDLE *pCryptoSessionHandle) {
   8619     This->lpVtbl->GetCryptoSessionHandle(This,pCryptoSessionHandle);
   8620 }
   8621 #endif
   8622 #endif
   8623 
   8624 #endif
   8625 
   8626 void STDMETHODCALLTYPE ID3D11CryptoSession_GetCryptoType_Proxy(
   8627     ID3D11CryptoSession* This,
   8628     GUID *pCryptoType);
   8629 void __RPC_STUB ID3D11CryptoSession_GetCryptoType_Stub(
   8630     IRpcStubBuffer* This,
   8631     IRpcChannelBuffer* pRpcChannelBuffer,
   8632     PRPC_MESSAGE pRpcMessage,
   8633     DWORD* pdwStubPhase);
   8634 void STDMETHODCALLTYPE ID3D11CryptoSession_GetDecoderProfile_Proxy(
   8635     ID3D11CryptoSession* This,
   8636     GUID *pDecoderProfile);
   8637 void __RPC_STUB ID3D11CryptoSession_GetDecoderProfile_Stub(
   8638     IRpcStubBuffer* This,
   8639     IRpcChannelBuffer* pRpcChannelBuffer,
   8640     PRPC_MESSAGE pRpcMessage,
   8641     DWORD* pdwStubPhase);
   8642 HRESULT STDMETHODCALLTYPE ID3D11CryptoSession_GetCertificateSize_Proxy(
   8643     ID3D11CryptoSession* This,
   8644     UINT *pCertificateSize);
   8645 void __RPC_STUB ID3D11CryptoSession_GetCertificateSize_Stub(
   8646     IRpcStubBuffer* This,
   8647     IRpcChannelBuffer* pRpcChannelBuffer,
   8648     PRPC_MESSAGE pRpcMessage,
   8649     DWORD* pdwStubPhase);
   8650 HRESULT STDMETHODCALLTYPE ID3D11CryptoSession_GetCertificate_Proxy(
   8651     ID3D11CryptoSession* This,
   8652     UINT CertificateSize,
   8653     BYTE *pCertificate);
   8654 void __RPC_STUB ID3D11CryptoSession_GetCertificate_Stub(
   8655     IRpcStubBuffer* This,
   8656     IRpcChannelBuffer* pRpcChannelBuffer,
   8657     PRPC_MESSAGE pRpcMessage,
   8658     DWORD* pdwStubPhase);
   8659 void STDMETHODCALLTYPE ID3D11CryptoSession_GetCryptoSessionHandle_Proxy(
   8660     ID3D11CryptoSession* This,
   8661     HANDLE *pCryptoSessionHandle);
   8662 void __RPC_STUB ID3D11CryptoSession_GetCryptoSessionHandle_Stub(
   8663     IRpcStubBuffer* This,
   8664     IRpcChannelBuffer* pRpcChannelBuffer,
   8665     PRPC_MESSAGE pRpcMessage,
   8666     DWORD* pdwStubPhase);
   8667 
   8668 #endif  /* __ID3D11CryptoSession_INTERFACE_DEFINED__ */
   8669 
   8670 /*****************************************************************************
   8671  * ID3D11VideoDecoder interface
   8672  */
   8673 #ifndef __ID3D11VideoDecoder_INTERFACE_DEFINED__
   8674 #define __ID3D11VideoDecoder_INTERFACE_DEFINED__
   8675 
   8676 DEFINE_GUID(IID_ID3D11VideoDecoder, 0x3c9c5b51, 0x995d, 0x48d1, 0x9b,0x8d, 0xfa,0x5c,0xae,0xde,0xd6,0x5c);
   8677 #if defined(__cplusplus) && !defined(CINTERFACE)
   8678 MIDL_INTERFACE("3c9c5b51-995d-48d1-9b8d-fa5caeded65c")
   8679 ID3D11VideoDecoder : public ID3D11DeviceChild
   8680 {
   8681     virtual HRESULT STDMETHODCALLTYPE GetCreationParameters(
   8682         D3D11_VIDEO_DECODER_DESC *pVideoDesc,
   8683         D3D11_VIDEO_DECODER_CONFIG *pConfig) = 0;
   8684 
   8685     virtual HRESULT STDMETHODCALLTYPE GetDriverHandle(
   8686         HANDLE *pDriverHandle) = 0;
   8687 
   8688 };
   8689 #ifdef __CRT_UUID_DECL
   8690 __CRT_UUID_DECL(ID3D11VideoDecoder, 0x3c9c5b51, 0x995d, 0x48d1, 0x9b,0x8d, 0xfa,0x5c,0xae,0xde,0xd6,0x5c)
   8691 #endif
   8692 #else
   8693 typedef struct ID3D11VideoDecoderVtbl {
   8694     BEGIN_INTERFACE
   8695 
   8696     /*** IUnknown methods ***/
   8697     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   8698         ID3D11VideoDecoder* This,
   8699         REFIID riid,
   8700         void **ppvObject);
   8701 
   8702     ULONG (STDMETHODCALLTYPE *AddRef)(
   8703         ID3D11VideoDecoder* This);
   8704 
   8705     ULONG (STDMETHODCALLTYPE *Release)(
   8706         ID3D11VideoDecoder* This);
   8707 
   8708     /*** ID3D11DeviceChild methods ***/
   8709     void (STDMETHODCALLTYPE *GetDevice)(
   8710         ID3D11VideoDecoder* This,
   8711         ID3D11Device **ppDevice);
   8712 
   8713     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   8714         ID3D11VideoDecoder* This,
   8715         REFGUID guid,
   8716         UINT *pDataSize,
   8717         void *pData);
   8718 
   8719     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   8720         ID3D11VideoDecoder* This,
   8721         REFGUID guid,
   8722         UINT DataSize,
   8723         const void *pData);
   8724 
   8725     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   8726         ID3D11VideoDecoder* This,
   8727         REFGUID guid,
   8728         const IUnknown *pData);
   8729 
   8730     /*** ID3D11VideoDecoder methods ***/
   8731     HRESULT (STDMETHODCALLTYPE *GetCreationParameters)(
   8732         ID3D11VideoDecoder* This,
   8733         D3D11_VIDEO_DECODER_DESC *pVideoDesc,
   8734         D3D11_VIDEO_DECODER_CONFIG *pConfig);
   8735 
   8736     HRESULT (STDMETHODCALLTYPE *GetDriverHandle)(
   8737         ID3D11VideoDecoder* This,
   8738         HANDLE *pDriverHandle);
   8739 
   8740     END_INTERFACE
   8741 } ID3D11VideoDecoderVtbl;
   8742 interface ID3D11VideoDecoder {
   8743     CONST_VTBL ID3D11VideoDecoderVtbl* lpVtbl;
   8744 };
   8745 
   8746 #ifdef COBJMACROS
   8747 #ifndef WIDL_C_INLINE_WRAPPERS
   8748 /*** IUnknown methods ***/
   8749 #define ID3D11VideoDecoder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   8750 #define ID3D11VideoDecoder_AddRef(This) (This)->lpVtbl->AddRef(This)
   8751 #define ID3D11VideoDecoder_Release(This) (This)->lpVtbl->Release(This)
   8752 /*** ID3D11DeviceChild methods ***/
   8753 #define ID3D11VideoDecoder_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   8754 #define ID3D11VideoDecoder_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   8755 #define ID3D11VideoDecoder_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   8756 #define ID3D11VideoDecoder_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   8757 /*** ID3D11VideoDecoder methods ***/
   8758 #define ID3D11VideoDecoder_GetCreationParameters(This,pVideoDesc,pConfig) (This)->lpVtbl->GetCreationParameters(This,pVideoDesc,pConfig)
   8759 #define ID3D11VideoDecoder_GetDriverHandle(This,pDriverHandle) (This)->lpVtbl->GetDriverHandle(This,pDriverHandle)
   8760 #else
   8761 /*** IUnknown methods ***/
   8762 static FORCEINLINE HRESULT ID3D11VideoDecoder_QueryInterface(ID3D11VideoDecoder* This,REFIID riid,void **ppvObject) {
   8763     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   8764 }
   8765 static FORCEINLINE ULONG ID3D11VideoDecoder_AddRef(ID3D11VideoDecoder* This) {
   8766     return This->lpVtbl->AddRef(This);
   8767 }
   8768 static FORCEINLINE ULONG ID3D11VideoDecoder_Release(ID3D11VideoDecoder* This) {
   8769     return This->lpVtbl->Release(This);
   8770 }
   8771 /*** ID3D11DeviceChild methods ***/
   8772 static FORCEINLINE void ID3D11VideoDecoder_GetDevice(ID3D11VideoDecoder* This,ID3D11Device **ppDevice) {
   8773     This->lpVtbl->GetDevice(This,ppDevice);
   8774 }
   8775 static FORCEINLINE HRESULT ID3D11VideoDecoder_GetPrivateData(ID3D11VideoDecoder* This,REFGUID guid,UINT *pDataSize,void *pData) {
   8776     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   8777 }
   8778 static FORCEINLINE HRESULT ID3D11VideoDecoder_SetPrivateData(ID3D11VideoDecoder* This,REFGUID guid,UINT DataSize,const void *pData) {
   8779     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   8780 }
   8781 static FORCEINLINE HRESULT ID3D11VideoDecoder_SetPrivateDataInterface(ID3D11VideoDecoder* This,REFGUID guid,const IUnknown *pData) {
   8782     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   8783 }
   8784 /*** ID3D11VideoDecoder methods ***/
   8785 static FORCEINLINE HRESULT ID3D11VideoDecoder_GetCreationParameters(ID3D11VideoDecoder* This,D3D11_VIDEO_DECODER_DESC *pVideoDesc,D3D11_VIDEO_DECODER_CONFIG *pConfig) {
   8786     return This->lpVtbl->GetCreationParameters(This,pVideoDesc,pConfig);
   8787 }
   8788 static FORCEINLINE HRESULT ID3D11VideoDecoder_GetDriverHandle(ID3D11VideoDecoder* This,HANDLE *pDriverHandle) {
   8789     return This->lpVtbl->GetDriverHandle(This,pDriverHandle);
   8790 }
   8791 #endif
   8792 #endif
   8793 
   8794 #endif
   8795 
   8796 HRESULT STDMETHODCALLTYPE ID3D11VideoDecoder_GetCreationParameters_Proxy(
   8797     ID3D11VideoDecoder* This,
   8798     D3D11_VIDEO_DECODER_DESC *pVideoDesc,
   8799     D3D11_VIDEO_DECODER_CONFIG *pConfig);
   8800 void __RPC_STUB ID3D11VideoDecoder_GetCreationParameters_Stub(
   8801     IRpcStubBuffer* This,
   8802     IRpcChannelBuffer* pRpcChannelBuffer,
   8803     PRPC_MESSAGE pRpcMessage,
   8804     DWORD* pdwStubPhase);
   8805 HRESULT STDMETHODCALLTYPE ID3D11VideoDecoder_GetDriverHandle_Proxy(
   8806     ID3D11VideoDecoder* This,
   8807     HANDLE *pDriverHandle);
   8808 void __RPC_STUB ID3D11VideoDecoder_GetDriverHandle_Stub(
   8809     IRpcStubBuffer* This,
   8810     IRpcChannelBuffer* pRpcChannelBuffer,
   8811     PRPC_MESSAGE pRpcMessage,
   8812     DWORD* pdwStubPhase);
   8813 
   8814 #endif  /* __ID3D11VideoDecoder_INTERFACE_DEFINED__ */
   8815 
   8816 /*****************************************************************************
   8817  * ID3D11VideoProcessorEnumerator interface
   8818  */
   8819 #ifndef __ID3D11VideoProcessorEnumerator_INTERFACE_DEFINED__
   8820 #define __ID3D11VideoProcessorEnumerator_INTERFACE_DEFINED__
   8821 
   8822 DEFINE_GUID(IID_ID3D11VideoProcessorEnumerator, 0x31627037, 0x53ab, 0x4200, 0x90,0x61, 0x05,0xfa,0xa9,0xab,0x45,0xf9);
   8823 #if defined(__cplusplus) && !defined(CINTERFACE)
   8824 MIDL_INTERFACE("31627037-53ab-4200-9061-05faa9ab45f9")
   8825 ID3D11VideoProcessorEnumerator : public ID3D11DeviceChild
   8826 {
   8827     virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorContentDesc(
   8828         D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pContentDesc) = 0;
   8829 
   8830     virtual HRESULT STDMETHODCALLTYPE CheckVideoProcessorFormat(
   8831         DXGI_FORMAT Format,
   8832         UINT *pFlags) = 0;
   8833 
   8834     virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorCaps(
   8835         D3D11_VIDEO_PROCESSOR_CAPS *pCaps) = 0;
   8836 
   8837     virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorRateConversionCaps(
   8838         UINT TypeIndex,
   8839         D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps) = 0;
   8840 
   8841     virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorCustomRate(
   8842         UINT TypeIndex,
   8843         UINT CustomRateIndex,
   8844         D3D11_VIDEO_PROCESSOR_CUSTOM_RATE *pRate) = 0;
   8845 
   8846     virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorFilterRange(
   8847         D3D11_VIDEO_PROCESSOR_FILTER Filter,
   8848         D3D11_VIDEO_PROCESSOR_FILTER_RANGE *pRange) = 0;
   8849 
   8850 };
   8851 #ifdef __CRT_UUID_DECL
   8852 __CRT_UUID_DECL(ID3D11VideoProcessorEnumerator, 0x31627037, 0x53ab, 0x4200, 0x90,0x61, 0x05,0xfa,0xa9,0xab,0x45,0xf9)
   8853 #endif
   8854 #else
   8855 typedef struct ID3D11VideoProcessorEnumeratorVtbl {
   8856     BEGIN_INTERFACE
   8857 
   8858     /*** IUnknown methods ***/
   8859     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   8860         ID3D11VideoProcessorEnumerator* This,
   8861         REFIID riid,
   8862         void **ppvObject);
   8863 
   8864     ULONG (STDMETHODCALLTYPE *AddRef)(
   8865         ID3D11VideoProcessorEnumerator* This);
   8866 
   8867     ULONG (STDMETHODCALLTYPE *Release)(
   8868         ID3D11VideoProcessorEnumerator* This);
   8869 
   8870     /*** ID3D11DeviceChild methods ***/
   8871     void (STDMETHODCALLTYPE *GetDevice)(
   8872         ID3D11VideoProcessorEnumerator* This,
   8873         ID3D11Device **ppDevice);
   8874 
   8875     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   8876         ID3D11VideoProcessorEnumerator* This,
   8877         REFGUID guid,
   8878         UINT *pDataSize,
   8879         void *pData);
   8880 
   8881     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   8882         ID3D11VideoProcessorEnumerator* This,
   8883         REFGUID guid,
   8884         UINT DataSize,
   8885         const void *pData);
   8886 
   8887     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   8888         ID3D11VideoProcessorEnumerator* This,
   8889         REFGUID guid,
   8890         const IUnknown *pData);
   8891 
   8892     /*** ID3D11VideoProcessorEnumerator methods ***/
   8893     HRESULT (STDMETHODCALLTYPE *GetVideoProcessorContentDesc)(
   8894         ID3D11VideoProcessorEnumerator* This,
   8895         D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pContentDesc);
   8896 
   8897     HRESULT (STDMETHODCALLTYPE *CheckVideoProcessorFormat)(
   8898         ID3D11VideoProcessorEnumerator* This,
   8899         DXGI_FORMAT Format,
   8900         UINT *pFlags);
   8901 
   8902     HRESULT (STDMETHODCALLTYPE *GetVideoProcessorCaps)(
   8903         ID3D11VideoProcessorEnumerator* This,
   8904         D3D11_VIDEO_PROCESSOR_CAPS *pCaps);
   8905 
   8906     HRESULT (STDMETHODCALLTYPE *GetVideoProcessorRateConversionCaps)(
   8907         ID3D11VideoProcessorEnumerator* This,
   8908         UINT TypeIndex,
   8909         D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps);
   8910 
   8911     HRESULT (STDMETHODCALLTYPE *GetVideoProcessorCustomRate)(
   8912         ID3D11VideoProcessorEnumerator* This,
   8913         UINT TypeIndex,
   8914         UINT CustomRateIndex,
   8915         D3D11_VIDEO_PROCESSOR_CUSTOM_RATE *pRate);
   8916 
   8917     HRESULT (STDMETHODCALLTYPE *GetVideoProcessorFilterRange)(
   8918         ID3D11VideoProcessorEnumerator* This,
   8919         D3D11_VIDEO_PROCESSOR_FILTER Filter,
   8920         D3D11_VIDEO_PROCESSOR_FILTER_RANGE *pRange);
   8921 
   8922     END_INTERFACE
   8923 } ID3D11VideoProcessorEnumeratorVtbl;
   8924 interface ID3D11VideoProcessorEnumerator {
   8925     CONST_VTBL ID3D11VideoProcessorEnumeratorVtbl* lpVtbl;
   8926 };
   8927 
   8928 #ifdef COBJMACROS
   8929 #ifndef WIDL_C_INLINE_WRAPPERS
   8930 /*** IUnknown methods ***/
   8931 #define ID3D11VideoProcessorEnumerator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   8932 #define ID3D11VideoProcessorEnumerator_AddRef(This) (This)->lpVtbl->AddRef(This)
   8933 #define ID3D11VideoProcessorEnumerator_Release(This) (This)->lpVtbl->Release(This)
   8934 /*** ID3D11DeviceChild methods ***/
   8935 #define ID3D11VideoProcessorEnumerator_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   8936 #define ID3D11VideoProcessorEnumerator_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   8937 #define ID3D11VideoProcessorEnumerator_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   8938 #define ID3D11VideoProcessorEnumerator_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   8939 /*** ID3D11VideoProcessorEnumerator methods ***/
   8940 #define ID3D11VideoProcessorEnumerator_GetVideoProcessorContentDesc(This,pContentDesc) (This)->lpVtbl->GetVideoProcessorContentDesc(This,pContentDesc)
   8941 #define ID3D11VideoProcessorEnumerator_CheckVideoProcessorFormat(This,Format,pFlags) (This)->lpVtbl->CheckVideoProcessorFormat(This,Format,pFlags)
   8942 #define ID3D11VideoProcessorEnumerator_GetVideoProcessorCaps(This,pCaps) (This)->lpVtbl->GetVideoProcessorCaps(This,pCaps)
   8943 #define ID3D11VideoProcessorEnumerator_GetVideoProcessorRateConversionCaps(This,TypeIndex,pCaps) (This)->lpVtbl->GetVideoProcessorRateConversionCaps(This,TypeIndex,pCaps)
   8944 #define ID3D11VideoProcessorEnumerator_GetVideoProcessorCustomRate(This,TypeIndex,CustomRateIndex,pRate) (This)->lpVtbl->GetVideoProcessorCustomRate(This,TypeIndex,CustomRateIndex,pRate)
   8945 #define ID3D11VideoProcessorEnumerator_GetVideoProcessorFilterRange(This,Filter,pRange) (This)->lpVtbl->GetVideoProcessorFilterRange(This,Filter,pRange)
   8946 #else
   8947 /*** IUnknown methods ***/
   8948 static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_QueryInterface(ID3D11VideoProcessorEnumerator* This,REFIID riid,void **ppvObject) {
   8949     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   8950 }
   8951 static FORCEINLINE ULONG ID3D11VideoProcessorEnumerator_AddRef(ID3D11VideoProcessorEnumerator* This) {
   8952     return This->lpVtbl->AddRef(This);
   8953 }
   8954 static FORCEINLINE ULONG ID3D11VideoProcessorEnumerator_Release(ID3D11VideoProcessorEnumerator* This) {
   8955     return This->lpVtbl->Release(This);
   8956 }
   8957 /*** ID3D11DeviceChild methods ***/
   8958 static FORCEINLINE void ID3D11VideoProcessorEnumerator_GetDevice(ID3D11VideoProcessorEnumerator* This,ID3D11Device **ppDevice) {
   8959     This->lpVtbl->GetDevice(This,ppDevice);
   8960 }
   8961 static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_GetPrivateData(ID3D11VideoProcessorEnumerator* This,REFGUID guid,UINT *pDataSize,void *pData) {
   8962     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   8963 }
   8964 static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_SetPrivateData(ID3D11VideoProcessorEnumerator* This,REFGUID guid,UINT DataSize,const void *pData) {
   8965     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   8966 }
   8967 static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_SetPrivateDataInterface(ID3D11VideoProcessorEnumerator* This,REFGUID guid,const IUnknown *pData) {
   8968     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   8969 }
   8970 /*** ID3D11VideoProcessorEnumerator methods ***/
   8971 static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_GetVideoProcessorContentDesc(ID3D11VideoProcessorEnumerator* This,D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pContentDesc) {
   8972     return This->lpVtbl->GetVideoProcessorContentDesc(This,pContentDesc);
   8973 }
   8974 static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_CheckVideoProcessorFormat(ID3D11VideoProcessorEnumerator* This,DXGI_FORMAT Format,UINT *pFlags) {
   8975     return This->lpVtbl->CheckVideoProcessorFormat(This,Format,pFlags);
   8976 }
   8977 static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_GetVideoProcessorCaps(ID3D11VideoProcessorEnumerator* This,D3D11_VIDEO_PROCESSOR_CAPS *pCaps) {
   8978     return This->lpVtbl->GetVideoProcessorCaps(This,pCaps);
   8979 }
   8980 static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_GetVideoProcessorRateConversionCaps(ID3D11VideoProcessorEnumerator* This,UINT TypeIndex,D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps) {
   8981     return This->lpVtbl->GetVideoProcessorRateConversionCaps(This,TypeIndex,pCaps);
   8982 }
   8983 static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_GetVideoProcessorCustomRate(ID3D11VideoProcessorEnumerator* This,UINT TypeIndex,UINT CustomRateIndex,D3D11_VIDEO_PROCESSOR_CUSTOM_RATE *pRate) {
   8984     return This->lpVtbl->GetVideoProcessorCustomRate(This,TypeIndex,CustomRateIndex,pRate);
   8985 }
   8986 static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_GetVideoProcessorFilterRange(ID3D11VideoProcessorEnumerator* This,D3D11_VIDEO_PROCESSOR_FILTER Filter,D3D11_VIDEO_PROCESSOR_FILTER_RANGE *pRange) {
   8987     return This->lpVtbl->GetVideoProcessorFilterRange(This,Filter,pRange);
   8988 }
   8989 #endif
   8990 #endif
   8991 
   8992 #endif
   8993 
   8994 HRESULT STDMETHODCALLTYPE ID3D11VideoProcessorEnumerator_GetVideoProcessorContentDesc_Proxy(
   8995     ID3D11VideoProcessorEnumerator* This,
   8996     D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pContentDesc);
   8997 void __RPC_STUB ID3D11VideoProcessorEnumerator_GetVideoProcessorContentDesc_Stub(
   8998     IRpcStubBuffer* This,
   8999     IRpcChannelBuffer* pRpcChannelBuffer,
   9000     PRPC_MESSAGE pRpcMessage,
   9001     DWORD* pdwStubPhase);
   9002 HRESULT STDMETHODCALLTYPE ID3D11VideoProcessorEnumerator_CheckVideoProcessorFormat_Proxy(
   9003     ID3D11VideoProcessorEnumerator* This,
   9004     DXGI_FORMAT Format,
   9005     UINT *pFlags);
   9006 void __RPC_STUB ID3D11VideoProcessorEnumerator_CheckVideoProcessorFormat_Stub(
   9007     IRpcStubBuffer* This,
   9008     IRpcChannelBuffer* pRpcChannelBuffer,
   9009     PRPC_MESSAGE pRpcMessage,
   9010     DWORD* pdwStubPhase);
   9011 HRESULT STDMETHODCALLTYPE ID3D11VideoProcessorEnumerator_GetVideoProcessorCaps_Proxy(
   9012     ID3D11VideoProcessorEnumerator* This,
   9013     D3D11_VIDEO_PROCESSOR_CAPS *pCaps);
   9014 void __RPC_STUB ID3D11VideoProcessorEnumerator_GetVideoProcessorCaps_Stub(
   9015     IRpcStubBuffer* This,
   9016     IRpcChannelBuffer* pRpcChannelBuffer,
   9017     PRPC_MESSAGE pRpcMessage,
   9018     DWORD* pdwStubPhase);
   9019 HRESULT STDMETHODCALLTYPE ID3D11VideoProcessorEnumerator_GetVideoProcessorRateConversionCaps_Proxy(
   9020     ID3D11VideoProcessorEnumerator* This,
   9021     UINT TypeIndex,
   9022     D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps);
   9023 void __RPC_STUB ID3D11VideoProcessorEnumerator_GetVideoProcessorRateConversionCaps_Stub(
   9024     IRpcStubBuffer* This,
   9025     IRpcChannelBuffer* pRpcChannelBuffer,
   9026     PRPC_MESSAGE pRpcMessage,
   9027     DWORD* pdwStubPhase);
   9028 HRESULT STDMETHODCALLTYPE ID3D11VideoProcessorEnumerator_GetVideoProcessorCustomRate_Proxy(
   9029     ID3D11VideoProcessorEnumerator* This,
   9030     UINT TypeIndex,
   9031     UINT CustomRateIndex,
   9032     D3D11_VIDEO_PROCESSOR_CUSTOM_RATE *pRate);
   9033 void __RPC_STUB ID3D11VideoProcessorEnumerator_GetVideoProcessorCustomRate_Stub(
   9034     IRpcStubBuffer* This,
   9035     IRpcChannelBuffer* pRpcChannelBuffer,
   9036     PRPC_MESSAGE pRpcMessage,
   9037     DWORD* pdwStubPhase);
   9038 HRESULT STDMETHODCALLTYPE ID3D11VideoProcessorEnumerator_GetVideoProcessorFilterRange_Proxy(
   9039     ID3D11VideoProcessorEnumerator* This,
   9040     D3D11_VIDEO_PROCESSOR_FILTER Filter,
   9041     D3D11_VIDEO_PROCESSOR_FILTER_RANGE *pRange);
   9042 void __RPC_STUB ID3D11VideoProcessorEnumerator_GetVideoProcessorFilterRange_Stub(
   9043     IRpcStubBuffer* This,
   9044     IRpcChannelBuffer* pRpcChannelBuffer,
   9045     PRPC_MESSAGE pRpcMessage,
   9046     DWORD* pdwStubPhase);
   9047 
   9048 #endif  /* __ID3D11VideoProcessorEnumerator_INTERFACE_DEFINED__ */
   9049 
   9050 /*****************************************************************************
   9051  * ID3D11VideoProcessor interface
   9052  */
   9053 #ifndef __ID3D11VideoProcessor_INTERFACE_DEFINED__
   9054 #define __ID3D11VideoProcessor_INTERFACE_DEFINED__
   9055 
   9056 DEFINE_GUID(IID_ID3D11VideoProcessor, 0x1d7b0652, 0x185f, 0x41c6, 0x85,0xce, 0x0c,0x5b,0xe3,0xd4,0xae,0x6c);
   9057 #if defined(__cplusplus) && !defined(CINTERFACE)
   9058 MIDL_INTERFACE("1d7b0652-185f-41c6-85ce-0c5be3d4ae6c")
   9059 ID3D11VideoProcessor : public ID3D11DeviceChild
   9060 {
   9061     virtual void STDMETHODCALLTYPE GetContentDesc(
   9062         D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc) = 0;
   9063 
   9064     virtual void STDMETHODCALLTYPE GetRateConversionCaps(
   9065         D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps) = 0;
   9066 
   9067 };
   9068 #ifdef __CRT_UUID_DECL
   9069 __CRT_UUID_DECL(ID3D11VideoProcessor, 0x1d7b0652, 0x185f, 0x41c6, 0x85,0xce, 0x0c,0x5b,0xe3,0xd4,0xae,0x6c)
   9070 #endif
   9071 #else
   9072 typedef struct ID3D11VideoProcessorVtbl {
   9073     BEGIN_INTERFACE
   9074 
   9075     /*** IUnknown methods ***/
   9076     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   9077         ID3D11VideoProcessor* This,
   9078         REFIID riid,
   9079         void **ppvObject);
   9080 
   9081     ULONG (STDMETHODCALLTYPE *AddRef)(
   9082         ID3D11VideoProcessor* This);
   9083 
   9084     ULONG (STDMETHODCALLTYPE *Release)(
   9085         ID3D11VideoProcessor* This);
   9086 
   9087     /*** ID3D11DeviceChild methods ***/
   9088     void (STDMETHODCALLTYPE *GetDevice)(
   9089         ID3D11VideoProcessor* This,
   9090         ID3D11Device **ppDevice);
   9091 
   9092     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   9093         ID3D11VideoProcessor* This,
   9094         REFGUID guid,
   9095         UINT *pDataSize,
   9096         void *pData);
   9097 
   9098     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   9099         ID3D11VideoProcessor* This,
   9100         REFGUID guid,
   9101         UINT DataSize,
   9102         const void *pData);
   9103 
   9104     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   9105         ID3D11VideoProcessor* This,
   9106         REFGUID guid,
   9107         const IUnknown *pData);
   9108 
   9109     /*** ID3D11VideoProcessor methods ***/
   9110     void (STDMETHODCALLTYPE *GetContentDesc)(
   9111         ID3D11VideoProcessor* This,
   9112         D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc);
   9113 
   9114     void (STDMETHODCALLTYPE *GetRateConversionCaps)(
   9115         ID3D11VideoProcessor* This,
   9116         D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps);
   9117 
   9118     END_INTERFACE
   9119 } ID3D11VideoProcessorVtbl;
   9120 interface ID3D11VideoProcessor {
   9121     CONST_VTBL ID3D11VideoProcessorVtbl* lpVtbl;
   9122 };
   9123 
   9124 #ifdef COBJMACROS
   9125 #ifndef WIDL_C_INLINE_WRAPPERS
   9126 /*** IUnknown methods ***/
   9127 #define ID3D11VideoProcessor_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   9128 #define ID3D11VideoProcessor_AddRef(This) (This)->lpVtbl->AddRef(This)
   9129 #define ID3D11VideoProcessor_Release(This) (This)->lpVtbl->Release(This)
   9130 /*** ID3D11DeviceChild methods ***/
   9131 #define ID3D11VideoProcessor_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   9132 #define ID3D11VideoProcessor_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   9133 #define ID3D11VideoProcessor_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   9134 #define ID3D11VideoProcessor_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   9135 /*** ID3D11VideoProcessor methods ***/
   9136 #define ID3D11VideoProcessor_GetContentDesc(This,pDesc) (This)->lpVtbl->GetContentDesc(This,pDesc)
   9137 #define ID3D11VideoProcessor_GetRateConversionCaps(This,pCaps) (This)->lpVtbl->GetRateConversionCaps(This,pCaps)
   9138 #else
   9139 /*** IUnknown methods ***/
   9140 static FORCEINLINE HRESULT ID3D11VideoProcessor_QueryInterface(ID3D11VideoProcessor* This,REFIID riid,void **ppvObject) {
   9141     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   9142 }
   9143 static FORCEINLINE ULONG ID3D11VideoProcessor_AddRef(ID3D11VideoProcessor* This) {
   9144     return This->lpVtbl->AddRef(This);
   9145 }
   9146 static FORCEINLINE ULONG ID3D11VideoProcessor_Release(ID3D11VideoProcessor* This) {
   9147     return This->lpVtbl->Release(This);
   9148 }
   9149 /*** ID3D11DeviceChild methods ***/
   9150 static FORCEINLINE void ID3D11VideoProcessor_GetDevice(ID3D11VideoProcessor* This,ID3D11Device **ppDevice) {
   9151     This->lpVtbl->GetDevice(This,ppDevice);
   9152 }
   9153 static FORCEINLINE HRESULT ID3D11VideoProcessor_GetPrivateData(ID3D11VideoProcessor* This,REFGUID guid,UINT *pDataSize,void *pData) {
   9154     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   9155 }
   9156 static FORCEINLINE HRESULT ID3D11VideoProcessor_SetPrivateData(ID3D11VideoProcessor* This,REFGUID guid,UINT DataSize,const void *pData) {
   9157     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   9158 }
   9159 static FORCEINLINE HRESULT ID3D11VideoProcessor_SetPrivateDataInterface(ID3D11VideoProcessor* This,REFGUID guid,const IUnknown *pData) {
   9160     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   9161 }
   9162 /*** ID3D11VideoProcessor methods ***/
   9163 static FORCEINLINE void ID3D11VideoProcessor_GetContentDesc(ID3D11VideoProcessor* This,D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc) {
   9164     This->lpVtbl->GetContentDesc(This,pDesc);
   9165 }
   9166 static FORCEINLINE void ID3D11VideoProcessor_GetRateConversionCaps(ID3D11VideoProcessor* This,D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps) {
   9167     This->lpVtbl->GetRateConversionCaps(This,pCaps);
   9168 }
   9169 #endif
   9170 #endif
   9171 
   9172 #endif
   9173 
   9174 void STDMETHODCALLTYPE ID3D11VideoProcessor_GetContentDesc_Proxy(
   9175     ID3D11VideoProcessor* This,
   9176     D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc);
   9177 void __RPC_STUB ID3D11VideoProcessor_GetContentDesc_Stub(
   9178     IRpcStubBuffer* This,
   9179     IRpcChannelBuffer* pRpcChannelBuffer,
   9180     PRPC_MESSAGE pRpcMessage,
   9181     DWORD* pdwStubPhase);
   9182 void STDMETHODCALLTYPE ID3D11VideoProcessor_GetRateConversionCaps_Proxy(
   9183     ID3D11VideoProcessor* This,
   9184     D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps);
   9185 void __RPC_STUB ID3D11VideoProcessor_GetRateConversionCaps_Stub(
   9186     IRpcStubBuffer* This,
   9187     IRpcChannelBuffer* pRpcChannelBuffer,
   9188     PRPC_MESSAGE pRpcMessage,
   9189     DWORD* pdwStubPhase);
   9190 
   9191 #endif  /* __ID3D11VideoProcessor_INTERFACE_DEFINED__ */
   9192 
   9193 /*****************************************************************************
   9194  * ID3D11VideoDecoderOutputView interface
   9195  */
   9196 #ifndef __ID3D11VideoDecoderOutputView_INTERFACE_DEFINED__
   9197 #define __ID3D11VideoDecoderOutputView_INTERFACE_DEFINED__
   9198 
   9199 DEFINE_GUID(IID_ID3D11VideoDecoderOutputView, 0xc2931aea, 0x2a85, 0x4f20, 0x86,0x0f, 0xfb,0xa1,0xfd,0x25,0x6e,0x18);
   9200 #if defined(__cplusplus) && !defined(CINTERFACE)
   9201 MIDL_INTERFACE("c2931aea-2a85-4f20-860f-fba1fd256e18")
   9202 ID3D11VideoDecoderOutputView : public ID3D11View
   9203 {
   9204     virtual void STDMETHODCALLTYPE GetDesc(
   9205         D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc) = 0;
   9206 
   9207 };
   9208 #ifdef __CRT_UUID_DECL
   9209 __CRT_UUID_DECL(ID3D11VideoDecoderOutputView, 0xc2931aea, 0x2a85, 0x4f20, 0x86,0x0f, 0xfb,0xa1,0xfd,0x25,0x6e,0x18)
   9210 #endif
   9211 #else
   9212 typedef struct ID3D11VideoDecoderOutputViewVtbl {
   9213     BEGIN_INTERFACE
   9214 
   9215     /*** IUnknown methods ***/
   9216     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   9217         ID3D11VideoDecoderOutputView* This,
   9218         REFIID riid,
   9219         void **ppvObject);
   9220 
   9221     ULONG (STDMETHODCALLTYPE *AddRef)(
   9222         ID3D11VideoDecoderOutputView* This);
   9223 
   9224     ULONG (STDMETHODCALLTYPE *Release)(
   9225         ID3D11VideoDecoderOutputView* This);
   9226 
   9227     /*** ID3D11DeviceChild methods ***/
   9228     void (STDMETHODCALLTYPE *GetDevice)(
   9229         ID3D11VideoDecoderOutputView* This,
   9230         ID3D11Device **ppDevice);
   9231 
   9232     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   9233         ID3D11VideoDecoderOutputView* This,
   9234         REFGUID guid,
   9235         UINT *pDataSize,
   9236         void *pData);
   9237 
   9238     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   9239         ID3D11VideoDecoderOutputView* This,
   9240         REFGUID guid,
   9241         UINT DataSize,
   9242         const void *pData);
   9243 
   9244     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   9245         ID3D11VideoDecoderOutputView* This,
   9246         REFGUID guid,
   9247         const IUnknown *pData);
   9248 
   9249     /*** ID3D11View methods ***/
   9250     void (STDMETHODCALLTYPE *GetResource)(
   9251         ID3D11VideoDecoderOutputView* This,
   9252         ID3D11Resource **ppResource);
   9253 
   9254     /*** ID3D11VideoDecoderOutputView methods ***/
   9255     void (STDMETHODCALLTYPE *GetDesc)(
   9256         ID3D11VideoDecoderOutputView* This,
   9257         D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc);
   9258 
   9259     END_INTERFACE
   9260 } ID3D11VideoDecoderOutputViewVtbl;
   9261 interface ID3D11VideoDecoderOutputView {
   9262     CONST_VTBL ID3D11VideoDecoderOutputViewVtbl* lpVtbl;
   9263 };
   9264 
   9265 #ifdef COBJMACROS
   9266 #ifndef WIDL_C_INLINE_WRAPPERS
   9267 /*** IUnknown methods ***/
   9268 #define ID3D11VideoDecoderOutputView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   9269 #define ID3D11VideoDecoderOutputView_AddRef(This) (This)->lpVtbl->AddRef(This)
   9270 #define ID3D11VideoDecoderOutputView_Release(This) (This)->lpVtbl->Release(This)
   9271 /*** ID3D11DeviceChild methods ***/
   9272 #define ID3D11VideoDecoderOutputView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   9273 #define ID3D11VideoDecoderOutputView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   9274 #define ID3D11VideoDecoderOutputView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   9275 #define ID3D11VideoDecoderOutputView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   9276 /*** ID3D11View methods ***/
   9277 #define ID3D11VideoDecoderOutputView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource)
   9278 /*** ID3D11VideoDecoderOutputView methods ***/
   9279 #define ID3D11VideoDecoderOutputView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   9280 #else
   9281 /*** IUnknown methods ***/
   9282 static FORCEINLINE HRESULT ID3D11VideoDecoderOutputView_QueryInterface(ID3D11VideoDecoderOutputView* This,REFIID riid,void **ppvObject) {
   9283     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   9284 }
   9285 static FORCEINLINE ULONG ID3D11VideoDecoderOutputView_AddRef(ID3D11VideoDecoderOutputView* This) {
   9286     return This->lpVtbl->AddRef(This);
   9287 }
   9288 static FORCEINLINE ULONG ID3D11VideoDecoderOutputView_Release(ID3D11VideoDecoderOutputView* This) {
   9289     return This->lpVtbl->Release(This);
   9290 }
   9291 /*** ID3D11DeviceChild methods ***/
   9292 static FORCEINLINE void ID3D11VideoDecoderOutputView_GetDevice(ID3D11VideoDecoderOutputView* This,ID3D11Device **ppDevice) {
   9293     This->lpVtbl->GetDevice(This,ppDevice);
   9294 }
   9295 static FORCEINLINE HRESULT ID3D11VideoDecoderOutputView_GetPrivateData(ID3D11VideoDecoderOutputView* This,REFGUID guid,UINT *pDataSize,void *pData) {
   9296     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   9297 }
   9298 static FORCEINLINE HRESULT ID3D11VideoDecoderOutputView_SetPrivateData(ID3D11VideoDecoderOutputView* This,REFGUID guid,UINT DataSize,const void *pData) {
   9299     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   9300 }
   9301 static FORCEINLINE HRESULT ID3D11VideoDecoderOutputView_SetPrivateDataInterface(ID3D11VideoDecoderOutputView* This,REFGUID guid,const IUnknown *pData) {
   9302     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   9303 }
   9304 /*** ID3D11View methods ***/
   9305 static FORCEINLINE void ID3D11VideoDecoderOutputView_GetResource(ID3D11VideoDecoderOutputView* This,ID3D11Resource **ppResource) {
   9306     This->lpVtbl->GetResource(This,ppResource);
   9307 }
   9308 /*** ID3D11VideoDecoderOutputView methods ***/
   9309 static FORCEINLINE void ID3D11VideoDecoderOutputView_GetDesc(ID3D11VideoDecoderOutputView* This,D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc) {
   9310     This->lpVtbl->GetDesc(This,pDesc);
   9311 }
   9312 #endif
   9313 #endif
   9314 
   9315 #endif
   9316 
   9317 void STDMETHODCALLTYPE ID3D11VideoDecoderOutputView_GetDesc_Proxy(
   9318     ID3D11VideoDecoderOutputView* This,
   9319     D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc);
   9320 void __RPC_STUB ID3D11VideoDecoderOutputView_GetDesc_Stub(
   9321     IRpcStubBuffer* This,
   9322     IRpcChannelBuffer* pRpcChannelBuffer,
   9323     PRPC_MESSAGE pRpcMessage,
   9324     DWORD* pdwStubPhase);
   9325 
   9326 #endif  /* __ID3D11VideoDecoderOutputView_INTERFACE_DEFINED__ */
   9327 
   9328 /*****************************************************************************
   9329  * ID3D11VideoProcessorInputView interface
   9330  */
   9331 #ifndef __ID3D11VideoProcessorInputView_INTERFACE_DEFINED__
   9332 #define __ID3D11VideoProcessorInputView_INTERFACE_DEFINED__
   9333 
   9334 DEFINE_GUID(IID_ID3D11VideoProcessorInputView, 0x11ec5a5f, 0x51dc, 0x4945, 0xab,0x34, 0x6e,0x8c,0x21,0x30,0x0e,0xa5);
   9335 #if defined(__cplusplus) && !defined(CINTERFACE)
   9336 MIDL_INTERFACE("11ec5a5f-51dc-4945-ab34-6e8c21300ea5")
   9337 ID3D11VideoProcessorInputView : public ID3D11View
   9338 {
   9339     virtual void STDMETHODCALLTYPE GetDesc(
   9340         D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc) = 0;
   9341 
   9342 };
   9343 #ifdef __CRT_UUID_DECL
   9344 __CRT_UUID_DECL(ID3D11VideoProcessorInputView, 0x11ec5a5f, 0x51dc, 0x4945, 0xab,0x34, 0x6e,0x8c,0x21,0x30,0x0e,0xa5)
   9345 #endif
   9346 #else
   9347 typedef struct ID3D11VideoProcessorInputViewVtbl {
   9348     BEGIN_INTERFACE
   9349 
   9350     /*** IUnknown methods ***/
   9351     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   9352         ID3D11VideoProcessorInputView* This,
   9353         REFIID riid,
   9354         void **ppvObject);
   9355 
   9356     ULONG (STDMETHODCALLTYPE *AddRef)(
   9357         ID3D11VideoProcessorInputView* This);
   9358 
   9359     ULONG (STDMETHODCALLTYPE *Release)(
   9360         ID3D11VideoProcessorInputView* This);
   9361 
   9362     /*** ID3D11DeviceChild methods ***/
   9363     void (STDMETHODCALLTYPE *GetDevice)(
   9364         ID3D11VideoProcessorInputView* This,
   9365         ID3D11Device **ppDevice);
   9366 
   9367     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   9368         ID3D11VideoProcessorInputView* This,
   9369         REFGUID guid,
   9370         UINT *pDataSize,
   9371         void *pData);
   9372 
   9373     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   9374         ID3D11VideoProcessorInputView* This,
   9375         REFGUID guid,
   9376         UINT DataSize,
   9377         const void *pData);
   9378 
   9379     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   9380         ID3D11VideoProcessorInputView* This,
   9381         REFGUID guid,
   9382         const IUnknown *pData);
   9383 
   9384     /*** ID3D11View methods ***/
   9385     void (STDMETHODCALLTYPE *GetResource)(
   9386         ID3D11VideoProcessorInputView* This,
   9387         ID3D11Resource **ppResource);
   9388 
   9389     /*** ID3D11VideoProcessorInputView methods ***/
   9390     void (STDMETHODCALLTYPE *GetDesc)(
   9391         ID3D11VideoProcessorInputView* This,
   9392         D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc);
   9393 
   9394     END_INTERFACE
   9395 } ID3D11VideoProcessorInputViewVtbl;
   9396 interface ID3D11VideoProcessorInputView {
   9397     CONST_VTBL ID3D11VideoProcessorInputViewVtbl* lpVtbl;
   9398 };
   9399 
   9400 #ifdef COBJMACROS
   9401 #ifndef WIDL_C_INLINE_WRAPPERS
   9402 /*** IUnknown methods ***/
   9403 #define ID3D11VideoProcessorInputView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   9404 #define ID3D11VideoProcessorInputView_AddRef(This) (This)->lpVtbl->AddRef(This)
   9405 #define ID3D11VideoProcessorInputView_Release(This) (This)->lpVtbl->Release(This)
   9406 /*** ID3D11DeviceChild methods ***/
   9407 #define ID3D11VideoProcessorInputView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   9408 #define ID3D11VideoProcessorInputView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   9409 #define ID3D11VideoProcessorInputView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   9410 #define ID3D11VideoProcessorInputView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   9411 /*** ID3D11View methods ***/
   9412 #define ID3D11VideoProcessorInputView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource)
   9413 /*** ID3D11VideoProcessorInputView methods ***/
   9414 #define ID3D11VideoProcessorInputView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   9415 #else
   9416 /*** IUnknown methods ***/
   9417 static FORCEINLINE HRESULT ID3D11VideoProcessorInputView_QueryInterface(ID3D11VideoProcessorInputView* This,REFIID riid,void **ppvObject) {
   9418     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   9419 }
   9420 static FORCEINLINE ULONG ID3D11VideoProcessorInputView_AddRef(ID3D11VideoProcessorInputView* This) {
   9421     return This->lpVtbl->AddRef(This);
   9422 }
   9423 static FORCEINLINE ULONG ID3D11VideoProcessorInputView_Release(ID3D11VideoProcessorInputView* This) {
   9424     return This->lpVtbl->Release(This);
   9425 }
   9426 /*** ID3D11DeviceChild methods ***/
   9427 static FORCEINLINE void ID3D11VideoProcessorInputView_GetDevice(ID3D11VideoProcessorInputView* This,ID3D11Device **ppDevice) {
   9428     This->lpVtbl->GetDevice(This,ppDevice);
   9429 }
   9430 static FORCEINLINE HRESULT ID3D11VideoProcessorInputView_GetPrivateData(ID3D11VideoProcessorInputView* This,REFGUID guid,UINT *pDataSize,void *pData) {
   9431     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   9432 }
   9433 static FORCEINLINE HRESULT ID3D11VideoProcessorInputView_SetPrivateData(ID3D11VideoProcessorInputView* This,REFGUID guid,UINT DataSize,const void *pData) {
   9434     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   9435 }
   9436 static FORCEINLINE HRESULT ID3D11VideoProcessorInputView_SetPrivateDataInterface(ID3D11VideoProcessorInputView* This,REFGUID guid,const IUnknown *pData) {
   9437     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   9438 }
   9439 /*** ID3D11View methods ***/
   9440 static FORCEINLINE void ID3D11VideoProcessorInputView_GetResource(ID3D11VideoProcessorInputView* This,ID3D11Resource **ppResource) {
   9441     This->lpVtbl->GetResource(This,ppResource);
   9442 }
   9443 /*** ID3D11VideoProcessorInputView methods ***/
   9444 static FORCEINLINE void ID3D11VideoProcessorInputView_GetDesc(ID3D11VideoProcessorInputView* This,D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc) {
   9445     This->lpVtbl->GetDesc(This,pDesc);
   9446 }
   9447 #endif
   9448 #endif
   9449 
   9450 #endif
   9451 
   9452 void STDMETHODCALLTYPE ID3D11VideoProcessorInputView_GetDesc_Proxy(
   9453     ID3D11VideoProcessorInputView* This,
   9454     D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc);
   9455 void __RPC_STUB ID3D11VideoProcessorInputView_GetDesc_Stub(
   9456     IRpcStubBuffer* This,
   9457     IRpcChannelBuffer* pRpcChannelBuffer,
   9458     PRPC_MESSAGE pRpcMessage,
   9459     DWORD* pdwStubPhase);
   9460 
   9461 #endif  /* __ID3D11VideoProcessorInputView_INTERFACE_DEFINED__ */
   9462 
   9463 /*****************************************************************************
   9464  * ID3D11VideoProcessorOutputView interface
   9465  */
   9466 #ifndef __ID3D11VideoProcessorOutputView_INTERFACE_DEFINED__
   9467 #define __ID3D11VideoProcessorOutputView_INTERFACE_DEFINED__
   9468 
   9469 DEFINE_GUID(IID_ID3D11VideoProcessorOutputView, 0xa048285e, 0x25a9, 0x4527, 0xbd,0x93, 0xd6,0x8b,0x68,0xc4,0x42,0x54);
   9470 #if defined(__cplusplus) && !defined(CINTERFACE)
   9471 MIDL_INTERFACE("a048285e-25a9-4527-bd93-d68b68c44254")
   9472 ID3D11VideoProcessorOutputView : public ID3D11View
   9473 {
   9474     virtual void STDMETHODCALLTYPE GetDesc(
   9475         D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc) = 0;
   9476 
   9477 };
   9478 #ifdef __CRT_UUID_DECL
   9479 __CRT_UUID_DECL(ID3D11VideoProcessorOutputView, 0xa048285e, 0x25a9, 0x4527, 0xbd,0x93, 0xd6,0x8b,0x68,0xc4,0x42,0x54)
   9480 #endif
   9481 #else
   9482 typedef struct ID3D11VideoProcessorOutputViewVtbl {
   9483     BEGIN_INTERFACE
   9484 
   9485     /*** IUnknown methods ***/
   9486     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   9487         ID3D11VideoProcessorOutputView* This,
   9488         REFIID riid,
   9489         void **ppvObject);
   9490 
   9491     ULONG (STDMETHODCALLTYPE *AddRef)(
   9492         ID3D11VideoProcessorOutputView* This);
   9493 
   9494     ULONG (STDMETHODCALLTYPE *Release)(
   9495         ID3D11VideoProcessorOutputView* This);
   9496 
   9497     /*** ID3D11DeviceChild methods ***/
   9498     void (STDMETHODCALLTYPE *GetDevice)(
   9499         ID3D11VideoProcessorOutputView* This,
   9500         ID3D11Device **ppDevice);
   9501 
   9502     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   9503         ID3D11VideoProcessorOutputView* This,
   9504         REFGUID guid,
   9505         UINT *pDataSize,
   9506         void *pData);
   9507 
   9508     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   9509         ID3D11VideoProcessorOutputView* This,
   9510         REFGUID guid,
   9511         UINT DataSize,
   9512         const void *pData);
   9513 
   9514     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   9515         ID3D11VideoProcessorOutputView* This,
   9516         REFGUID guid,
   9517         const IUnknown *pData);
   9518 
   9519     /*** ID3D11View methods ***/
   9520     void (STDMETHODCALLTYPE *GetResource)(
   9521         ID3D11VideoProcessorOutputView* This,
   9522         ID3D11Resource **ppResource);
   9523 
   9524     /*** ID3D11VideoProcessorOutputView methods ***/
   9525     void (STDMETHODCALLTYPE *GetDesc)(
   9526         ID3D11VideoProcessorOutputView* This,
   9527         D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc);
   9528 
   9529     END_INTERFACE
   9530 } ID3D11VideoProcessorOutputViewVtbl;
   9531 interface ID3D11VideoProcessorOutputView {
   9532     CONST_VTBL ID3D11VideoProcessorOutputViewVtbl* lpVtbl;
   9533 };
   9534 
   9535 #ifdef COBJMACROS
   9536 #ifndef WIDL_C_INLINE_WRAPPERS
   9537 /*** IUnknown methods ***/
   9538 #define ID3D11VideoProcessorOutputView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   9539 #define ID3D11VideoProcessorOutputView_AddRef(This) (This)->lpVtbl->AddRef(This)
   9540 #define ID3D11VideoProcessorOutputView_Release(This) (This)->lpVtbl->Release(This)
   9541 /*** ID3D11DeviceChild methods ***/
   9542 #define ID3D11VideoProcessorOutputView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   9543 #define ID3D11VideoProcessorOutputView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   9544 #define ID3D11VideoProcessorOutputView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   9545 #define ID3D11VideoProcessorOutputView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   9546 /*** ID3D11View methods ***/
   9547 #define ID3D11VideoProcessorOutputView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource)
   9548 /*** ID3D11VideoProcessorOutputView methods ***/
   9549 #define ID3D11VideoProcessorOutputView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc)
   9550 #else
   9551 /*** IUnknown methods ***/
   9552 static FORCEINLINE HRESULT ID3D11VideoProcessorOutputView_QueryInterface(ID3D11VideoProcessorOutputView* This,REFIID riid,void **ppvObject) {
   9553     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   9554 }
   9555 static FORCEINLINE ULONG ID3D11VideoProcessorOutputView_AddRef(ID3D11VideoProcessorOutputView* This) {
   9556     return This->lpVtbl->AddRef(This);
   9557 }
   9558 static FORCEINLINE ULONG ID3D11VideoProcessorOutputView_Release(ID3D11VideoProcessorOutputView* This) {
   9559     return This->lpVtbl->Release(This);
   9560 }
   9561 /*** ID3D11DeviceChild methods ***/
   9562 static FORCEINLINE void ID3D11VideoProcessorOutputView_GetDevice(ID3D11VideoProcessorOutputView* This,ID3D11Device **ppDevice) {
   9563     This->lpVtbl->GetDevice(This,ppDevice);
   9564 }
   9565 static FORCEINLINE HRESULT ID3D11VideoProcessorOutputView_GetPrivateData(ID3D11VideoProcessorOutputView* This,REFGUID guid,UINT *pDataSize,void *pData) {
   9566     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   9567 }
   9568 static FORCEINLINE HRESULT ID3D11VideoProcessorOutputView_SetPrivateData(ID3D11VideoProcessorOutputView* This,REFGUID guid,UINT DataSize,const void *pData) {
   9569     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   9570 }
   9571 static FORCEINLINE HRESULT ID3D11VideoProcessorOutputView_SetPrivateDataInterface(ID3D11VideoProcessorOutputView* This,REFGUID guid,const IUnknown *pData) {
   9572     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   9573 }
   9574 /*** ID3D11View methods ***/
   9575 static FORCEINLINE void ID3D11VideoProcessorOutputView_GetResource(ID3D11VideoProcessorOutputView* This,ID3D11Resource **ppResource) {
   9576     This->lpVtbl->GetResource(This,ppResource);
   9577 }
   9578 /*** ID3D11VideoProcessorOutputView methods ***/
   9579 static FORCEINLINE void ID3D11VideoProcessorOutputView_GetDesc(ID3D11VideoProcessorOutputView* This,D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc) {
   9580     This->lpVtbl->GetDesc(This,pDesc);
   9581 }
   9582 #endif
   9583 #endif
   9584 
   9585 #endif
   9586 
   9587 void STDMETHODCALLTYPE ID3D11VideoProcessorOutputView_GetDesc_Proxy(
   9588     ID3D11VideoProcessorOutputView* This,
   9589     D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc);
   9590 void __RPC_STUB ID3D11VideoProcessorOutputView_GetDesc_Stub(
   9591     IRpcStubBuffer* This,
   9592     IRpcChannelBuffer* pRpcChannelBuffer,
   9593     PRPC_MESSAGE pRpcMessage,
   9594     DWORD* pdwStubPhase);
   9595 
   9596 #endif  /* __ID3D11VideoProcessorOutputView_INTERFACE_DEFINED__ */
   9597 
   9598 /*****************************************************************************
   9599  * ID3D11VideoDevice interface
   9600  */
   9601 #ifndef __ID3D11VideoDevice_INTERFACE_DEFINED__
   9602 #define __ID3D11VideoDevice_INTERFACE_DEFINED__
   9603 
   9604 DEFINE_GUID(IID_ID3D11VideoDevice, 0x10ec4d5b, 0x975a, 0x4689, 0xb9,0xe4, 0xd0,0xaa,0xc3,0x0f,0xe3,0x33);
   9605 #if defined(__cplusplus) && !defined(CINTERFACE)
   9606 MIDL_INTERFACE("10ec4d5b-975a-4689-b9e4-d0aac30fe333")
   9607 ID3D11VideoDevice : public IUnknown
   9608 {
   9609     virtual HRESULT STDMETHODCALLTYPE CreateVideoDecoder(
   9610         const D3D11_VIDEO_DECODER_DESC *pVideoDesc,
   9611         const D3D11_VIDEO_DECODER_CONFIG *pConfig,
   9612         ID3D11VideoDecoder **ppDecoder) = 0;
   9613 
   9614     virtual HRESULT STDMETHODCALLTYPE CreateVideoProcessor(
   9615         ID3D11VideoProcessorEnumerator *pEnum,
   9616         UINT RateConversionIndex,
   9617         ID3D11VideoProcessor **ppVideoProcessor) = 0;
   9618 
   9619     virtual HRESULT STDMETHODCALLTYPE CreateAuthenticatedChannel(
   9620         D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType,
   9621         ID3D11AuthenticatedChannel **ppAuthenticatedChannel) = 0;
   9622 
   9623     virtual HRESULT STDMETHODCALLTYPE CreateCryptoSession(
   9624         const GUID *pCryptoType,
   9625         const GUID *pDecoderProfile,
   9626         const GUID *pKeyExchangeType,
   9627         ID3D11CryptoSession **ppCryptoSession) = 0;
   9628 
   9629     virtual HRESULT STDMETHODCALLTYPE CreateVideoDecoderOutputView(
   9630         ID3D11Resource *pResource,
   9631         const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc,
   9632         ID3D11VideoDecoderOutputView **ppVDOVView) = 0;
   9633 
   9634     virtual HRESULT STDMETHODCALLTYPE CreateVideoProcessorInputView(
   9635         ID3D11Resource *pResource,
   9636         ID3D11VideoProcessorEnumerator *pEnum,
   9637         const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc,
   9638         ID3D11VideoProcessorInputView **ppVPIView) = 0;
   9639 
   9640     virtual HRESULT STDMETHODCALLTYPE CreateVideoProcessorOutputView(
   9641         ID3D11Resource *pResource,
   9642         ID3D11VideoProcessorEnumerator *pEnum,
   9643         const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc,
   9644         ID3D11VideoProcessorOutputView **ppVPOView) = 0;
   9645 
   9646     virtual HRESULT STDMETHODCALLTYPE CreateVideoProcessorEnumerator(
   9647         const D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc,
   9648         ID3D11VideoProcessorEnumerator **ppEnum) = 0;
   9649 
   9650     virtual UINT STDMETHODCALLTYPE GetVideoDecoderProfileCount(
   9651         ) = 0;
   9652 
   9653     virtual HRESULT STDMETHODCALLTYPE GetVideoDecoderProfile(
   9654         UINT Index,
   9655         GUID *pDecoderProfile) = 0;
   9656 
   9657     virtual HRESULT STDMETHODCALLTYPE CheckVideoDecoderFormat(
   9658         const GUID *pDecoderProfile,
   9659         DXGI_FORMAT Format,
   9660         WINBOOL *pSupported) = 0;
   9661 
   9662     virtual HRESULT STDMETHODCALLTYPE GetVideoDecoderConfigCount(
   9663         const D3D11_VIDEO_DECODER_DESC *pDesc,
   9664         UINT *pCount) = 0;
   9665 
   9666     virtual HRESULT STDMETHODCALLTYPE GetVideoDecoderConfig(
   9667         const D3D11_VIDEO_DECODER_DESC *pDesc,
   9668         UINT Index,
   9669         D3D11_VIDEO_DECODER_CONFIG *pConfig) = 0;
   9670 
   9671     virtual HRESULT STDMETHODCALLTYPE GetContentProtectionCaps(
   9672         const GUID *pCryptoType,
   9673         const GUID *pDecoderProfile,
   9674         D3D11_VIDEO_CONTENT_PROTECTION_CAPS *pCaps) = 0;
   9675 
   9676     virtual HRESULT STDMETHODCALLTYPE CheckCryptoKeyExchange(
   9677         const GUID *pCryptoType,
   9678         const GUID *pDecoderProfile,
   9679         UINT Index,
   9680         GUID *pKeyExchangeType) = 0;
   9681 
   9682     virtual HRESULT STDMETHODCALLTYPE SetPrivateData(
   9683         REFGUID guid,
   9684         UINT DataSize,
   9685         const void *pData) = 0;
   9686 
   9687     virtual HRESULT STDMETHODCALLTYPE SetPrivateDataInterface(
   9688         REFGUID guid,
   9689         const IUnknown *pData) = 0;
   9690 
   9691 };
   9692 #ifdef __CRT_UUID_DECL
   9693 __CRT_UUID_DECL(ID3D11VideoDevice, 0x10ec4d5b, 0x975a, 0x4689, 0xb9,0xe4, 0xd0,0xaa,0xc3,0x0f,0xe3,0x33)
   9694 #endif
   9695 #else
   9696 typedef struct ID3D11VideoDeviceVtbl {
   9697     BEGIN_INTERFACE
   9698 
   9699     /*** IUnknown methods ***/
   9700     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   9701         ID3D11VideoDevice* This,
   9702         REFIID riid,
   9703         void **ppvObject);
   9704 
   9705     ULONG (STDMETHODCALLTYPE *AddRef)(
   9706         ID3D11VideoDevice* This);
   9707 
   9708     ULONG (STDMETHODCALLTYPE *Release)(
   9709         ID3D11VideoDevice* This);
   9710 
   9711     /*** ID3D11VideoDevice methods ***/
   9712     HRESULT (STDMETHODCALLTYPE *CreateVideoDecoder)(
   9713         ID3D11VideoDevice* This,
   9714         const D3D11_VIDEO_DECODER_DESC *pVideoDesc,
   9715         const D3D11_VIDEO_DECODER_CONFIG *pConfig,
   9716         ID3D11VideoDecoder **ppDecoder);
   9717 
   9718     HRESULT (STDMETHODCALLTYPE *CreateVideoProcessor)(
   9719         ID3D11VideoDevice* This,
   9720         ID3D11VideoProcessorEnumerator *pEnum,
   9721         UINT RateConversionIndex,
   9722         ID3D11VideoProcessor **ppVideoProcessor);
   9723 
   9724     HRESULT (STDMETHODCALLTYPE *CreateAuthenticatedChannel)(
   9725         ID3D11VideoDevice* This,
   9726         D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType,
   9727         ID3D11AuthenticatedChannel **ppAuthenticatedChannel);
   9728 
   9729     HRESULT (STDMETHODCALLTYPE *CreateCryptoSession)(
   9730         ID3D11VideoDevice* This,
   9731         const GUID *pCryptoType,
   9732         const GUID *pDecoderProfile,
   9733         const GUID *pKeyExchangeType,
   9734         ID3D11CryptoSession **ppCryptoSession);
   9735 
   9736     HRESULT (STDMETHODCALLTYPE *CreateVideoDecoderOutputView)(
   9737         ID3D11VideoDevice* This,
   9738         ID3D11Resource *pResource,
   9739         const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc,
   9740         ID3D11VideoDecoderOutputView **ppVDOVView);
   9741 
   9742     HRESULT (STDMETHODCALLTYPE *CreateVideoProcessorInputView)(
   9743         ID3D11VideoDevice* This,
   9744         ID3D11Resource *pResource,
   9745         ID3D11VideoProcessorEnumerator *pEnum,
   9746         const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc,
   9747         ID3D11VideoProcessorInputView **ppVPIView);
   9748 
   9749     HRESULT (STDMETHODCALLTYPE *CreateVideoProcessorOutputView)(
   9750         ID3D11VideoDevice* This,
   9751         ID3D11Resource *pResource,
   9752         ID3D11VideoProcessorEnumerator *pEnum,
   9753         const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc,
   9754         ID3D11VideoProcessorOutputView **ppVPOView);
   9755 
   9756     HRESULT (STDMETHODCALLTYPE *CreateVideoProcessorEnumerator)(
   9757         ID3D11VideoDevice* This,
   9758         const D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc,
   9759         ID3D11VideoProcessorEnumerator **ppEnum);
   9760 
   9761     UINT (STDMETHODCALLTYPE *GetVideoDecoderProfileCount)(
   9762         ID3D11VideoDevice* This);
   9763 
   9764     HRESULT (STDMETHODCALLTYPE *GetVideoDecoderProfile)(
   9765         ID3D11VideoDevice* This,
   9766         UINT Index,
   9767         GUID *pDecoderProfile);
   9768 
   9769     HRESULT (STDMETHODCALLTYPE *CheckVideoDecoderFormat)(
   9770         ID3D11VideoDevice* This,
   9771         const GUID *pDecoderProfile,
   9772         DXGI_FORMAT Format,
   9773         WINBOOL *pSupported);
   9774 
   9775     HRESULT (STDMETHODCALLTYPE *GetVideoDecoderConfigCount)(
   9776         ID3D11VideoDevice* This,
   9777         const D3D11_VIDEO_DECODER_DESC *pDesc,
   9778         UINT *pCount);
   9779 
   9780     HRESULT (STDMETHODCALLTYPE *GetVideoDecoderConfig)(
   9781         ID3D11VideoDevice* This,
   9782         const D3D11_VIDEO_DECODER_DESC *pDesc,
   9783         UINT Index,
   9784         D3D11_VIDEO_DECODER_CONFIG *pConfig);
   9785 
   9786     HRESULT (STDMETHODCALLTYPE *GetContentProtectionCaps)(
   9787         ID3D11VideoDevice* This,
   9788         const GUID *pCryptoType,
   9789         const GUID *pDecoderProfile,
   9790         D3D11_VIDEO_CONTENT_PROTECTION_CAPS *pCaps);
   9791 
   9792     HRESULT (STDMETHODCALLTYPE *CheckCryptoKeyExchange)(
   9793         ID3D11VideoDevice* This,
   9794         const GUID *pCryptoType,
   9795         const GUID *pDecoderProfile,
   9796         UINT Index,
   9797         GUID *pKeyExchangeType);
   9798 
   9799     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   9800         ID3D11VideoDevice* This,
   9801         REFGUID guid,
   9802         UINT DataSize,
   9803         const void *pData);
   9804 
   9805     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   9806         ID3D11VideoDevice* This,
   9807         REFGUID guid,
   9808         const IUnknown *pData);
   9809 
   9810     END_INTERFACE
   9811 } ID3D11VideoDeviceVtbl;
   9812 interface ID3D11VideoDevice {
   9813     CONST_VTBL ID3D11VideoDeviceVtbl* lpVtbl;
   9814 };
   9815 
   9816 #ifdef COBJMACROS
   9817 #ifndef WIDL_C_INLINE_WRAPPERS
   9818 /*** IUnknown methods ***/
   9819 #define ID3D11VideoDevice_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   9820 #define ID3D11VideoDevice_AddRef(This) (This)->lpVtbl->AddRef(This)
   9821 #define ID3D11VideoDevice_Release(This) (This)->lpVtbl->Release(This)
   9822 /*** ID3D11VideoDevice methods ***/
   9823 #define ID3D11VideoDevice_CreateVideoDecoder(This,pVideoDesc,pConfig,ppDecoder) (This)->lpVtbl->CreateVideoDecoder(This,pVideoDesc,pConfig,ppDecoder)
   9824 #define ID3D11VideoDevice_CreateVideoProcessor(This,pEnum,RateConversionIndex,ppVideoProcessor) (This)->lpVtbl->CreateVideoProcessor(This,pEnum,RateConversionIndex,ppVideoProcessor)
   9825 #define ID3D11VideoDevice_CreateAuthenticatedChannel(This,ChannelType,ppAuthenticatedChannel) (This)->lpVtbl->CreateAuthenticatedChannel(This,ChannelType,ppAuthenticatedChannel)
   9826 #define ID3D11VideoDevice_CreateCryptoSession(This,pCryptoType,pDecoderProfile,pKeyExchangeType,ppCryptoSession) (This)->lpVtbl->CreateCryptoSession(This,pCryptoType,pDecoderProfile,pKeyExchangeType,ppCryptoSession)
   9827 #define ID3D11VideoDevice_CreateVideoDecoderOutputView(This,pResource,pDesc,ppVDOVView) (This)->lpVtbl->CreateVideoDecoderOutputView(This,pResource,pDesc,ppVDOVView)
   9828 #define ID3D11VideoDevice_CreateVideoProcessorInputView(This,pResource,pEnum,pDesc,ppVPIView) (This)->lpVtbl->CreateVideoProcessorInputView(This,pResource,pEnum,pDesc,ppVPIView)
   9829 #define ID3D11VideoDevice_CreateVideoProcessorOutputView(This,pResource,pEnum,pDesc,ppVPOView) (This)->lpVtbl->CreateVideoProcessorOutputView(This,pResource,pEnum,pDesc,ppVPOView)
   9830 #define ID3D11VideoDevice_CreateVideoProcessorEnumerator(This,pDesc,ppEnum) (This)->lpVtbl->CreateVideoProcessorEnumerator(This,pDesc,ppEnum)
   9831 #define ID3D11VideoDevice_GetVideoDecoderProfileCount(This) (This)->lpVtbl->GetVideoDecoderProfileCount(This)
   9832 #define ID3D11VideoDevice_GetVideoDecoderProfile(This,Index,pDecoderProfile) (This)->lpVtbl->GetVideoDecoderProfile(This,Index,pDecoderProfile)
   9833 #define ID3D11VideoDevice_CheckVideoDecoderFormat(This,pDecoderProfile,Format,pSupported) (This)->lpVtbl->CheckVideoDecoderFormat(This,pDecoderProfile,Format,pSupported)
   9834 #define ID3D11VideoDevice_GetVideoDecoderConfigCount(This,pDesc,pCount) (This)->lpVtbl->GetVideoDecoderConfigCount(This,pDesc,pCount)
   9835 #define ID3D11VideoDevice_GetVideoDecoderConfig(This,pDesc,Index,pConfig) (This)->lpVtbl->GetVideoDecoderConfig(This,pDesc,Index,pConfig)
   9836 #define ID3D11VideoDevice_GetContentProtectionCaps(This,pCryptoType,pDecoderProfile,pCaps) (This)->lpVtbl->GetContentProtectionCaps(This,pCryptoType,pDecoderProfile,pCaps)
   9837 #define ID3D11VideoDevice_CheckCryptoKeyExchange(This,pCryptoType,pDecoderProfile,Index,pKeyExchangeType) (This)->lpVtbl->CheckCryptoKeyExchange(This,pCryptoType,pDecoderProfile,Index,pKeyExchangeType)
   9838 #define ID3D11VideoDevice_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   9839 #define ID3D11VideoDevice_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   9840 #else
   9841 /*** IUnknown methods ***/
   9842 static FORCEINLINE HRESULT ID3D11VideoDevice_QueryInterface(ID3D11VideoDevice* This,REFIID riid,void **ppvObject) {
   9843     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   9844 }
   9845 static FORCEINLINE ULONG ID3D11VideoDevice_AddRef(ID3D11VideoDevice* This) {
   9846     return This->lpVtbl->AddRef(This);
   9847 }
   9848 static FORCEINLINE ULONG ID3D11VideoDevice_Release(ID3D11VideoDevice* This) {
   9849     return This->lpVtbl->Release(This);
   9850 }
   9851 /*** ID3D11VideoDevice methods ***/
   9852 static FORCEINLINE HRESULT ID3D11VideoDevice_CreateVideoDecoder(ID3D11VideoDevice* This,const D3D11_VIDEO_DECODER_DESC *pVideoDesc,const D3D11_VIDEO_DECODER_CONFIG *pConfig,ID3D11VideoDecoder **ppDecoder) {
   9853     return This->lpVtbl->CreateVideoDecoder(This,pVideoDesc,pConfig,ppDecoder);
   9854 }
   9855 static FORCEINLINE HRESULT ID3D11VideoDevice_CreateVideoProcessor(ID3D11VideoDevice* This,ID3D11VideoProcessorEnumerator *pEnum,UINT RateConversionIndex,ID3D11VideoProcessor **ppVideoProcessor) {
   9856     return This->lpVtbl->CreateVideoProcessor(This,pEnum,RateConversionIndex,ppVideoProcessor);
   9857 }
   9858 static FORCEINLINE HRESULT ID3D11VideoDevice_CreateAuthenticatedChannel(ID3D11VideoDevice* This,D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType,ID3D11AuthenticatedChannel **ppAuthenticatedChannel) {
   9859     return This->lpVtbl->CreateAuthenticatedChannel(This,ChannelType,ppAuthenticatedChannel);
   9860 }
   9861 static FORCEINLINE HRESULT ID3D11VideoDevice_CreateCryptoSession(ID3D11VideoDevice* This,const GUID *pCryptoType,const GUID *pDecoderProfile,const GUID *pKeyExchangeType,ID3D11CryptoSession **ppCryptoSession) {
   9862     return This->lpVtbl->CreateCryptoSession(This,pCryptoType,pDecoderProfile,pKeyExchangeType,ppCryptoSession);
   9863 }
   9864 static FORCEINLINE HRESULT ID3D11VideoDevice_CreateVideoDecoderOutputView(ID3D11VideoDevice* This,ID3D11Resource *pResource,const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc,ID3D11VideoDecoderOutputView **ppVDOVView) {
   9865     return This->lpVtbl->CreateVideoDecoderOutputView(This,pResource,pDesc,ppVDOVView);
   9866 }
   9867 static FORCEINLINE HRESULT ID3D11VideoDevice_CreateVideoProcessorInputView(ID3D11VideoDevice* This,ID3D11Resource *pResource,ID3D11VideoProcessorEnumerator *pEnum,const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc,ID3D11VideoProcessorInputView **ppVPIView) {
   9868     return This->lpVtbl->CreateVideoProcessorInputView(This,pResource,pEnum,pDesc,ppVPIView);
   9869 }
   9870 static FORCEINLINE HRESULT ID3D11VideoDevice_CreateVideoProcessorOutputView(ID3D11VideoDevice* This,ID3D11Resource *pResource,ID3D11VideoProcessorEnumerator *pEnum,const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc,ID3D11VideoProcessorOutputView **ppVPOView) {
   9871     return This->lpVtbl->CreateVideoProcessorOutputView(This,pResource,pEnum,pDesc,ppVPOView);
   9872 }
   9873 static FORCEINLINE HRESULT ID3D11VideoDevice_CreateVideoProcessorEnumerator(ID3D11VideoDevice* This,const D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc,ID3D11VideoProcessorEnumerator **ppEnum) {
   9874     return This->lpVtbl->CreateVideoProcessorEnumerator(This,pDesc,ppEnum);
   9875 }
   9876 static FORCEINLINE UINT ID3D11VideoDevice_GetVideoDecoderProfileCount(ID3D11VideoDevice* This) {
   9877     return This->lpVtbl->GetVideoDecoderProfileCount(This);
   9878 }
   9879 static FORCEINLINE HRESULT ID3D11VideoDevice_GetVideoDecoderProfile(ID3D11VideoDevice* This,UINT Index,GUID *pDecoderProfile) {
   9880     return This->lpVtbl->GetVideoDecoderProfile(This,Index,pDecoderProfile);
   9881 }
   9882 static FORCEINLINE HRESULT ID3D11VideoDevice_CheckVideoDecoderFormat(ID3D11VideoDevice* This,const GUID *pDecoderProfile,DXGI_FORMAT Format,WINBOOL *pSupported) {
   9883     return This->lpVtbl->CheckVideoDecoderFormat(This,pDecoderProfile,Format,pSupported);
   9884 }
   9885 static FORCEINLINE HRESULT ID3D11VideoDevice_GetVideoDecoderConfigCount(ID3D11VideoDevice* This,const D3D11_VIDEO_DECODER_DESC *pDesc,UINT *pCount) {
   9886     return This->lpVtbl->GetVideoDecoderConfigCount(This,pDesc,pCount);
   9887 }
   9888 static FORCEINLINE HRESULT ID3D11VideoDevice_GetVideoDecoderConfig(ID3D11VideoDevice* This,const D3D11_VIDEO_DECODER_DESC *pDesc,UINT Index,D3D11_VIDEO_DECODER_CONFIG *pConfig) {
   9889     return This->lpVtbl->GetVideoDecoderConfig(This,pDesc,Index,pConfig);
   9890 }
   9891 static FORCEINLINE HRESULT ID3D11VideoDevice_GetContentProtectionCaps(ID3D11VideoDevice* This,const GUID *pCryptoType,const GUID *pDecoderProfile,D3D11_VIDEO_CONTENT_PROTECTION_CAPS *pCaps) {
   9892     return This->lpVtbl->GetContentProtectionCaps(This,pCryptoType,pDecoderProfile,pCaps);
   9893 }
   9894 static FORCEINLINE HRESULT ID3D11VideoDevice_CheckCryptoKeyExchange(ID3D11VideoDevice* This,const GUID *pCryptoType,const GUID *pDecoderProfile,UINT Index,GUID *pKeyExchangeType) {
   9895     return This->lpVtbl->CheckCryptoKeyExchange(This,pCryptoType,pDecoderProfile,Index,pKeyExchangeType);
   9896 }
   9897 static FORCEINLINE HRESULT ID3D11VideoDevice_SetPrivateData(ID3D11VideoDevice* This,REFGUID guid,UINT DataSize,const void *pData) {
   9898     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   9899 }
   9900 static FORCEINLINE HRESULT ID3D11VideoDevice_SetPrivateDataInterface(ID3D11VideoDevice* This,REFGUID guid,const IUnknown *pData) {
   9901     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   9902 }
   9903 #endif
   9904 #endif
   9905 
   9906 #endif
   9907 
   9908 HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_CreateVideoDecoder_Proxy(
   9909     ID3D11VideoDevice* This,
   9910     const D3D11_VIDEO_DECODER_DESC *pVideoDesc,
   9911     const D3D11_VIDEO_DECODER_CONFIG *pConfig,
   9912     ID3D11VideoDecoder **ppDecoder);
   9913 void __RPC_STUB ID3D11VideoDevice_CreateVideoDecoder_Stub(
   9914     IRpcStubBuffer* This,
   9915     IRpcChannelBuffer* pRpcChannelBuffer,
   9916     PRPC_MESSAGE pRpcMessage,
   9917     DWORD* pdwStubPhase);
   9918 HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_CreateVideoProcessor_Proxy(
   9919     ID3D11VideoDevice* This,
   9920     ID3D11VideoProcessorEnumerator *pEnum,
   9921     UINT RateConversionIndex,
   9922     ID3D11VideoProcessor **ppVideoProcessor);
   9923 void __RPC_STUB ID3D11VideoDevice_CreateVideoProcessor_Stub(
   9924     IRpcStubBuffer* This,
   9925     IRpcChannelBuffer* pRpcChannelBuffer,
   9926     PRPC_MESSAGE pRpcMessage,
   9927     DWORD* pdwStubPhase);
   9928 HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_CreateAuthenticatedChannel_Proxy(
   9929     ID3D11VideoDevice* This,
   9930     D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType,
   9931     ID3D11AuthenticatedChannel **ppAuthenticatedChannel);
   9932 void __RPC_STUB ID3D11VideoDevice_CreateAuthenticatedChannel_Stub(
   9933     IRpcStubBuffer* This,
   9934     IRpcChannelBuffer* pRpcChannelBuffer,
   9935     PRPC_MESSAGE pRpcMessage,
   9936     DWORD* pdwStubPhase);
   9937 HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_CreateCryptoSession_Proxy(
   9938     ID3D11VideoDevice* This,
   9939     const GUID *pCryptoType,
   9940     const GUID *pDecoderProfile,
   9941     const GUID *pKeyExchangeType,
   9942     ID3D11CryptoSession **ppCryptoSession);
   9943 void __RPC_STUB ID3D11VideoDevice_CreateCryptoSession_Stub(
   9944     IRpcStubBuffer* This,
   9945     IRpcChannelBuffer* pRpcChannelBuffer,
   9946     PRPC_MESSAGE pRpcMessage,
   9947     DWORD* pdwStubPhase);
   9948 HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_CreateVideoDecoderOutputView_Proxy(
   9949     ID3D11VideoDevice* This,
   9950     ID3D11Resource *pResource,
   9951     const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc,
   9952     ID3D11VideoDecoderOutputView **ppVDOVView);
   9953 void __RPC_STUB ID3D11VideoDevice_CreateVideoDecoderOutputView_Stub(
   9954     IRpcStubBuffer* This,
   9955     IRpcChannelBuffer* pRpcChannelBuffer,
   9956     PRPC_MESSAGE pRpcMessage,
   9957     DWORD* pdwStubPhase);
   9958 HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_CreateVideoProcessorInputView_Proxy(
   9959     ID3D11VideoDevice* This,
   9960     ID3D11Resource *pResource,
   9961     ID3D11VideoProcessorEnumerator *pEnum,
   9962     const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc,
   9963     ID3D11VideoProcessorInputView **ppVPIView);
   9964 void __RPC_STUB ID3D11VideoDevice_CreateVideoProcessorInputView_Stub(
   9965     IRpcStubBuffer* This,
   9966     IRpcChannelBuffer* pRpcChannelBuffer,
   9967     PRPC_MESSAGE pRpcMessage,
   9968     DWORD* pdwStubPhase);
   9969 HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_CreateVideoProcessorOutputView_Proxy(
   9970     ID3D11VideoDevice* This,
   9971     ID3D11Resource *pResource,
   9972     ID3D11VideoProcessorEnumerator *pEnum,
   9973     const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc,
   9974     ID3D11VideoProcessorOutputView **ppVPOView);
   9975 void __RPC_STUB ID3D11VideoDevice_CreateVideoProcessorOutputView_Stub(
   9976     IRpcStubBuffer* This,
   9977     IRpcChannelBuffer* pRpcChannelBuffer,
   9978     PRPC_MESSAGE pRpcMessage,
   9979     DWORD* pdwStubPhase);
   9980 HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_CreateVideoProcessorEnumerator_Proxy(
   9981     ID3D11VideoDevice* This,
   9982     const D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc,
   9983     ID3D11VideoProcessorEnumerator **ppEnum);
   9984 void __RPC_STUB ID3D11VideoDevice_CreateVideoProcessorEnumerator_Stub(
   9985     IRpcStubBuffer* This,
   9986     IRpcChannelBuffer* pRpcChannelBuffer,
   9987     PRPC_MESSAGE pRpcMessage,
   9988     DWORD* pdwStubPhase);
   9989 UINT STDMETHODCALLTYPE ID3D11VideoDevice_GetVideoDecoderProfileCount_Proxy(
   9990     ID3D11VideoDevice* This);
   9991 void __RPC_STUB ID3D11VideoDevice_GetVideoDecoderProfileCount_Stub(
   9992     IRpcStubBuffer* This,
   9993     IRpcChannelBuffer* pRpcChannelBuffer,
   9994     PRPC_MESSAGE pRpcMessage,
   9995     DWORD* pdwStubPhase);
   9996 HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_GetVideoDecoderProfile_Proxy(
   9997     ID3D11VideoDevice* This,
   9998     UINT Index,
   9999     GUID *pDecoderProfile);
   10000 void __RPC_STUB ID3D11VideoDevice_GetVideoDecoderProfile_Stub(
   10001     IRpcStubBuffer* This,
   10002     IRpcChannelBuffer* pRpcChannelBuffer,
   10003     PRPC_MESSAGE pRpcMessage,
   10004     DWORD* pdwStubPhase);
   10005 HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_CheckVideoDecoderFormat_Proxy(
   10006     ID3D11VideoDevice* This,
   10007     const GUID *pDecoderProfile,
   10008     DXGI_FORMAT Format,
   10009     WINBOOL *pSupported);
   10010 void __RPC_STUB ID3D11VideoDevice_CheckVideoDecoderFormat_Stub(
   10011     IRpcStubBuffer* This,
   10012     IRpcChannelBuffer* pRpcChannelBuffer,
   10013     PRPC_MESSAGE pRpcMessage,
   10014     DWORD* pdwStubPhase);
   10015 HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_GetVideoDecoderConfigCount_Proxy(
   10016     ID3D11VideoDevice* This,
   10017     const D3D11_VIDEO_DECODER_DESC *pDesc,
   10018     UINT *pCount);
   10019 void __RPC_STUB ID3D11VideoDevice_GetVideoDecoderConfigCount_Stub(
   10020     IRpcStubBuffer* This,
   10021     IRpcChannelBuffer* pRpcChannelBuffer,
   10022     PRPC_MESSAGE pRpcMessage,
   10023     DWORD* pdwStubPhase);
   10024 HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_GetVideoDecoderConfig_Proxy(
   10025     ID3D11VideoDevice* This,
   10026     const D3D11_VIDEO_DECODER_DESC *pDesc,
   10027     UINT Index,
   10028     D3D11_VIDEO_DECODER_CONFIG *pConfig);
   10029 void __RPC_STUB ID3D11VideoDevice_GetVideoDecoderConfig_Stub(
   10030     IRpcStubBuffer* This,
   10031     IRpcChannelBuffer* pRpcChannelBuffer,
   10032     PRPC_MESSAGE pRpcMessage,
   10033     DWORD* pdwStubPhase);
   10034 HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_GetContentProtectionCaps_Proxy(
   10035     ID3D11VideoDevice* This,
   10036     const GUID *pCryptoType,
   10037     const GUID *pDecoderProfile,
   10038     D3D11_VIDEO_CONTENT_PROTECTION_CAPS *pCaps);
   10039 void __RPC_STUB ID3D11VideoDevice_GetContentProtectionCaps_Stub(
   10040     IRpcStubBuffer* This,
   10041     IRpcChannelBuffer* pRpcChannelBuffer,
   10042     PRPC_MESSAGE pRpcMessage,
   10043     DWORD* pdwStubPhase);
   10044 HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_CheckCryptoKeyExchange_Proxy(
   10045     ID3D11VideoDevice* This,
   10046     const GUID *pCryptoType,
   10047     const GUID *pDecoderProfile,
   10048     UINT Index,
   10049     GUID *pKeyExchangeType);
   10050 void __RPC_STUB ID3D11VideoDevice_CheckCryptoKeyExchange_Stub(
   10051     IRpcStubBuffer* This,
   10052     IRpcChannelBuffer* pRpcChannelBuffer,
   10053     PRPC_MESSAGE pRpcMessage,
   10054     DWORD* pdwStubPhase);
   10055 HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_SetPrivateData_Proxy(
   10056     ID3D11VideoDevice* This,
   10057     REFGUID guid,
   10058     UINT DataSize,
   10059     const void *pData);
   10060 void __RPC_STUB ID3D11VideoDevice_SetPrivateData_Stub(
   10061     IRpcStubBuffer* This,
   10062     IRpcChannelBuffer* pRpcChannelBuffer,
   10063     PRPC_MESSAGE pRpcMessage,
   10064     DWORD* pdwStubPhase);
   10065 HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_SetPrivateDataInterface_Proxy(
   10066     ID3D11VideoDevice* This,
   10067     REFGUID guid,
   10068     const IUnknown *pData);
   10069 void __RPC_STUB ID3D11VideoDevice_SetPrivateDataInterface_Stub(
   10070     IRpcStubBuffer* This,
   10071     IRpcChannelBuffer* pRpcChannelBuffer,
   10072     PRPC_MESSAGE pRpcMessage,
   10073     DWORD* pdwStubPhase);
   10074 
   10075 #endif  /* __ID3D11VideoDevice_INTERFACE_DEFINED__ */
   10076 
   10077 /*****************************************************************************
   10078  * ID3D11VideoContext interface
   10079  */
   10080 #ifndef __ID3D11VideoContext_INTERFACE_DEFINED__
   10081 #define __ID3D11VideoContext_INTERFACE_DEFINED__
   10082 
   10083 DEFINE_GUID(IID_ID3D11VideoContext, 0x61f21c45, 0x3c0e, 0x4a74, 0x9c,0xea, 0x67,0x10,0x0d,0x9a,0xd5,0xe4);
   10084 #if defined(__cplusplus) && !defined(CINTERFACE)
   10085 MIDL_INTERFACE("61f21c45-3c0e-4a74-9cea-67100d9ad5e4")
   10086 ID3D11VideoContext : public ID3D11DeviceChild
   10087 {
   10088     virtual HRESULT STDMETHODCALLTYPE GetDecoderBuffer(
   10089         ID3D11VideoDecoder *decoder,
   10090         D3D11_VIDEO_DECODER_BUFFER_TYPE type,
   10091         UINT *buffer_size,
   10092         void **buffer) = 0;
   10093 
   10094     virtual HRESULT STDMETHODCALLTYPE ReleaseDecoderBuffer(
   10095         ID3D11VideoDecoder *decoder,
   10096         D3D11_VIDEO_DECODER_BUFFER_TYPE type) = 0;
   10097 
   10098     virtual HRESULT STDMETHODCALLTYPE DecoderBeginFrame(
   10099         ID3D11VideoDecoder *decoder,
   10100         ID3D11VideoDecoderOutputView *view,
   10101         UINT key_size,
   10102         const void *key) = 0;
   10103 
   10104     virtual HRESULT STDMETHODCALLTYPE DecoderEndFrame(
   10105         ID3D11VideoDecoder *decoder) = 0;
   10106 
   10107     virtual HRESULT STDMETHODCALLTYPE SubmitDecoderBuffers(
   10108         ID3D11VideoDecoder *decoder,
   10109         UINT buffers_count,
   10110         const D3D11_VIDEO_DECODER_BUFFER_DESC *buffer_desc) = 0;
   10111 
   10112     virtual HRESULT STDMETHODCALLTYPE DecoderExtension(
   10113         ID3D11VideoDecoder *decoder,
   10114         const D3D11_VIDEO_DECODER_EXTENSION *extension) = 0;
   10115 
   10116     virtual void STDMETHODCALLTYPE VideoProcessorSetOutputTargetRect(
   10117         ID3D11VideoProcessor *processor,
   10118         WINBOOL enable,
   10119         const RECT *rect) = 0;
   10120 
   10121     virtual void STDMETHODCALLTYPE VideoProcessorSetOutputBackgroundColor(
   10122         ID3D11VideoProcessor *processor,
   10123         WINBOOL y_cb_cr,
   10124         const D3D11_VIDEO_COLOR *color) = 0;
   10125 
   10126     virtual void STDMETHODCALLTYPE VideoProcessorSetOutputColorSpace(
   10127         ID3D11VideoProcessor *processor,
   10128         const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) = 0;
   10129 
   10130     virtual void STDMETHODCALLTYPE VideoProcessorSetOutputAlphaFillMode(
   10131         ID3D11VideoProcessor *processor,
   10132         D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE alpha_fill_mode,
   10133         UINT stream_idx) = 0;
   10134 
   10135     virtual void STDMETHODCALLTYPE VideoProcessorSetOutputConstriction(
   10136         ID3D11VideoProcessor *processor,
   10137         WINBOOL enable,
   10138         SIZE size) = 0;
   10139 
   10140     virtual void STDMETHODCALLTYPE VideoProcessorSetOutputStereoMode(
   10141         ID3D11VideoProcessor *processor,
   10142         WINBOOL enable) = 0;
   10143 
   10144     virtual HRESULT STDMETHODCALLTYPE VideoProcessorSetOutputExtension(
   10145         ID3D11VideoProcessor *processor,
   10146         const GUID *guid,
   10147         UINT data_size,
   10148         void *data) = 0;
   10149 
   10150     virtual void STDMETHODCALLTYPE VideoProcessorGetOutputTargetRect(
   10151         ID3D11VideoProcessor *processor,
   10152         WINBOOL *enabled,
   10153         RECT *rect) = 0;
   10154 
   10155     virtual void STDMETHODCALLTYPE VideoProcessorGetOutputBackgroundColor(
   10156         ID3D11VideoProcessor *processor,
   10157         WINBOOL *y_cb_cr,
   10158         D3D11_VIDEO_COLOR *color) = 0;
   10159 
   10160     virtual void STDMETHODCALLTYPE VideoProcessorGetOutputColorSpace(
   10161         ID3D11VideoProcessor *processor,
   10162         D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) = 0;
   10163 
   10164     virtual void STDMETHODCALLTYPE VideoProcessorGetOutputAlphaFillMode(
   10165         ID3D11VideoProcessor *processor,
   10166         D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE *alpha_fill_mode,
   10167         UINT *stream_idx) = 0;
   10168 
   10169     virtual void STDMETHODCALLTYPE VideoProcessorGetOutputConstriction(
   10170         ID3D11VideoProcessor *processor,
   10171         WINBOOL *enabled,
   10172         SIZE *size) = 0;
   10173 
   10174     virtual void STDMETHODCALLTYPE VideoProcessorGetOutputStereoMode(
   10175         ID3D11VideoProcessor *processor,
   10176         WINBOOL *enabled) = 0;
   10177 
   10178     virtual HRESULT STDMETHODCALLTYPE VideoProcessorGetOutputExtension(
   10179         ID3D11VideoProcessor *processor,
   10180         const GUID *guid,
   10181         UINT data_size,
   10182         void *data) = 0;
   10183 
   10184     virtual void STDMETHODCALLTYPE VideoProcessorSetStreamFrameFormat(
   10185         ID3D11VideoProcessor *processor,
   10186         UINT stream_idx,
   10187         D3D11_VIDEO_FRAME_FORMAT format) = 0;
   10188 
   10189     virtual void STDMETHODCALLTYPE VideoProcessorSetStreamColorSpace(
   10190         ID3D11VideoProcessor *processor,
   10191         UINT stream_idx,
   10192         const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) = 0;
   10193 
   10194     virtual void STDMETHODCALLTYPE VideoProcessorSetStreamOutputRate(
   10195         ID3D11VideoProcessor *processor,
   10196         UINT stream_idx,
   10197         D3D11_VIDEO_PROCESSOR_OUTPUT_RATE rate,
   10198         WINBOOL repeat,
   10199         const DXGI_RATIONAL *custom_rate) = 0;
   10200 
   10201     virtual void STDMETHODCALLTYPE VideoProcessorSetStreamSourceRect(
   10202         ID3D11VideoProcessor *processor,
   10203         UINT stream_idx,
   10204         WINBOOL enable,
   10205         const RECT *rect) = 0;
   10206 
   10207     virtual void STDMETHODCALLTYPE VideoProcessorSetStreamDestRect(
   10208         ID3D11VideoProcessor *processor,
   10209         UINT stream_idx,
   10210         WINBOOL enable,
   10211         const RECT *rect) = 0;
   10212 
   10213     virtual void STDMETHODCALLTYPE VideoProcessorSetStreamAlpha(
   10214         ID3D11VideoProcessor *processor,
   10215         UINT stream_idx,
   10216         WINBOOL enable,
   10217         float alpha) = 0;
   10218 
   10219     virtual void STDMETHODCALLTYPE VideoProcessorSetStreamPalette(
   10220         ID3D11VideoProcessor *processor,
   10221         UINT stream_idx,
   10222         UINT entry_count,
   10223         const UINT *entries) = 0;
   10224 
   10225     virtual void STDMETHODCALLTYPE VideoProcessorSetStreamPixelAspectRatio(
   10226         ID3D11VideoProcessor *processor,
   10227         UINT stream_idx,
   10228         WINBOOL enable,
   10229         const DXGI_RATIONAL *src_aspect_ratio,
   10230         const DXGI_RATIONAL *dst_aspect_ratio) = 0;
   10231 
   10232     virtual void STDMETHODCALLTYPE VideoProcessorSetStreamLumaKey(
   10233         ID3D11VideoProcessor *processor,
   10234         UINT stream_idx,
   10235         WINBOOL enable,
   10236         float lower,
   10237         float upper) = 0;
   10238 
   10239     virtual void STDMETHODCALLTYPE VideoProcessorSetStreamStereoFormat(
   10240         ID3D11VideoProcessor *processor,
   10241         UINT stream_idx,
   10242         WINBOOL enable,
   10243         D3D11_VIDEO_PROCESSOR_STEREO_FORMAT format,
   10244         WINBOOL left_view_frame0,
   10245         WINBOOL base_view_frame0,
   10246         D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE flip_mode,
   10247         int mono_offset) = 0;
   10248 
   10249     virtual void STDMETHODCALLTYPE VideoProcessorSetStreamAutoProcessingMode(
   10250         ID3D11VideoProcessor *processor,
   10251         UINT stream_idx,
   10252         WINBOOL enable) = 0;
   10253 
   10254     virtual void STDMETHODCALLTYPE VideoProcessorSetStreamFilter(
   10255         ID3D11VideoProcessor *processor,
   10256         UINT stream_idx,
   10257         D3D11_VIDEO_PROCESSOR_FILTER filter,
   10258         WINBOOL enable,
   10259         int level) = 0;
   10260 
   10261     virtual HRESULT STDMETHODCALLTYPE VideoProcessorSetStreamExtension(
   10262         ID3D11VideoProcessor *processor,
   10263         UINT stream_idx,
   10264         const GUID *guid,
   10265         UINT data_size,
   10266         void *data) = 0;
   10267 
   10268     virtual void STDMETHODCALLTYPE VideoProcessorGetStreamFrameFormat(
   10269         ID3D11VideoProcessor *processor,
   10270         UINT stream_idx,
   10271         D3D11_VIDEO_FRAME_FORMAT *format) = 0;
   10272 
   10273     virtual void STDMETHODCALLTYPE VideoProcessorGetStreamColorSpace(
   10274         ID3D11VideoProcessor *processor,
   10275         UINT stream_idx,
   10276         D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) = 0;
   10277 
   10278     virtual void STDMETHODCALLTYPE VideoProcessorGetStreamOutputRate(
   10279         ID3D11VideoProcessor *processor,
   10280         UINT stream_idx,
   10281         D3D11_VIDEO_PROCESSOR_OUTPUT_RATE *rate,
   10282         WINBOOL *repeat,
   10283         DXGI_RATIONAL *custom_rate) = 0;
   10284 
   10285     virtual void STDMETHODCALLTYPE VideoProcessorGetStreamSourceRect(
   10286         ID3D11VideoProcessor *processor,
   10287         UINT stream_idx,
   10288         WINBOOL *enabled,
   10289         RECT *rect) = 0;
   10290 
   10291     virtual void STDMETHODCALLTYPE VideoProcessorGetStreamDestRect(
   10292         ID3D11VideoProcessor *processor,
   10293         UINT stream_idx,
   10294         WINBOOL *enabled,
   10295         RECT *rect) = 0;
   10296 
   10297     virtual void STDMETHODCALLTYPE VideoProcessorGetStreamAlpha(
   10298         ID3D11VideoProcessor *processor,
   10299         UINT stream_idx,
   10300         WINBOOL *enabled,
   10301         float *alpha) = 0;
   10302 
   10303     virtual void STDMETHODCALLTYPE VideoProcessorGetStreamPalette(
   10304         ID3D11VideoProcessor *processor,
   10305         UINT stream_idx,
   10306         UINT entry_count,
   10307         UINT *entries) = 0;
   10308 
   10309     virtual void STDMETHODCALLTYPE VideoProcessorGetStreamPixelAspectRatio(
   10310         ID3D11VideoProcessor *processor,
   10311         UINT stream_idx,
   10312         WINBOOL *enabled,
   10313         DXGI_RATIONAL *src_aspect_ratio,
   10314         DXGI_RATIONAL *dst_aspect_ratio) = 0;
   10315 
   10316     virtual void STDMETHODCALLTYPE VideoProcessorGetStreamLumaKey(
   10317         ID3D11VideoProcessor *processor,
   10318         UINT stream_idx,
   10319         WINBOOL *enabled,
   10320         float *lower,
   10321         float *upper) = 0;
   10322 
   10323     virtual void STDMETHODCALLTYPE VideoProcessorGetStreamStereoFormat(
   10324         ID3D11VideoProcessor *processor,
   10325         UINT stream_idx,
   10326         WINBOOL *enabled,
   10327         D3D11_VIDEO_PROCESSOR_STEREO_FORMAT *format,
   10328         WINBOOL *left_view_frame0,
   10329         WINBOOL *base_view_frame0,
   10330         D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE *flip_mode,
   10331         int *mono_offset) = 0;
   10332 
   10333     virtual void STDMETHODCALLTYPE VideoProcessorGetStreamAutoProcessingMode(
   10334         ID3D11VideoProcessor *processor,
   10335         UINT stream_idx,
   10336         WINBOOL *enabled) = 0;
   10337 
   10338     virtual void STDMETHODCALLTYPE VideoProcessorGetStreamFilter(
   10339         ID3D11VideoProcessor *processor,
   10340         UINT stream_idx,
   10341         D3D11_VIDEO_PROCESSOR_FILTER filter,
   10342         WINBOOL *enabled,
   10343         int *level) = 0;
   10344 
   10345     virtual HRESULT STDMETHODCALLTYPE VideoProcessorGetStreamExtension(
   10346         ID3D11VideoProcessor *processor,
   10347         UINT stream_idx,
   10348         const GUID *guid,
   10349         UINT data_size,
   10350         void *data) = 0;
   10351 
   10352     virtual HRESULT STDMETHODCALLTYPE VideoProcessorBlt(
   10353         ID3D11VideoProcessor *processor,
   10354         ID3D11VideoProcessorOutputView *view,
   10355         UINT frame_idx,
   10356         UINT stream_count,
   10357         const D3D11_VIDEO_PROCESSOR_STREAM *streams) = 0;
   10358 
   10359     virtual HRESULT STDMETHODCALLTYPE NegotiateCryptoSessionKeyExchange(
   10360         ID3D11CryptoSession *session,
   10361         UINT data_size,
   10362         void *data) = 0;
   10363 
   10364     virtual void STDMETHODCALLTYPE EncryptionBlt(
   10365         ID3D11CryptoSession *session,
   10366         ID3D11Texture2D *src_surface,
   10367         ID3D11Texture2D *dst_surface,
   10368         UINT iv_size,
   10369         void *iv) = 0;
   10370 
   10371     virtual void STDMETHODCALLTYPE DecryptionBlt(
   10372         ID3D11CryptoSession *session,
   10373         ID3D11Texture2D *src_surface,
   10374         ID3D11Texture2D *dst_surface,
   10375         D3D11_ENCRYPTED_BLOCK_INFO *block_info,
   10376         UINT key_size,
   10377         const void *key,
   10378         UINT iv_size,
   10379         void *iv) = 0;
   10380 
   10381     virtual void STDMETHODCALLTYPE StartSessionKeyRefresh(
   10382         ID3D11CryptoSession *session,
   10383         UINT random_number_size,
   10384         void *random_number) = 0;
   10385 
   10386     virtual void STDMETHODCALLTYPE FinishSessionKeyRefresh(
   10387         ID3D11CryptoSession *session) = 0;
   10388 
   10389     virtual HRESULT STDMETHODCALLTYPE GetEncryptionBltKey(
   10390         ID3D11CryptoSession *session,
   10391         UINT key_size,
   10392         void *key) = 0;
   10393 
   10394     virtual HRESULT STDMETHODCALLTYPE NegotiateAuthenticatedChannelKeyExchange(
   10395         ID3D11AuthenticatedChannel *channel,
   10396         UINT data_size,
   10397         void *data) = 0;
   10398 
   10399     virtual HRESULT STDMETHODCALLTYPE QueryAuthenticatedChannel(
   10400         ID3D11AuthenticatedChannel *channel,
   10401         UINT input_size,
   10402         const void *input,
   10403         UINT output_size,
   10404         void *output) = 0;
   10405 
   10406     virtual HRESULT STDMETHODCALLTYPE ConfigureAuthenticatedChannel(
   10407         ID3D11AuthenticatedChannel *channel,
   10408         UINT input_size,
   10409         const void *input,
   10410         D3D11_AUTHENTICATED_CONFIGURE_OUTPUT *output) = 0;
   10411 
   10412     virtual void STDMETHODCALLTYPE VideoProcessorSetStreamRotation(
   10413         ID3D11VideoProcessor *processor,
   10414         UINT stream_idx,
   10415         WINBOOL enable,
   10416         D3D11_VIDEO_PROCESSOR_ROTATION rotation) = 0;
   10417 
   10418     virtual void STDMETHODCALLTYPE VideoProcessorGetStreamRotation(
   10419         ID3D11VideoProcessor *processor,
   10420         UINT stream_idx,
   10421         WINBOOL *enable,
   10422         D3D11_VIDEO_PROCESSOR_ROTATION *rotation) = 0;
   10423 
   10424 };
   10425 #ifdef __CRT_UUID_DECL
   10426 __CRT_UUID_DECL(ID3D11VideoContext, 0x61f21c45, 0x3c0e, 0x4a74, 0x9c,0xea, 0x67,0x10,0x0d,0x9a,0xd5,0xe4)
   10427 #endif
   10428 #else
   10429 typedef struct ID3D11VideoContextVtbl {
   10430     BEGIN_INTERFACE
   10431 
   10432     /*** IUnknown methods ***/
   10433     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   10434         ID3D11VideoContext* This,
   10435         REFIID riid,
   10436         void **ppvObject);
   10437 
   10438     ULONG (STDMETHODCALLTYPE *AddRef)(
   10439         ID3D11VideoContext* This);
   10440 
   10441     ULONG (STDMETHODCALLTYPE *Release)(
   10442         ID3D11VideoContext* This);
   10443 
   10444     /*** ID3D11DeviceChild methods ***/
   10445     void (STDMETHODCALLTYPE *GetDevice)(
   10446         ID3D11VideoContext* This,
   10447         ID3D11Device **ppDevice);
   10448 
   10449     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   10450         ID3D11VideoContext* This,
   10451         REFGUID guid,
   10452         UINT *pDataSize,
   10453         void *pData);
   10454 
   10455     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   10456         ID3D11VideoContext* This,
   10457         REFGUID guid,
   10458         UINT DataSize,
   10459         const void *pData);
   10460 
   10461     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   10462         ID3D11VideoContext* This,
   10463         REFGUID guid,
   10464         const IUnknown *pData);
   10465 
   10466     /*** ID3D11VideoContext methods ***/
   10467     HRESULT (STDMETHODCALLTYPE *GetDecoderBuffer)(
   10468         ID3D11VideoContext* This,
   10469         ID3D11VideoDecoder *decoder,
   10470         D3D11_VIDEO_DECODER_BUFFER_TYPE type,
   10471         UINT *buffer_size,
   10472         void **buffer);
   10473 
   10474     HRESULT (STDMETHODCALLTYPE *ReleaseDecoderBuffer)(
   10475         ID3D11VideoContext* This,
   10476         ID3D11VideoDecoder *decoder,
   10477         D3D11_VIDEO_DECODER_BUFFER_TYPE type);
   10478 
   10479     HRESULT (STDMETHODCALLTYPE *DecoderBeginFrame)(
   10480         ID3D11VideoContext* This,
   10481         ID3D11VideoDecoder *decoder,
   10482         ID3D11VideoDecoderOutputView *view,
   10483         UINT key_size,
   10484         const void *key);
   10485 
   10486     HRESULT (STDMETHODCALLTYPE *DecoderEndFrame)(
   10487         ID3D11VideoContext* This,
   10488         ID3D11VideoDecoder *decoder);
   10489 
   10490     HRESULT (STDMETHODCALLTYPE *SubmitDecoderBuffers)(
   10491         ID3D11VideoContext* This,
   10492         ID3D11VideoDecoder *decoder,
   10493         UINT buffers_count,
   10494         const D3D11_VIDEO_DECODER_BUFFER_DESC *buffer_desc);
   10495 
   10496     HRESULT (STDMETHODCALLTYPE *DecoderExtension)(
   10497         ID3D11VideoContext* This,
   10498         ID3D11VideoDecoder *decoder,
   10499         const D3D11_VIDEO_DECODER_EXTENSION *extension);
   10500 
   10501     void (STDMETHODCALLTYPE *VideoProcessorSetOutputTargetRect)(
   10502         ID3D11VideoContext* This,
   10503         ID3D11VideoProcessor *processor,
   10504         WINBOOL enable,
   10505         const RECT *rect);
   10506 
   10507     void (STDMETHODCALLTYPE *VideoProcessorSetOutputBackgroundColor)(
   10508         ID3D11VideoContext* This,
   10509         ID3D11VideoProcessor *processor,
   10510         WINBOOL y_cb_cr,
   10511         const D3D11_VIDEO_COLOR *color);
   10512 
   10513     void (STDMETHODCALLTYPE *VideoProcessorSetOutputColorSpace)(
   10514         ID3D11VideoContext* This,
   10515         ID3D11VideoProcessor *processor,
   10516         const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space);
   10517 
   10518     void (STDMETHODCALLTYPE *VideoProcessorSetOutputAlphaFillMode)(
   10519         ID3D11VideoContext* This,
   10520         ID3D11VideoProcessor *processor,
   10521         D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE alpha_fill_mode,
   10522         UINT stream_idx);
   10523 
   10524     void (STDMETHODCALLTYPE *VideoProcessorSetOutputConstriction)(
   10525         ID3D11VideoContext* This,
   10526         ID3D11VideoProcessor *processor,
   10527         WINBOOL enable,
   10528         SIZE size);
   10529 
   10530     void (STDMETHODCALLTYPE *VideoProcessorSetOutputStereoMode)(
   10531         ID3D11VideoContext* This,
   10532         ID3D11VideoProcessor *processor,
   10533         WINBOOL enable);
   10534 
   10535     HRESULT (STDMETHODCALLTYPE *VideoProcessorSetOutputExtension)(
   10536         ID3D11VideoContext* This,
   10537         ID3D11VideoProcessor *processor,
   10538         const GUID *guid,
   10539         UINT data_size,
   10540         void *data);
   10541 
   10542     void (STDMETHODCALLTYPE *VideoProcessorGetOutputTargetRect)(
   10543         ID3D11VideoContext* This,
   10544         ID3D11VideoProcessor *processor,
   10545         WINBOOL *enabled,
   10546         RECT *rect);
   10547 
   10548     void (STDMETHODCALLTYPE *VideoProcessorGetOutputBackgroundColor)(
   10549         ID3D11VideoContext* This,
   10550         ID3D11VideoProcessor *processor,
   10551         WINBOOL *y_cb_cr,
   10552         D3D11_VIDEO_COLOR *color);
   10553 
   10554     void (STDMETHODCALLTYPE *VideoProcessorGetOutputColorSpace)(
   10555         ID3D11VideoContext* This,
   10556         ID3D11VideoProcessor *processor,
   10557         D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space);
   10558 
   10559     void (STDMETHODCALLTYPE *VideoProcessorGetOutputAlphaFillMode)(
   10560         ID3D11VideoContext* This,
   10561         ID3D11VideoProcessor *processor,
   10562         D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE *alpha_fill_mode,
   10563         UINT *stream_idx);
   10564 
   10565     void (STDMETHODCALLTYPE *VideoProcessorGetOutputConstriction)(
   10566         ID3D11VideoContext* This,
   10567         ID3D11VideoProcessor *processor,
   10568         WINBOOL *enabled,
   10569         SIZE *size);
   10570 
   10571     void (STDMETHODCALLTYPE *VideoProcessorGetOutputStereoMode)(
   10572         ID3D11VideoContext* This,
   10573         ID3D11VideoProcessor *processor,
   10574         WINBOOL *enabled);
   10575 
   10576     HRESULT (STDMETHODCALLTYPE *VideoProcessorGetOutputExtension)(
   10577         ID3D11VideoContext* This,
   10578         ID3D11VideoProcessor *processor,
   10579         const GUID *guid,
   10580         UINT data_size,
   10581         void *data);
   10582 
   10583     void (STDMETHODCALLTYPE *VideoProcessorSetStreamFrameFormat)(
   10584         ID3D11VideoContext* This,
   10585         ID3D11VideoProcessor *processor,
   10586         UINT stream_idx,
   10587         D3D11_VIDEO_FRAME_FORMAT format);
   10588 
   10589     void (STDMETHODCALLTYPE *VideoProcessorSetStreamColorSpace)(
   10590         ID3D11VideoContext* This,
   10591         ID3D11VideoProcessor *processor,
   10592         UINT stream_idx,
   10593         const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space);
   10594 
   10595     void (STDMETHODCALLTYPE *VideoProcessorSetStreamOutputRate)(
   10596         ID3D11VideoContext* This,
   10597         ID3D11VideoProcessor *processor,
   10598         UINT stream_idx,
   10599         D3D11_VIDEO_PROCESSOR_OUTPUT_RATE rate,
   10600         WINBOOL repeat,
   10601         const DXGI_RATIONAL *custom_rate);
   10602 
   10603     void (STDMETHODCALLTYPE *VideoProcessorSetStreamSourceRect)(
   10604         ID3D11VideoContext* This,
   10605         ID3D11VideoProcessor *processor,
   10606         UINT stream_idx,
   10607         WINBOOL enable,
   10608         const RECT *rect);
   10609 
   10610     void (STDMETHODCALLTYPE *VideoProcessorSetStreamDestRect)(
   10611         ID3D11VideoContext* This,
   10612         ID3D11VideoProcessor *processor,
   10613         UINT stream_idx,
   10614         WINBOOL enable,
   10615         const RECT *rect);
   10616 
   10617     void (STDMETHODCALLTYPE *VideoProcessorSetStreamAlpha)(
   10618         ID3D11VideoContext* This,
   10619         ID3D11VideoProcessor *processor,
   10620         UINT stream_idx,
   10621         WINBOOL enable,
   10622         float alpha);
   10623 
   10624     void (STDMETHODCALLTYPE *VideoProcessorSetStreamPalette)(
   10625         ID3D11VideoContext* This,
   10626         ID3D11VideoProcessor *processor,
   10627         UINT stream_idx,
   10628         UINT entry_count,
   10629         const UINT *entries);
   10630 
   10631     void (STDMETHODCALLTYPE *VideoProcessorSetStreamPixelAspectRatio)(
   10632         ID3D11VideoContext* This,
   10633         ID3D11VideoProcessor *processor,
   10634         UINT stream_idx,
   10635         WINBOOL enable,
   10636         const DXGI_RATIONAL *src_aspect_ratio,
   10637         const DXGI_RATIONAL *dst_aspect_ratio);
   10638 
   10639     void (STDMETHODCALLTYPE *VideoProcessorSetStreamLumaKey)(
   10640         ID3D11VideoContext* This,
   10641         ID3D11VideoProcessor *processor,
   10642         UINT stream_idx,
   10643         WINBOOL enable,
   10644         float lower,
   10645         float upper);
   10646 
   10647     void (STDMETHODCALLTYPE *VideoProcessorSetStreamStereoFormat)(
   10648         ID3D11VideoContext* This,
   10649         ID3D11VideoProcessor *processor,
   10650         UINT stream_idx,
   10651         WINBOOL enable,
   10652         D3D11_VIDEO_PROCESSOR_STEREO_FORMAT format,
   10653         WINBOOL left_view_frame0,
   10654         WINBOOL base_view_frame0,
   10655         D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE flip_mode,
   10656         int mono_offset);
   10657 
   10658     void (STDMETHODCALLTYPE *VideoProcessorSetStreamAutoProcessingMode)(
   10659         ID3D11VideoContext* This,
   10660         ID3D11VideoProcessor *processor,
   10661         UINT stream_idx,
   10662         WINBOOL enable);
   10663 
   10664     void (STDMETHODCALLTYPE *VideoProcessorSetStreamFilter)(
   10665         ID3D11VideoContext* This,
   10666         ID3D11VideoProcessor *processor,
   10667         UINT stream_idx,
   10668         D3D11_VIDEO_PROCESSOR_FILTER filter,
   10669         WINBOOL enable,
   10670         int level);
   10671 
   10672     HRESULT (STDMETHODCALLTYPE *VideoProcessorSetStreamExtension)(
   10673         ID3D11VideoContext* This,
   10674         ID3D11VideoProcessor *processor,
   10675         UINT stream_idx,
   10676         const GUID *guid,
   10677         UINT data_size,
   10678         void *data);
   10679 
   10680     void (STDMETHODCALLTYPE *VideoProcessorGetStreamFrameFormat)(
   10681         ID3D11VideoContext* This,
   10682         ID3D11VideoProcessor *processor,
   10683         UINT stream_idx,
   10684         D3D11_VIDEO_FRAME_FORMAT *format);
   10685 
   10686     void (STDMETHODCALLTYPE *VideoProcessorGetStreamColorSpace)(
   10687         ID3D11VideoContext* This,
   10688         ID3D11VideoProcessor *processor,
   10689         UINT stream_idx,
   10690         D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space);
   10691 
   10692     void (STDMETHODCALLTYPE *VideoProcessorGetStreamOutputRate)(
   10693         ID3D11VideoContext* This,
   10694         ID3D11VideoProcessor *processor,
   10695         UINT stream_idx,
   10696         D3D11_VIDEO_PROCESSOR_OUTPUT_RATE *rate,
   10697         WINBOOL *repeat,
   10698         DXGI_RATIONAL *custom_rate);
   10699 
   10700     void (STDMETHODCALLTYPE *VideoProcessorGetStreamSourceRect)(
   10701         ID3D11VideoContext* This,
   10702         ID3D11VideoProcessor *processor,
   10703         UINT stream_idx,
   10704         WINBOOL *enabled,
   10705         RECT *rect);
   10706 
   10707     void (STDMETHODCALLTYPE *VideoProcessorGetStreamDestRect)(
   10708         ID3D11VideoContext* This,
   10709         ID3D11VideoProcessor *processor,
   10710         UINT stream_idx,
   10711         WINBOOL *enabled,
   10712         RECT *rect);
   10713 
   10714     void (STDMETHODCALLTYPE *VideoProcessorGetStreamAlpha)(
   10715         ID3D11VideoContext* This,
   10716         ID3D11VideoProcessor *processor,
   10717         UINT stream_idx,
   10718         WINBOOL *enabled,
   10719         float *alpha);
   10720 
   10721     void (STDMETHODCALLTYPE *VideoProcessorGetStreamPalette)(
   10722         ID3D11VideoContext* This,
   10723         ID3D11VideoProcessor *processor,
   10724         UINT stream_idx,
   10725         UINT entry_count,
   10726         UINT *entries);
   10727 
   10728     void (STDMETHODCALLTYPE *VideoProcessorGetStreamPixelAspectRatio)(
   10729         ID3D11VideoContext* This,
   10730         ID3D11VideoProcessor *processor,
   10731         UINT stream_idx,
   10732         WINBOOL *enabled,
   10733         DXGI_RATIONAL *src_aspect_ratio,
   10734         DXGI_RATIONAL *dst_aspect_ratio);
   10735 
   10736     void (STDMETHODCALLTYPE *VideoProcessorGetStreamLumaKey)(
   10737         ID3D11VideoContext* This,
   10738         ID3D11VideoProcessor *processor,
   10739         UINT stream_idx,
   10740         WINBOOL *enabled,
   10741         float *lower,
   10742         float *upper);
   10743 
   10744     void (STDMETHODCALLTYPE *VideoProcessorGetStreamStereoFormat)(
   10745         ID3D11VideoContext* This,
   10746         ID3D11VideoProcessor *processor,
   10747         UINT stream_idx,
   10748         WINBOOL *enabled,
   10749         D3D11_VIDEO_PROCESSOR_STEREO_FORMAT *format,
   10750         WINBOOL *left_view_frame0,
   10751         WINBOOL *base_view_frame0,
   10752         D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE *flip_mode,
   10753         int *mono_offset);
   10754 
   10755     void (STDMETHODCALLTYPE *VideoProcessorGetStreamAutoProcessingMode)(
   10756         ID3D11VideoContext* This,
   10757         ID3D11VideoProcessor *processor,
   10758         UINT stream_idx,
   10759         WINBOOL *enabled);
   10760 
   10761     void (STDMETHODCALLTYPE *VideoProcessorGetStreamFilter)(
   10762         ID3D11VideoContext* This,
   10763         ID3D11VideoProcessor *processor,
   10764         UINT stream_idx,
   10765         D3D11_VIDEO_PROCESSOR_FILTER filter,
   10766         WINBOOL *enabled,
   10767         int *level);
   10768 
   10769     HRESULT (STDMETHODCALLTYPE *VideoProcessorGetStreamExtension)(
   10770         ID3D11VideoContext* This,
   10771         ID3D11VideoProcessor *processor,
   10772         UINT stream_idx,
   10773         const GUID *guid,
   10774         UINT data_size,
   10775         void *data);
   10776 
   10777     HRESULT (STDMETHODCALLTYPE *VideoProcessorBlt)(
   10778         ID3D11VideoContext* This,
   10779         ID3D11VideoProcessor *processor,
   10780         ID3D11VideoProcessorOutputView *view,
   10781         UINT frame_idx,
   10782         UINT stream_count,
   10783         const D3D11_VIDEO_PROCESSOR_STREAM *streams);
   10784 
   10785     HRESULT (STDMETHODCALLTYPE *NegotiateCryptoSessionKeyExchange)(
   10786         ID3D11VideoContext* This,
   10787         ID3D11CryptoSession *session,
   10788         UINT data_size,
   10789         void *data);
   10790 
   10791     void (STDMETHODCALLTYPE *EncryptionBlt)(
   10792         ID3D11VideoContext* This,
   10793         ID3D11CryptoSession *session,
   10794         ID3D11Texture2D *src_surface,
   10795         ID3D11Texture2D *dst_surface,
   10796         UINT iv_size,
   10797         void *iv);
   10798 
   10799     void (STDMETHODCALLTYPE *DecryptionBlt)(
   10800         ID3D11VideoContext* This,
   10801         ID3D11CryptoSession *session,
   10802         ID3D11Texture2D *src_surface,
   10803         ID3D11Texture2D *dst_surface,
   10804         D3D11_ENCRYPTED_BLOCK_INFO *block_info,
   10805         UINT key_size,
   10806         const void *key,
   10807         UINT iv_size,
   10808         void *iv);
   10809 
   10810     void (STDMETHODCALLTYPE *StartSessionKeyRefresh)(
   10811         ID3D11VideoContext* This,
   10812         ID3D11CryptoSession *session,
   10813         UINT random_number_size,
   10814         void *random_number);
   10815 
   10816     void (STDMETHODCALLTYPE *FinishSessionKeyRefresh)(
   10817         ID3D11VideoContext* This,
   10818         ID3D11CryptoSession *session);
   10819 
   10820     HRESULT (STDMETHODCALLTYPE *GetEncryptionBltKey)(
   10821         ID3D11VideoContext* This,
   10822         ID3D11CryptoSession *session,
   10823         UINT key_size,
   10824         void *key);
   10825 
   10826     HRESULT (STDMETHODCALLTYPE *NegotiateAuthenticatedChannelKeyExchange)(
   10827         ID3D11VideoContext* This,
   10828         ID3D11AuthenticatedChannel *channel,
   10829         UINT data_size,
   10830         void *data);
   10831 
   10832     HRESULT (STDMETHODCALLTYPE *QueryAuthenticatedChannel)(
   10833         ID3D11VideoContext* This,
   10834         ID3D11AuthenticatedChannel *channel,
   10835         UINT input_size,
   10836         const void *input,
   10837         UINT output_size,
   10838         void *output);
   10839 
   10840     HRESULT (STDMETHODCALLTYPE *ConfigureAuthenticatedChannel)(
   10841         ID3D11VideoContext* This,
   10842         ID3D11AuthenticatedChannel *channel,
   10843         UINT input_size,
   10844         const void *input,
   10845         D3D11_AUTHENTICATED_CONFIGURE_OUTPUT *output);
   10846 
   10847     void (STDMETHODCALLTYPE *VideoProcessorSetStreamRotation)(
   10848         ID3D11VideoContext* This,
   10849         ID3D11VideoProcessor *processor,
   10850         UINT stream_idx,
   10851         WINBOOL enable,
   10852         D3D11_VIDEO_PROCESSOR_ROTATION rotation);
   10853 
   10854     void (STDMETHODCALLTYPE *VideoProcessorGetStreamRotation)(
   10855         ID3D11VideoContext* This,
   10856         ID3D11VideoProcessor *processor,
   10857         UINT stream_idx,
   10858         WINBOOL *enable,
   10859         D3D11_VIDEO_PROCESSOR_ROTATION *rotation);
   10860 
   10861     END_INTERFACE
   10862 } ID3D11VideoContextVtbl;
   10863 interface ID3D11VideoContext {
   10864     CONST_VTBL ID3D11VideoContextVtbl* lpVtbl;
   10865 };
   10866 
   10867 #ifdef COBJMACROS
   10868 #ifndef WIDL_C_INLINE_WRAPPERS
   10869 /*** IUnknown methods ***/
   10870 #define ID3D11VideoContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   10871 #define ID3D11VideoContext_AddRef(This) (This)->lpVtbl->AddRef(This)
   10872 #define ID3D11VideoContext_Release(This) (This)->lpVtbl->Release(This)
   10873 /*** ID3D11DeviceChild methods ***/
   10874 #define ID3D11VideoContext_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
   10875 #define ID3D11VideoContext_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   10876 #define ID3D11VideoContext_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   10877 #define ID3D11VideoContext_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   10878 /*** ID3D11VideoContext methods ***/
   10879 #define ID3D11VideoContext_GetDecoderBuffer(This,decoder,type,buffer_size,buffer) (This)->lpVtbl->GetDecoderBuffer(This,decoder,type,buffer_size,buffer)
   10880 #define ID3D11VideoContext_ReleaseDecoderBuffer(This,decoder,type) (This)->lpVtbl->ReleaseDecoderBuffer(This,decoder,type)
   10881 #define ID3D11VideoContext_DecoderBeginFrame(This,decoder,view,key_size,key) (This)->lpVtbl->DecoderBeginFrame(This,decoder,view,key_size,key)
   10882 #define ID3D11VideoContext_DecoderEndFrame(This,decoder) (This)->lpVtbl->DecoderEndFrame(This,decoder)
   10883 #define ID3D11VideoContext_SubmitDecoderBuffers(This,decoder,buffers_count,buffer_desc) (This)->lpVtbl->SubmitDecoderBuffers(This,decoder,buffers_count,buffer_desc)
   10884 #define ID3D11VideoContext_DecoderExtension(This,decoder,extension) (This)->lpVtbl->DecoderExtension(This,decoder,extension)
   10885 #define ID3D11VideoContext_VideoProcessorSetOutputTargetRect(This,processor,enable,rect) (This)->lpVtbl->VideoProcessorSetOutputTargetRect(This,processor,enable,rect)
   10886 #define ID3D11VideoContext_VideoProcessorSetOutputBackgroundColor(This,processor,y_cb_cr,color) (This)->lpVtbl->VideoProcessorSetOutputBackgroundColor(This,processor,y_cb_cr,color)
   10887 #define ID3D11VideoContext_VideoProcessorSetOutputColorSpace(This,processor,color_space) (This)->lpVtbl->VideoProcessorSetOutputColorSpace(This,processor,color_space)
   10888 #define ID3D11VideoContext_VideoProcessorSetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx) (This)->lpVtbl->VideoProcessorSetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx)
   10889 #define ID3D11VideoContext_VideoProcessorSetOutputConstriction(This,processor,enable,size) (This)->lpVtbl->VideoProcessorSetOutputConstriction(This,processor,enable,size)
   10890 #define ID3D11VideoContext_VideoProcessorSetOutputStereoMode(This,processor,enable) (This)->lpVtbl->VideoProcessorSetOutputStereoMode(This,processor,enable)
   10891 #define ID3D11VideoContext_VideoProcessorSetOutputExtension(This,processor,guid,data_size,data) (This)->lpVtbl->VideoProcessorSetOutputExtension(This,processor,guid,data_size,data)
   10892 #define ID3D11VideoContext_VideoProcessorGetOutputTargetRect(This,processor,enabled,rect) (This)->lpVtbl->VideoProcessorGetOutputTargetRect(This,processor,enabled,rect)
   10893 #define ID3D11VideoContext_VideoProcessorGetOutputBackgroundColor(This,processor,y_cb_cr,color) (This)->lpVtbl->VideoProcessorGetOutputBackgroundColor(This,processor,y_cb_cr,color)
   10894 #define ID3D11VideoContext_VideoProcessorGetOutputColorSpace(This,processor,color_space) (This)->lpVtbl->VideoProcessorGetOutputColorSpace(This,processor,color_space)
   10895 #define ID3D11VideoContext_VideoProcessorGetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx) (This)->lpVtbl->VideoProcessorGetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx)
   10896 #define ID3D11VideoContext_VideoProcessorGetOutputConstriction(This,processor,enabled,size) (This)->lpVtbl->VideoProcessorGetOutputConstriction(This,processor,enabled,size)
   10897 #define ID3D11VideoContext_VideoProcessorGetOutputStereoMode(This,processor,enabled) (This)->lpVtbl->VideoProcessorGetOutputStereoMode(This,processor,enabled)
   10898 #define ID3D11VideoContext_VideoProcessorGetOutputExtension(This,processor,guid,data_size,data) (This)->lpVtbl->VideoProcessorGetOutputExtension(This,processor,guid,data_size,data)
   10899 #define ID3D11VideoContext_VideoProcessorSetStreamFrameFormat(This,processor,stream_idx,format) (This)->lpVtbl->VideoProcessorSetStreamFrameFormat(This,processor,stream_idx,format)
   10900 #define ID3D11VideoContext_VideoProcessorSetStreamColorSpace(This,processor,stream_idx,color_space) (This)->lpVtbl->VideoProcessorSetStreamColorSpace(This,processor,stream_idx,color_space)
   10901 #define ID3D11VideoContext_VideoProcessorSetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate) (This)->lpVtbl->VideoProcessorSetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate)
   10902 #define ID3D11VideoContext_VideoProcessorSetStreamSourceRect(This,processor,stream_idx,enable,rect) (This)->lpVtbl->VideoProcessorSetStreamSourceRect(This,processor,stream_idx,enable,rect)
   10903 #define ID3D11VideoContext_VideoProcessorSetStreamDestRect(This,processor,stream_idx,enable,rect) (This)->lpVtbl->VideoProcessorSetStreamDestRect(This,processor,stream_idx,enable,rect)
   10904 #define ID3D11VideoContext_VideoProcessorSetStreamAlpha(This,processor,stream_idx,enable,alpha) (This)->lpVtbl->VideoProcessorSetStreamAlpha(This,processor,stream_idx,enable,alpha)
   10905 #define ID3D11VideoContext_VideoProcessorSetStreamPalette(This,processor,stream_idx,entry_count,entries) (This)->lpVtbl->VideoProcessorSetStreamPalette(This,processor,stream_idx,entry_count,entries)
   10906 #define ID3D11VideoContext_VideoProcessorSetStreamPixelAspectRatio(This,processor,stream_idx,enable,src_aspect_ratio,dst_aspect_ratio) (This)->lpVtbl->VideoProcessorSetStreamPixelAspectRatio(This,processor,stream_idx,enable,src_aspect_ratio,dst_aspect_ratio)
   10907 #define ID3D11VideoContext_VideoProcessorSetStreamLumaKey(This,processor,stream_idx,enable,lower,upper) (This)->lpVtbl->VideoProcessorSetStreamLumaKey(This,processor,stream_idx,enable,lower,upper)
   10908 #define ID3D11VideoContext_VideoProcessorSetStreamStereoFormat(This,processor,stream_idx,enable,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset) (This)->lpVtbl->VideoProcessorSetStreamStereoFormat(This,processor,stream_idx,enable,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset)
   10909 #define ID3D11VideoContext_VideoProcessorSetStreamAutoProcessingMode(This,processor,stream_idx,enable) (This)->lpVtbl->VideoProcessorSetStreamAutoProcessingMode(This,processor,stream_idx,enable)
   10910 #define ID3D11VideoContext_VideoProcessorSetStreamFilter(This,processor,stream_idx,filter,enable,level) (This)->lpVtbl->VideoProcessorSetStreamFilter(This,processor,stream_idx,filter,enable,level)
   10911 #define ID3D11VideoContext_VideoProcessorSetStreamExtension(This,processor,stream_idx,guid,data_size,data) (This)->lpVtbl->VideoProcessorSetStreamExtension(This,processor,stream_idx,guid,data_size,data)
   10912 #define ID3D11VideoContext_VideoProcessorGetStreamFrameFormat(This,processor,stream_idx,format) (This)->lpVtbl->VideoProcessorGetStreamFrameFormat(This,processor,stream_idx,format)
   10913 #define ID3D11VideoContext_VideoProcessorGetStreamColorSpace(This,processor,stream_idx,color_space) (This)->lpVtbl->VideoProcessorGetStreamColorSpace(This,processor,stream_idx,color_space)
   10914 #define ID3D11VideoContext_VideoProcessorGetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate) (This)->lpVtbl->VideoProcessorGetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate)
   10915 #define ID3D11VideoContext_VideoProcessorGetStreamSourceRect(This,processor,stream_idx,enabled,rect) (This)->lpVtbl->VideoProcessorGetStreamSourceRect(This,processor,stream_idx,enabled,rect)
   10916 #define ID3D11VideoContext_VideoProcessorGetStreamDestRect(This,processor,stream_idx,enabled,rect) (This)->lpVtbl->VideoProcessorGetStreamDestRect(This,processor,stream_idx,enabled,rect)
   10917 #define ID3D11VideoContext_VideoProcessorGetStreamAlpha(This,processor,stream_idx,enabled,alpha) (This)->lpVtbl->VideoProcessorGetStreamAlpha(This,processor,stream_idx,enabled,alpha)
   10918 #define ID3D11VideoContext_VideoProcessorGetStreamPalette(This,processor,stream_idx,entry_count,entries) (This)->lpVtbl->VideoProcessorGetStreamPalette(This,processor,stream_idx,entry_count,entries)
   10919 #define ID3D11VideoContext_VideoProcessorGetStreamPixelAspectRatio(This,processor,stream_idx,enabled,src_aspect_ratio,dst_aspect_ratio) (This)->lpVtbl->VideoProcessorGetStreamPixelAspectRatio(This,processor,stream_idx,enabled,src_aspect_ratio,dst_aspect_ratio)
   10920 #define ID3D11VideoContext_VideoProcessorGetStreamLumaKey(This,processor,stream_idx,enabled,lower,upper) (This)->lpVtbl->VideoProcessorGetStreamLumaKey(This,processor,stream_idx,enabled,lower,upper)
   10921 #define ID3D11VideoContext_VideoProcessorGetStreamStereoFormat(This,processor,stream_idx,enabled,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset) (This)->lpVtbl->VideoProcessorGetStreamStereoFormat(This,processor,stream_idx,enabled,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset)
   10922 #define ID3D11VideoContext_VideoProcessorGetStreamAutoProcessingMode(This,processor,stream_idx,enabled) (This)->lpVtbl->VideoProcessorGetStreamAutoProcessingMode(This,processor,stream_idx,enabled)
   10923 #define ID3D11VideoContext_VideoProcessorGetStreamFilter(This,processor,stream_idx,filter,enabled,level) (This)->lpVtbl->VideoProcessorGetStreamFilter(This,processor,stream_idx,filter,enabled,level)
   10924 #define ID3D11VideoContext_VideoProcessorGetStreamExtension(This,processor,stream_idx,guid,data_size,data) (This)->lpVtbl->VideoProcessorGetStreamExtension(This,processor,stream_idx,guid,data_size,data)
   10925 #define ID3D11VideoContext_VideoProcessorBlt(This,processor,view,frame_idx,stream_count,streams) (This)->lpVtbl->VideoProcessorBlt(This,processor,view,frame_idx,stream_count,streams)
   10926 #define ID3D11VideoContext_NegotiateCryptoSessionKeyExchange(This,session,data_size,data) (This)->lpVtbl->NegotiateCryptoSessionKeyExchange(This,session,data_size,data)
   10927 #define ID3D11VideoContext_EncryptionBlt(This,session,src_surface,dst_surface,iv_size,iv) (This)->lpVtbl->EncryptionBlt(This,session,src_surface,dst_surface,iv_size,iv)
   10928 #define ID3D11VideoContext_DecryptionBlt(This,session,src_surface,dst_surface,block_info,key_size,key,iv_size,iv) (This)->lpVtbl->DecryptionBlt(This,session,src_surface,dst_surface,block_info,key_size,key,iv_size,iv)
   10929 #define ID3D11VideoContext_StartSessionKeyRefresh(This,session,random_number_size,random_number) (This)->lpVtbl->StartSessionKeyRefresh(This,session,random_number_size,random_number)
   10930 #define ID3D11VideoContext_FinishSessionKeyRefresh(This,session) (This)->lpVtbl->FinishSessionKeyRefresh(This,session)
   10931 #define ID3D11VideoContext_GetEncryptionBltKey(This,session,key_size,key) (This)->lpVtbl->GetEncryptionBltKey(This,session,key_size,key)
   10932 #define ID3D11VideoContext_NegotiateAuthenticatedChannelKeyExchange(This,channel,data_size,data) (This)->lpVtbl->NegotiateAuthenticatedChannelKeyExchange(This,channel,data_size,data)
   10933 #define ID3D11VideoContext_QueryAuthenticatedChannel(This,channel,input_size,input,output_size,output) (This)->lpVtbl->QueryAuthenticatedChannel(This,channel,input_size,input,output_size,output)
   10934 #define ID3D11VideoContext_ConfigureAuthenticatedChannel(This,channel,input_size,input,output) (This)->lpVtbl->ConfigureAuthenticatedChannel(This,channel,input_size,input,output)
   10935 #define ID3D11VideoContext_VideoProcessorSetStreamRotation(This,processor,stream_idx,enable,rotation) (This)->lpVtbl->VideoProcessorSetStreamRotation(This,processor,stream_idx,enable,rotation)
   10936 #define ID3D11VideoContext_VideoProcessorGetStreamRotation(This,processor,stream_idx,enable,rotation) (This)->lpVtbl->VideoProcessorGetStreamRotation(This,processor,stream_idx,enable,rotation)
   10937 #else
   10938 /*** IUnknown methods ***/
   10939 static FORCEINLINE HRESULT ID3D11VideoContext_QueryInterface(ID3D11VideoContext* This,REFIID riid,void **ppvObject) {
   10940     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   10941 }
   10942 static FORCEINLINE ULONG ID3D11VideoContext_AddRef(ID3D11VideoContext* This) {
   10943     return This->lpVtbl->AddRef(This);
   10944 }
   10945 static FORCEINLINE ULONG ID3D11VideoContext_Release(ID3D11VideoContext* This) {
   10946     return This->lpVtbl->Release(This);
   10947 }
   10948 /*** ID3D11DeviceChild methods ***/
   10949 static FORCEINLINE void ID3D11VideoContext_GetDevice(ID3D11VideoContext* This,ID3D11Device **ppDevice) {
   10950     This->lpVtbl->GetDevice(This,ppDevice);
   10951 }
   10952 static FORCEINLINE HRESULT ID3D11VideoContext_GetPrivateData(ID3D11VideoContext* This,REFGUID guid,UINT *pDataSize,void *pData) {
   10953     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   10954 }
   10955 static FORCEINLINE HRESULT ID3D11VideoContext_SetPrivateData(ID3D11VideoContext* This,REFGUID guid,UINT DataSize,const void *pData) {
   10956     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   10957 }
   10958 static FORCEINLINE HRESULT ID3D11VideoContext_SetPrivateDataInterface(ID3D11VideoContext* This,REFGUID guid,const IUnknown *pData) {
   10959     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   10960 }
   10961 /*** ID3D11VideoContext methods ***/
   10962 static FORCEINLINE HRESULT ID3D11VideoContext_GetDecoderBuffer(ID3D11VideoContext* This,ID3D11VideoDecoder *decoder,D3D11_VIDEO_DECODER_BUFFER_TYPE type,UINT *buffer_size,void **buffer) {
   10963     return This->lpVtbl->GetDecoderBuffer(This,decoder,type,buffer_size,buffer);
   10964 }
   10965 static FORCEINLINE HRESULT ID3D11VideoContext_ReleaseDecoderBuffer(ID3D11VideoContext* This,ID3D11VideoDecoder *decoder,D3D11_VIDEO_DECODER_BUFFER_TYPE type) {
   10966     return This->lpVtbl->ReleaseDecoderBuffer(This,decoder,type);
   10967 }
   10968 static FORCEINLINE HRESULT ID3D11VideoContext_DecoderBeginFrame(ID3D11VideoContext* This,ID3D11VideoDecoder *decoder,ID3D11VideoDecoderOutputView *view,UINT key_size,const void *key) {
   10969     return This->lpVtbl->DecoderBeginFrame(This,decoder,view,key_size,key);
   10970 }
   10971 static FORCEINLINE HRESULT ID3D11VideoContext_DecoderEndFrame(ID3D11VideoContext* This,ID3D11VideoDecoder *decoder) {
   10972     return This->lpVtbl->DecoderEndFrame(This,decoder);
   10973 }
   10974 static FORCEINLINE HRESULT ID3D11VideoContext_SubmitDecoderBuffers(ID3D11VideoContext* This,ID3D11VideoDecoder *decoder,UINT buffers_count,const D3D11_VIDEO_DECODER_BUFFER_DESC *buffer_desc) {
   10975     return This->lpVtbl->SubmitDecoderBuffers(This,decoder,buffers_count,buffer_desc);
   10976 }
   10977 static FORCEINLINE HRESULT ID3D11VideoContext_DecoderExtension(ID3D11VideoContext* This,ID3D11VideoDecoder *decoder,const D3D11_VIDEO_DECODER_EXTENSION *extension) {
   10978     return This->lpVtbl->DecoderExtension(This,decoder,extension);
   10979 }
   10980 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetOutputTargetRect(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,WINBOOL enable,const RECT *rect) {
   10981     This->lpVtbl->VideoProcessorSetOutputTargetRect(This,processor,enable,rect);
   10982 }
   10983 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetOutputBackgroundColor(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,WINBOOL y_cb_cr,const D3D11_VIDEO_COLOR *color) {
   10984     This->lpVtbl->VideoProcessorSetOutputBackgroundColor(This,processor,y_cb_cr,color);
   10985 }
   10986 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetOutputColorSpace(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) {
   10987     This->lpVtbl->VideoProcessorSetOutputColorSpace(This,processor,color_space);
   10988 }
   10989 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetOutputAlphaFillMode(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE alpha_fill_mode,UINT stream_idx) {
   10990     This->lpVtbl->VideoProcessorSetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx);
   10991 }
   10992 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetOutputConstriction(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,WINBOOL enable,SIZE size) {
   10993     This->lpVtbl->VideoProcessorSetOutputConstriction(This,processor,enable,size);
   10994 }
   10995 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetOutputStereoMode(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,WINBOOL enable) {
   10996     This->lpVtbl->VideoProcessorSetOutputStereoMode(This,processor,enable);
   10997 }
   10998 static FORCEINLINE HRESULT ID3D11VideoContext_VideoProcessorSetOutputExtension(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,const GUID *guid,UINT data_size,void *data) {
   10999     return This->lpVtbl->VideoProcessorSetOutputExtension(This,processor,guid,data_size,data);
   11000 }
   11001 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetOutputTargetRect(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,WINBOOL *enabled,RECT *rect) {
   11002     This->lpVtbl->VideoProcessorGetOutputTargetRect(This,processor,enabled,rect);
   11003 }
   11004 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetOutputBackgroundColor(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,WINBOOL *y_cb_cr,D3D11_VIDEO_COLOR *color) {
   11005     This->lpVtbl->VideoProcessorGetOutputBackgroundColor(This,processor,y_cb_cr,color);
   11006 }
   11007 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetOutputColorSpace(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) {
   11008     This->lpVtbl->VideoProcessorGetOutputColorSpace(This,processor,color_space);
   11009 }
   11010 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetOutputAlphaFillMode(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE *alpha_fill_mode,UINT *stream_idx) {
   11011     This->lpVtbl->VideoProcessorGetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx);
   11012 }
   11013 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetOutputConstriction(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,WINBOOL *enabled,SIZE *size) {
   11014     This->lpVtbl->VideoProcessorGetOutputConstriction(This,processor,enabled,size);
   11015 }
   11016 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetOutputStereoMode(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,WINBOOL *enabled) {
   11017     This->lpVtbl->VideoProcessorGetOutputStereoMode(This,processor,enabled);
   11018 }
   11019 static FORCEINLINE HRESULT ID3D11VideoContext_VideoProcessorGetOutputExtension(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,const GUID *guid,UINT data_size,void *data) {
   11020     return This->lpVtbl->VideoProcessorGetOutputExtension(This,processor,guid,data_size,data);
   11021 }
   11022 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamFrameFormat(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_FRAME_FORMAT format) {
   11023     This->lpVtbl->VideoProcessorSetStreamFrameFormat(This,processor,stream_idx,format);
   11024 }
   11025 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamColorSpace(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) {
   11026     This->lpVtbl->VideoProcessorSetStreamColorSpace(This,processor,stream_idx,color_space);
   11027 }
   11028 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamOutputRate(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_OUTPUT_RATE rate,WINBOOL repeat,const DXGI_RATIONAL *custom_rate) {
   11029     This->lpVtbl->VideoProcessorSetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate);
   11030 }
   11031 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamSourceRect(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,const RECT *rect) {
   11032     This->lpVtbl->VideoProcessorSetStreamSourceRect(This,processor,stream_idx,enable,rect);
   11033 }
   11034 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamDestRect(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,const RECT *rect) {
   11035     This->lpVtbl->VideoProcessorSetStreamDestRect(This,processor,stream_idx,enable,rect);
   11036 }
   11037 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamAlpha(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,float alpha) {
   11038     This->lpVtbl->VideoProcessorSetStreamAlpha(This,processor,stream_idx,enable,alpha);
   11039 }
   11040 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamPalette(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,UINT entry_count,const UINT *entries) {
   11041     This->lpVtbl->VideoProcessorSetStreamPalette(This,processor,stream_idx,entry_count,entries);
   11042 }
   11043 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamPixelAspectRatio(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,const DXGI_RATIONAL *src_aspect_ratio,const DXGI_RATIONAL *dst_aspect_ratio) {
   11044     This->lpVtbl->VideoProcessorSetStreamPixelAspectRatio(This,processor,stream_idx,enable,src_aspect_ratio,dst_aspect_ratio);
   11045 }
   11046 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamLumaKey(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,float lower,float upper) {
   11047     This->lpVtbl->VideoProcessorSetStreamLumaKey(This,processor,stream_idx,enable,lower,upper);
   11048 }
   11049 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamStereoFormat(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,D3D11_VIDEO_PROCESSOR_STEREO_FORMAT format,WINBOOL left_view_frame0,WINBOOL base_view_frame0,D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE flip_mode,int mono_offset) {
   11050     This->lpVtbl->VideoProcessorSetStreamStereoFormat(This,processor,stream_idx,enable,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset);
   11051 }
   11052 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamAutoProcessingMode(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable) {
   11053     This->lpVtbl->VideoProcessorSetStreamAutoProcessingMode(This,processor,stream_idx,enable);
   11054 }
   11055 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamFilter(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_FILTER filter,WINBOOL enable,int level) {
   11056     This->lpVtbl->VideoProcessorSetStreamFilter(This,processor,stream_idx,filter,enable,level);
   11057 }
   11058 static FORCEINLINE HRESULT ID3D11VideoContext_VideoProcessorSetStreamExtension(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,const GUID *guid,UINT data_size,void *data) {
   11059     return This->lpVtbl->VideoProcessorSetStreamExtension(This,processor,stream_idx,guid,data_size,data);
   11060 }
   11061 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamFrameFormat(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_FRAME_FORMAT *format) {
   11062     This->lpVtbl->VideoProcessorGetStreamFrameFormat(This,processor,stream_idx,format);
   11063 }
   11064 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamColorSpace(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) {
   11065     This->lpVtbl->VideoProcessorGetStreamColorSpace(This,processor,stream_idx,color_space);
   11066 }
   11067 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamOutputRate(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_OUTPUT_RATE *rate,WINBOOL *repeat,DXGI_RATIONAL *custom_rate) {
   11068     This->lpVtbl->VideoProcessorGetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate);
   11069 }
   11070 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamSourceRect(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,RECT *rect) {
   11071     This->lpVtbl->VideoProcessorGetStreamSourceRect(This,processor,stream_idx,enabled,rect);
   11072 }
   11073 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamDestRect(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,RECT *rect) {
   11074     This->lpVtbl->VideoProcessorGetStreamDestRect(This,processor,stream_idx,enabled,rect);
   11075 }
   11076 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamAlpha(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,float *alpha) {
   11077     This->lpVtbl->VideoProcessorGetStreamAlpha(This,processor,stream_idx,enabled,alpha);
   11078 }
   11079 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamPalette(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,UINT entry_count,UINT *entries) {
   11080     This->lpVtbl->VideoProcessorGetStreamPalette(This,processor,stream_idx,entry_count,entries);
   11081 }
   11082 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamPixelAspectRatio(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,DXGI_RATIONAL *src_aspect_ratio,DXGI_RATIONAL *dst_aspect_ratio) {
   11083     This->lpVtbl->VideoProcessorGetStreamPixelAspectRatio(This,processor,stream_idx,enabled,src_aspect_ratio,dst_aspect_ratio);
   11084 }
   11085 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamLumaKey(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,float *lower,float *upper) {
   11086     This->lpVtbl->VideoProcessorGetStreamLumaKey(This,processor,stream_idx,enabled,lower,upper);
   11087 }
   11088 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamStereoFormat(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,D3D11_VIDEO_PROCESSOR_STEREO_FORMAT *format,WINBOOL *left_view_frame0,WINBOOL *base_view_frame0,D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE *flip_mode,int *mono_offset) {
   11089     This->lpVtbl->VideoProcessorGetStreamStereoFormat(This,processor,stream_idx,enabled,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset);
   11090 }
   11091 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamAutoProcessingMode(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled) {
   11092     This->lpVtbl->VideoProcessorGetStreamAutoProcessingMode(This,processor,stream_idx,enabled);
   11093 }
   11094 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamFilter(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_FILTER filter,WINBOOL *enabled,int *level) {
   11095     This->lpVtbl->VideoProcessorGetStreamFilter(This,processor,stream_idx,filter,enabled,level);
   11096 }
   11097 static FORCEINLINE HRESULT ID3D11VideoContext_VideoProcessorGetStreamExtension(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,const GUID *guid,UINT data_size,void *data) {
   11098     return This->lpVtbl->VideoProcessorGetStreamExtension(This,processor,stream_idx,guid,data_size,data);
   11099 }
   11100 static FORCEINLINE HRESULT ID3D11VideoContext_VideoProcessorBlt(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,ID3D11VideoProcessorOutputView *view,UINT frame_idx,UINT stream_count,const D3D11_VIDEO_PROCESSOR_STREAM *streams) {
   11101     return This->lpVtbl->VideoProcessorBlt(This,processor,view,frame_idx,stream_count,streams);
   11102 }
   11103 static FORCEINLINE HRESULT ID3D11VideoContext_NegotiateCryptoSessionKeyExchange(ID3D11VideoContext* This,ID3D11CryptoSession *session,UINT data_size,void *data) {
   11104     return This->lpVtbl->NegotiateCryptoSessionKeyExchange(This,session,data_size,data);
   11105 }
   11106 static FORCEINLINE void ID3D11VideoContext_EncryptionBlt(ID3D11VideoContext* This,ID3D11CryptoSession *session,ID3D11Texture2D *src_surface,ID3D11Texture2D *dst_surface,UINT iv_size,void *iv) {
   11107     This->lpVtbl->EncryptionBlt(This,session,src_surface,dst_surface,iv_size,iv);
   11108 }
   11109 static FORCEINLINE void ID3D11VideoContext_DecryptionBlt(ID3D11VideoContext* This,ID3D11CryptoSession *session,ID3D11Texture2D *src_surface,ID3D11Texture2D *dst_surface,D3D11_ENCRYPTED_BLOCK_INFO *block_info,UINT key_size,const void *key,UINT iv_size,void *iv) {
   11110     This->lpVtbl->DecryptionBlt(This,session,src_surface,dst_surface,block_info,key_size,key,iv_size,iv);
   11111 }
   11112 static FORCEINLINE void ID3D11VideoContext_StartSessionKeyRefresh(ID3D11VideoContext* This,ID3D11CryptoSession *session,UINT random_number_size,void *random_number) {
   11113     This->lpVtbl->StartSessionKeyRefresh(This,session,random_number_size,random_number);
   11114 }
   11115 static FORCEINLINE void ID3D11VideoContext_FinishSessionKeyRefresh(ID3D11VideoContext* This,ID3D11CryptoSession *session) {
   11116     This->lpVtbl->FinishSessionKeyRefresh(This,session);
   11117 }
   11118 static FORCEINLINE HRESULT ID3D11VideoContext_GetEncryptionBltKey(ID3D11VideoContext* This,ID3D11CryptoSession *session,UINT key_size,void *key) {
   11119     return This->lpVtbl->GetEncryptionBltKey(This,session,key_size,key);
   11120 }
   11121 static FORCEINLINE HRESULT ID3D11VideoContext_NegotiateAuthenticatedChannelKeyExchange(ID3D11VideoContext* This,ID3D11AuthenticatedChannel *channel,UINT data_size,void *data) {
   11122     return This->lpVtbl->NegotiateAuthenticatedChannelKeyExchange(This,channel,data_size,data);
   11123 }
   11124 static FORCEINLINE HRESULT ID3D11VideoContext_QueryAuthenticatedChannel(ID3D11VideoContext* This,ID3D11AuthenticatedChannel *channel,UINT input_size,const void *input,UINT output_size,void *output) {
   11125     return This->lpVtbl->QueryAuthenticatedChannel(This,channel,input_size,input,output_size,output);
   11126 }
   11127 static FORCEINLINE HRESULT ID3D11VideoContext_ConfigureAuthenticatedChannel(ID3D11VideoContext* This,ID3D11AuthenticatedChannel *channel,UINT input_size,const void *input,D3D11_AUTHENTICATED_CONFIGURE_OUTPUT *output) {
   11128     return This->lpVtbl->ConfigureAuthenticatedChannel(This,channel,input_size,input,output);
   11129 }
   11130 static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamRotation(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,D3D11_VIDEO_PROCESSOR_ROTATION rotation) {
   11131     This->lpVtbl->VideoProcessorSetStreamRotation(This,processor,stream_idx,enable,rotation);
   11132 }
   11133 static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamRotation(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enable,D3D11_VIDEO_PROCESSOR_ROTATION *rotation) {
   11134     This->lpVtbl->VideoProcessorGetStreamRotation(This,processor,stream_idx,enable,rotation);
   11135 }
   11136 #endif
   11137 #endif
   11138 
   11139 #endif
   11140 
   11141 HRESULT STDMETHODCALLTYPE ID3D11VideoContext_GetDecoderBuffer_Proxy(
   11142     ID3D11VideoContext* This,
   11143     ID3D11VideoDecoder *decoder,
   11144     D3D11_VIDEO_DECODER_BUFFER_TYPE type,
   11145     UINT *buffer_size,
   11146     void **buffer);
   11147 void __RPC_STUB ID3D11VideoContext_GetDecoderBuffer_Stub(
   11148     IRpcStubBuffer* This,
   11149     IRpcChannelBuffer* pRpcChannelBuffer,
   11150     PRPC_MESSAGE pRpcMessage,
   11151     DWORD* pdwStubPhase);
   11152 HRESULT STDMETHODCALLTYPE ID3D11VideoContext_ReleaseDecoderBuffer_Proxy(
   11153     ID3D11VideoContext* This,
   11154     ID3D11VideoDecoder *decoder,
   11155     D3D11_VIDEO_DECODER_BUFFER_TYPE type);
   11156 void __RPC_STUB ID3D11VideoContext_ReleaseDecoderBuffer_Stub(
   11157     IRpcStubBuffer* This,
   11158     IRpcChannelBuffer* pRpcChannelBuffer,
   11159     PRPC_MESSAGE pRpcMessage,
   11160     DWORD* pdwStubPhase);
   11161 HRESULT STDMETHODCALLTYPE ID3D11VideoContext_DecoderBeginFrame_Proxy(
   11162     ID3D11VideoContext* This,
   11163     ID3D11VideoDecoder *decoder,
   11164     ID3D11VideoDecoderOutputView *view,
   11165     UINT key_size,
   11166     const void *key);
   11167 void __RPC_STUB ID3D11VideoContext_DecoderBeginFrame_Stub(
   11168     IRpcStubBuffer* This,
   11169     IRpcChannelBuffer* pRpcChannelBuffer,
   11170     PRPC_MESSAGE pRpcMessage,
   11171     DWORD* pdwStubPhase);
   11172 HRESULT STDMETHODCALLTYPE ID3D11VideoContext_DecoderEndFrame_Proxy(
   11173     ID3D11VideoContext* This,
   11174     ID3D11VideoDecoder *decoder);
   11175 void __RPC_STUB ID3D11VideoContext_DecoderEndFrame_Stub(
   11176     IRpcStubBuffer* This,
   11177     IRpcChannelBuffer* pRpcChannelBuffer,
   11178     PRPC_MESSAGE pRpcMessage,
   11179     DWORD* pdwStubPhase);
   11180 HRESULT STDMETHODCALLTYPE ID3D11VideoContext_SubmitDecoderBuffers_Proxy(
   11181     ID3D11VideoContext* This,
   11182     ID3D11VideoDecoder *decoder,
   11183     UINT buffers_count,
   11184     const D3D11_VIDEO_DECODER_BUFFER_DESC *buffer_desc);
   11185 void __RPC_STUB ID3D11VideoContext_SubmitDecoderBuffers_Stub(
   11186     IRpcStubBuffer* This,
   11187     IRpcChannelBuffer* pRpcChannelBuffer,
   11188     PRPC_MESSAGE pRpcMessage,
   11189     DWORD* pdwStubPhase);
   11190 HRESULT STDMETHODCALLTYPE ID3D11VideoContext_DecoderExtension_Proxy(
   11191     ID3D11VideoContext* This,
   11192     ID3D11VideoDecoder *decoder,
   11193     const D3D11_VIDEO_DECODER_EXTENSION *extension);
   11194 void __RPC_STUB ID3D11VideoContext_DecoderExtension_Stub(
   11195     IRpcStubBuffer* This,
   11196     IRpcChannelBuffer* pRpcChannelBuffer,
   11197     PRPC_MESSAGE pRpcMessage,
   11198     DWORD* pdwStubPhase);
   11199 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetOutputTargetRect_Proxy(
   11200     ID3D11VideoContext* This,
   11201     ID3D11VideoProcessor *processor,
   11202     WINBOOL enable,
   11203     const RECT *rect);
   11204 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetOutputTargetRect_Stub(
   11205     IRpcStubBuffer* This,
   11206     IRpcChannelBuffer* pRpcChannelBuffer,
   11207     PRPC_MESSAGE pRpcMessage,
   11208     DWORD* pdwStubPhase);
   11209 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetOutputBackgroundColor_Proxy(
   11210     ID3D11VideoContext* This,
   11211     ID3D11VideoProcessor *processor,
   11212     WINBOOL y_cb_cr,
   11213     const D3D11_VIDEO_COLOR *color);
   11214 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetOutputBackgroundColor_Stub(
   11215     IRpcStubBuffer* This,
   11216     IRpcChannelBuffer* pRpcChannelBuffer,
   11217     PRPC_MESSAGE pRpcMessage,
   11218     DWORD* pdwStubPhase);
   11219 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetOutputColorSpace_Proxy(
   11220     ID3D11VideoContext* This,
   11221     ID3D11VideoProcessor *processor,
   11222     const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space);
   11223 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetOutputColorSpace_Stub(
   11224     IRpcStubBuffer* This,
   11225     IRpcChannelBuffer* pRpcChannelBuffer,
   11226     PRPC_MESSAGE pRpcMessage,
   11227     DWORD* pdwStubPhase);
   11228 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetOutputAlphaFillMode_Proxy(
   11229     ID3D11VideoContext* This,
   11230     ID3D11VideoProcessor *processor,
   11231     D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE alpha_fill_mode,
   11232     UINT stream_idx);
   11233 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetOutputAlphaFillMode_Stub(
   11234     IRpcStubBuffer* This,
   11235     IRpcChannelBuffer* pRpcChannelBuffer,
   11236     PRPC_MESSAGE pRpcMessage,
   11237     DWORD* pdwStubPhase);
   11238 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetOutputConstriction_Proxy(
   11239     ID3D11VideoContext* This,
   11240     ID3D11VideoProcessor *processor,
   11241     WINBOOL enable,
   11242     SIZE size);
   11243 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetOutputConstriction_Stub(
   11244     IRpcStubBuffer* This,
   11245     IRpcChannelBuffer* pRpcChannelBuffer,
   11246     PRPC_MESSAGE pRpcMessage,
   11247     DWORD* pdwStubPhase);
   11248 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetOutputStereoMode_Proxy(
   11249     ID3D11VideoContext* This,
   11250     ID3D11VideoProcessor *processor,
   11251     WINBOOL enable);
   11252 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetOutputStereoMode_Stub(
   11253     IRpcStubBuffer* This,
   11254     IRpcChannelBuffer* pRpcChannelBuffer,
   11255     PRPC_MESSAGE pRpcMessage,
   11256     DWORD* pdwStubPhase);
   11257 HRESULT STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetOutputExtension_Proxy(
   11258     ID3D11VideoContext* This,
   11259     ID3D11VideoProcessor *processor,
   11260     const GUID *guid,
   11261     UINT data_size,
   11262     void *data);
   11263 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetOutputExtension_Stub(
   11264     IRpcStubBuffer* This,
   11265     IRpcChannelBuffer* pRpcChannelBuffer,
   11266     PRPC_MESSAGE pRpcMessage,
   11267     DWORD* pdwStubPhase);
   11268 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetOutputTargetRect_Proxy(
   11269     ID3D11VideoContext* This,
   11270     ID3D11VideoProcessor *processor,
   11271     WINBOOL *enabled,
   11272     RECT *rect);
   11273 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetOutputTargetRect_Stub(
   11274     IRpcStubBuffer* This,
   11275     IRpcChannelBuffer* pRpcChannelBuffer,
   11276     PRPC_MESSAGE pRpcMessage,
   11277     DWORD* pdwStubPhase);
   11278 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetOutputBackgroundColor_Proxy(
   11279     ID3D11VideoContext* This,
   11280     ID3D11VideoProcessor *processor,
   11281     WINBOOL *y_cb_cr,
   11282     D3D11_VIDEO_COLOR *color);
   11283 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetOutputBackgroundColor_Stub(
   11284     IRpcStubBuffer* This,
   11285     IRpcChannelBuffer* pRpcChannelBuffer,
   11286     PRPC_MESSAGE pRpcMessage,
   11287     DWORD* pdwStubPhase);
   11288 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetOutputColorSpace_Proxy(
   11289     ID3D11VideoContext* This,
   11290     ID3D11VideoProcessor *processor,
   11291     D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space);
   11292 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetOutputColorSpace_Stub(
   11293     IRpcStubBuffer* This,
   11294     IRpcChannelBuffer* pRpcChannelBuffer,
   11295     PRPC_MESSAGE pRpcMessage,
   11296     DWORD* pdwStubPhase);
   11297 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetOutputAlphaFillMode_Proxy(
   11298     ID3D11VideoContext* This,
   11299     ID3D11VideoProcessor *processor,
   11300     D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE *alpha_fill_mode,
   11301     UINT *stream_idx);
   11302 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetOutputAlphaFillMode_Stub(
   11303     IRpcStubBuffer* This,
   11304     IRpcChannelBuffer* pRpcChannelBuffer,
   11305     PRPC_MESSAGE pRpcMessage,
   11306     DWORD* pdwStubPhase);
   11307 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetOutputConstriction_Proxy(
   11308     ID3D11VideoContext* This,
   11309     ID3D11VideoProcessor *processor,
   11310     WINBOOL *enabled,
   11311     SIZE *size);
   11312 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetOutputConstriction_Stub(
   11313     IRpcStubBuffer* This,
   11314     IRpcChannelBuffer* pRpcChannelBuffer,
   11315     PRPC_MESSAGE pRpcMessage,
   11316     DWORD* pdwStubPhase);
   11317 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetOutputStereoMode_Proxy(
   11318     ID3D11VideoContext* This,
   11319     ID3D11VideoProcessor *processor,
   11320     WINBOOL *enabled);
   11321 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetOutputStereoMode_Stub(
   11322     IRpcStubBuffer* This,
   11323     IRpcChannelBuffer* pRpcChannelBuffer,
   11324     PRPC_MESSAGE pRpcMessage,
   11325     DWORD* pdwStubPhase);
   11326 HRESULT STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetOutputExtension_Proxy(
   11327     ID3D11VideoContext* This,
   11328     ID3D11VideoProcessor *processor,
   11329     const GUID *guid,
   11330     UINT data_size,
   11331     void *data);
   11332 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetOutputExtension_Stub(
   11333     IRpcStubBuffer* This,
   11334     IRpcChannelBuffer* pRpcChannelBuffer,
   11335     PRPC_MESSAGE pRpcMessage,
   11336     DWORD* pdwStubPhase);
   11337 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetStreamFrameFormat_Proxy(
   11338     ID3D11VideoContext* This,
   11339     ID3D11VideoProcessor *processor,
   11340     UINT stream_idx,
   11341     D3D11_VIDEO_FRAME_FORMAT format);
   11342 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetStreamFrameFormat_Stub(
   11343     IRpcStubBuffer* This,
   11344     IRpcChannelBuffer* pRpcChannelBuffer,
   11345     PRPC_MESSAGE pRpcMessage,
   11346     DWORD* pdwStubPhase);
   11347 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetStreamColorSpace_Proxy(
   11348     ID3D11VideoContext* This,
   11349     ID3D11VideoProcessor *processor,
   11350     UINT stream_idx,
   11351     const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space);
   11352 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetStreamColorSpace_Stub(
   11353     IRpcStubBuffer* This,
   11354     IRpcChannelBuffer* pRpcChannelBuffer,
   11355     PRPC_MESSAGE pRpcMessage,
   11356     DWORD* pdwStubPhase);
   11357 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetStreamOutputRate_Proxy(
   11358     ID3D11VideoContext* This,
   11359     ID3D11VideoProcessor *processor,
   11360     UINT stream_idx,
   11361     D3D11_VIDEO_PROCESSOR_OUTPUT_RATE rate,
   11362     WINBOOL repeat,
   11363     const DXGI_RATIONAL *custom_rate);
   11364 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetStreamOutputRate_Stub(
   11365     IRpcStubBuffer* This,
   11366     IRpcChannelBuffer* pRpcChannelBuffer,
   11367     PRPC_MESSAGE pRpcMessage,
   11368     DWORD* pdwStubPhase);
   11369 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetStreamSourceRect_Proxy(
   11370     ID3D11VideoContext* This,
   11371     ID3D11VideoProcessor *processor,
   11372     UINT stream_idx,
   11373     WINBOOL enable,
   11374     const RECT *rect);
   11375 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetStreamSourceRect_Stub(
   11376     IRpcStubBuffer* This,
   11377     IRpcChannelBuffer* pRpcChannelBuffer,
   11378     PRPC_MESSAGE pRpcMessage,
   11379     DWORD* pdwStubPhase);
   11380 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetStreamDestRect_Proxy(
   11381     ID3D11VideoContext* This,
   11382     ID3D11VideoProcessor *processor,
   11383     UINT stream_idx,
   11384     WINBOOL enable,
   11385     const RECT *rect);
   11386 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetStreamDestRect_Stub(
   11387     IRpcStubBuffer* This,
   11388     IRpcChannelBuffer* pRpcChannelBuffer,
   11389     PRPC_MESSAGE pRpcMessage,
   11390     DWORD* pdwStubPhase);
   11391 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetStreamAlpha_Proxy(
   11392     ID3D11VideoContext* This,
   11393     ID3D11VideoProcessor *processor,
   11394     UINT stream_idx,
   11395     WINBOOL enable,
   11396     float alpha);
   11397 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetStreamAlpha_Stub(
   11398     IRpcStubBuffer* This,
   11399     IRpcChannelBuffer* pRpcChannelBuffer,
   11400     PRPC_MESSAGE pRpcMessage,
   11401     DWORD* pdwStubPhase);
   11402 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetStreamPalette_Proxy(
   11403     ID3D11VideoContext* This,
   11404     ID3D11VideoProcessor *processor,
   11405     UINT stream_idx,
   11406     UINT entry_count,
   11407     const UINT *entries);
   11408 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetStreamPalette_Stub(
   11409     IRpcStubBuffer* This,
   11410     IRpcChannelBuffer* pRpcChannelBuffer,
   11411     PRPC_MESSAGE pRpcMessage,
   11412     DWORD* pdwStubPhase);
   11413 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetStreamPixelAspectRatio_Proxy(
   11414     ID3D11VideoContext* This,
   11415     ID3D11VideoProcessor *processor,
   11416     UINT stream_idx,
   11417     WINBOOL enable,
   11418     const DXGI_RATIONAL *src_aspect_ratio,
   11419     const DXGI_RATIONAL *dst_aspect_ratio);
   11420 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetStreamPixelAspectRatio_Stub(
   11421     IRpcStubBuffer* This,
   11422     IRpcChannelBuffer* pRpcChannelBuffer,
   11423     PRPC_MESSAGE pRpcMessage,
   11424     DWORD* pdwStubPhase);
   11425 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetStreamLumaKey_Proxy(
   11426     ID3D11VideoContext* This,
   11427     ID3D11VideoProcessor *processor,
   11428     UINT stream_idx,
   11429     WINBOOL enable,
   11430     float lower,
   11431     float upper);
   11432 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetStreamLumaKey_Stub(
   11433     IRpcStubBuffer* This,
   11434     IRpcChannelBuffer* pRpcChannelBuffer,
   11435     PRPC_MESSAGE pRpcMessage,
   11436     DWORD* pdwStubPhase);
   11437 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetStreamStereoFormat_Proxy(
   11438     ID3D11VideoContext* This,
   11439     ID3D11VideoProcessor *processor,
   11440     UINT stream_idx,
   11441     WINBOOL enable,
   11442     D3D11_VIDEO_PROCESSOR_STEREO_FORMAT format,
   11443     WINBOOL left_view_frame0,
   11444     WINBOOL base_view_frame0,
   11445     D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE flip_mode,
   11446     int mono_offset);
   11447 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetStreamStereoFormat_Stub(
   11448     IRpcStubBuffer* This,
   11449     IRpcChannelBuffer* pRpcChannelBuffer,
   11450     PRPC_MESSAGE pRpcMessage,
   11451     DWORD* pdwStubPhase);
   11452 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetStreamAutoProcessingMode_Proxy(
   11453     ID3D11VideoContext* This,
   11454     ID3D11VideoProcessor *processor,
   11455     UINT stream_idx,
   11456     WINBOOL enable);
   11457 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetStreamAutoProcessingMode_Stub(
   11458     IRpcStubBuffer* This,
   11459     IRpcChannelBuffer* pRpcChannelBuffer,
   11460     PRPC_MESSAGE pRpcMessage,
   11461     DWORD* pdwStubPhase);
   11462 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetStreamFilter_Proxy(
   11463     ID3D11VideoContext* This,
   11464     ID3D11VideoProcessor *processor,
   11465     UINT stream_idx,
   11466     D3D11_VIDEO_PROCESSOR_FILTER filter,
   11467     WINBOOL enable,
   11468     int level);
   11469 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetStreamFilter_Stub(
   11470     IRpcStubBuffer* This,
   11471     IRpcChannelBuffer* pRpcChannelBuffer,
   11472     PRPC_MESSAGE pRpcMessage,
   11473     DWORD* pdwStubPhase);
   11474 HRESULT STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetStreamExtension_Proxy(
   11475     ID3D11VideoContext* This,
   11476     ID3D11VideoProcessor *processor,
   11477     UINT stream_idx,
   11478     const GUID *guid,
   11479     UINT data_size,
   11480     void *data);
   11481 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetStreamExtension_Stub(
   11482     IRpcStubBuffer* This,
   11483     IRpcChannelBuffer* pRpcChannelBuffer,
   11484     PRPC_MESSAGE pRpcMessage,
   11485     DWORD* pdwStubPhase);
   11486 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetStreamFrameFormat_Proxy(
   11487     ID3D11VideoContext* This,
   11488     ID3D11VideoProcessor *processor,
   11489     UINT stream_idx,
   11490     D3D11_VIDEO_FRAME_FORMAT *format);
   11491 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetStreamFrameFormat_Stub(
   11492     IRpcStubBuffer* This,
   11493     IRpcChannelBuffer* pRpcChannelBuffer,
   11494     PRPC_MESSAGE pRpcMessage,
   11495     DWORD* pdwStubPhase);
   11496 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetStreamColorSpace_Proxy(
   11497     ID3D11VideoContext* This,
   11498     ID3D11VideoProcessor *processor,
   11499     UINT stream_idx,
   11500     D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space);
   11501 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetStreamColorSpace_Stub(
   11502     IRpcStubBuffer* This,
   11503     IRpcChannelBuffer* pRpcChannelBuffer,
   11504     PRPC_MESSAGE pRpcMessage,
   11505     DWORD* pdwStubPhase);
   11506 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetStreamOutputRate_Proxy(
   11507     ID3D11VideoContext* This,
   11508     ID3D11VideoProcessor *processor,
   11509     UINT stream_idx,
   11510     D3D11_VIDEO_PROCESSOR_OUTPUT_RATE *rate,
   11511     WINBOOL *repeat,
   11512     DXGI_RATIONAL *custom_rate);
   11513 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetStreamOutputRate_Stub(
   11514     IRpcStubBuffer* This,
   11515     IRpcChannelBuffer* pRpcChannelBuffer,
   11516     PRPC_MESSAGE pRpcMessage,
   11517     DWORD* pdwStubPhase);
   11518 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetStreamSourceRect_Proxy(
   11519     ID3D11VideoContext* This,
   11520     ID3D11VideoProcessor *processor,
   11521     UINT stream_idx,
   11522     WINBOOL *enabled,
   11523     RECT *rect);
   11524 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetStreamSourceRect_Stub(
   11525     IRpcStubBuffer* This,
   11526     IRpcChannelBuffer* pRpcChannelBuffer,
   11527     PRPC_MESSAGE pRpcMessage,
   11528     DWORD* pdwStubPhase);
   11529 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetStreamDestRect_Proxy(
   11530     ID3D11VideoContext* This,
   11531     ID3D11VideoProcessor *processor,
   11532     UINT stream_idx,
   11533     WINBOOL *enabled,
   11534     RECT *rect);
   11535 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetStreamDestRect_Stub(
   11536     IRpcStubBuffer* This,
   11537     IRpcChannelBuffer* pRpcChannelBuffer,
   11538     PRPC_MESSAGE pRpcMessage,
   11539     DWORD* pdwStubPhase);
   11540 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetStreamAlpha_Proxy(
   11541     ID3D11VideoContext* This,
   11542     ID3D11VideoProcessor *processor,
   11543     UINT stream_idx,
   11544     WINBOOL *enabled,
   11545     float *alpha);
   11546 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetStreamAlpha_Stub(
   11547     IRpcStubBuffer* This,
   11548     IRpcChannelBuffer* pRpcChannelBuffer,
   11549     PRPC_MESSAGE pRpcMessage,
   11550     DWORD* pdwStubPhase);
   11551 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetStreamPalette_Proxy(
   11552     ID3D11VideoContext* This,
   11553     ID3D11VideoProcessor *processor,
   11554     UINT stream_idx,
   11555     UINT entry_count,
   11556     UINT *entries);
   11557 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetStreamPalette_Stub(
   11558     IRpcStubBuffer* This,
   11559     IRpcChannelBuffer* pRpcChannelBuffer,
   11560     PRPC_MESSAGE pRpcMessage,
   11561     DWORD* pdwStubPhase);
   11562 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetStreamPixelAspectRatio_Proxy(
   11563     ID3D11VideoContext* This,
   11564     ID3D11VideoProcessor *processor,
   11565     UINT stream_idx,
   11566     WINBOOL *enabled,
   11567     DXGI_RATIONAL *src_aspect_ratio,
   11568     DXGI_RATIONAL *dst_aspect_ratio);
   11569 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetStreamPixelAspectRatio_Stub(
   11570     IRpcStubBuffer* This,
   11571     IRpcChannelBuffer* pRpcChannelBuffer,
   11572     PRPC_MESSAGE pRpcMessage,
   11573     DWORD* pdwStubPhase);
   11574 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetStreamLumaKey_Proxy(
   11575     ID3D11VideoContext* This,
   11576     ID3D11VideoProcessor *processor,
   11577     UINT stream_idx,
   11578     WINBOOL *enabled,
   11579     float *lower,
   11580     float *upper);
   11581 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetStreamLumaKey_Stub(
   11582     IRpcStubBuffer* This,
   11583     IRpcChannelBuffer* pRpcChannelBuffer,
   11584     PRPC_MESSAGE pRpcMessage,
   11585     DWORD* pdwStubPhase);
   11586 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetStreamStereoFormat_Proxy(
   11587     ID3D11VideoContext* This,
   11588     ID3D11VideoProcessor *processor,
   11589     UINT stream_idx,
   11590     WINBOOL *enabled,
   11591     D3D11_VIDEO_PROCESSOR_STEREO_FORMAT *format,
   11592     WINBOOL *left_view_frame0,
   11593     WINBOOL *base_view_frame0,
   11594     D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE *flip_mode,
   11595     int *mono_offset);
   11596 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetStreamStereoFormat_Stub(
   11597     IRpcStubBuffer* This,
   11598     IRpcChannelBuffer* pRpcChannelBuffer,
   11599     PRPC_MESSAGE pRpcMessage,
   11600     DWORD* pdwStubPhase);
   11601 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetStreamAutoProcessingMode_Proxy(
   11602     ID3D11VideoContext* This,
   11603     ID3D11VideoProcessor *processor,
   11604     UINT stream_idx,
   11605     WINBOOL *enabled);
   11606 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetStreamAutoProcessingMode_Stub(
   11607     IRpcStubBuffer* This,
   11608     IRpcChannelBuffer* pRpcChannelBuffer,
   11609     PRPC_MESSAGE pRpcMessage,
   11610     DWORD* pdwStubPhase);
   11611 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetStreamFilter_Proxy(
   11612     ID3D11VideoContext* This,
   11613     ID3D11VideoProcessor *processor,
   11614     UINT stream_idx,
   11615     D3D11_VIDEO_PROCESSOR_FILTER filter,
   11616     WINBOOL *enabled,
   11617     int *level);
   11618 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetStreamFilter_Stub(
   11619     IRpcStubBuffer* This,
   11620     IRpcChannelBuffer* pRpcChannelBuffer,
   11621     PRPC_MESSAGE pRpcMessage,
   11622     DWORD* pdwStubPhase);
   11623 HRESULT STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetStreamExtension_Proxy(
   11624     ID3D11VideoContext* This,
   11625     ID3D11VideoProcessor *processor,
   11626     UINT stream_idx,
   11627     const GUID *guid,
   11628     UINT data_size,
   11629     void *data);
   11630 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetStreamExtension_Stub(
   11631     IRpcStubBuffer* This,
   11632     IRpcChannelBuffer* pRpcChannelBuffer,
   11633     PRPC_MESSAGE pRpcMessage,
   11634     DWORD* pdwStubPhase);
   11635 HRESULT STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorBlt_Proxy(
   11636     ID3D11VideoContext* This,
   11637     ID3D11VideoProcessor *processor,
   11638     ID3D11VideoProcessorOutputView *view,
   11639     UINT frame_idx,
   11640     UINT stream_count,
   11641     const D3D11_VIDEO_PROCESSOR_STREAM *streams);
   11642 void __RPC_STUB ID3D11VideoContext_VideoProcessorBlt_Stub(
   11643     IRpcStubBuffer* This,
   11644     IRpcChannelBuffer* pRpcChannelBuffer,
   11645     PRPC_MESSAGE pRpcMessage,
   11646     DWORD* pdwStubPhase);
   11647 HRESULT STDMETHODCALLTYPE ID3D11VideoContext_NegotiateCryptoSessionKeyExchange_Proxy(
   11648     ID3D11VideoContext* This,
   11649     ID3D11CryptoSession *session,
   11650     UINT data_size,
   11651     void *data);
   11652 void __RPC_STUB ID3D11VideoContext_NegotiateCryptoSessionKeyExchange_Stub(
   11653     IRpcStubBuffer* This,
   11654     IRpcChannelBuffer* pRpcChannelBuffer,
   11655     PRPC_MESSAGE pRpcMessage,
   11656     DWORD* pdwStubPhase);
   11657 void STDMETHODCALLTYPE ID3D11VideoContext_EncryptionBlt_Proxy(
   11658     ID3D11VideoContext* This,
   11659     ID3D11CryptoSession *session,
   11660     ID3D11Texture2D *src_surface,
   11661     ID3D11Texture2D *dst_surface,
   11662     UINT iv_size,
   11663     void *iv);
   11664 void __RPC_STUB ID3D11VideoContext_EncryptionBlt_Stub(
   11665     IRpcStubBuffer* This,
   11666     IRpcChannelBuffer* pRpcChannelBuffer,
   11667     PRPC_MESSAGE pRpcMessage,
   11668     DWORD* pdwStubPhase);
   11669 void STDMETHODCALLTYPE ID3D11VideoContext_DecryptionBlt_Proxy(
   11670     ID3D11VideoContext* This,
   11671     ID3D11CryptoSession *session,
   11672     ID3D11Texture2D *src_surface,
   11673     ID3D11Texture2D *dst_surface,
   11674     D3D11_ENCRYPTED_BLOCK_INFO *block_info,
   11675     UINT key_size,
   11676     const void *key,
   11677     UINT iv_size,
   11678     void *iv);
   11679 void __RPC_STUB ID3D11VideoContext_DecryptionBlt_Stub(
   11680     IRpcStubBuffer* This,
   11681     IRpcChannelBuffer* pRpcChannelBuffer,
   11682     PRPC_MESSAGE pRpcMessage,
   11683     DWORD* pdwStubPhase);
   11684 void STDMETHODCALLTYPE ID3D11VideoContext_StartSessionKeyRefresh_Proxy(
   11685     ID3D11VideoContext* This,
   11686     ID3D11CryptoSession *session,
   11687     UINT random_number_size,
   11688     void *random_number);
   11689 void __RPC_STUB ID3D11VideoContext_StartSessionKeyRefresh_Stub(
   11690     IRpcStubBuffer* This,
   11691     IRpcChannelBuffer* pRpcChannelBuffer,
   11692     PRPC_MESSAGE pRpcMessage,
   11693     DWORD* pdwStubPhase);
   11694 void STDMETHODCALLTYPE ID3D11VideoContext_FinishSessionKeyRefresh_Proxy(
   11695     ID3D11VideoContext* This,
   11696     ID3D11CryptoSession *session);
   11697 void __RPC_STUB ID3D11VideoContext_FinishSessionKeyRefresh_Stub(
   11698     IRpcStubBuffer* This,
   11699     IRpcChannelBuffer* pRpcChannelBuffer,
   11700     PRPC_MESSAGE pRpcMessage,
   11701     DWORD* pdwStubPhase);
   11702 HRESULT STDMETHODCALLTYPE ID3D11VideoContext_GetEncryptionBltKey_Proxy(
   11703     ID3D11VideoContext* This,
   11704     ID3D11CryptoSession *session,
   11705     UINT key_size,
   11706     void *key);
   11707 void __RPC_STUB ID3D11VideoContext_GetEncryptionBltKey_Stub(
   11708     IRpcStubBuffer* This,
   11709     IRpcChannelBuffer* pRpcChannelBuffer,
   11710     PRPC_MESSAGE pRpcMessage,
   11711     DWORD* pdwStubPhase);
   11712 HRESULT STDMETHODCALLTYPE ID3D11VideoContext_NegotiateAuthenticatedChannelKeyExchange_Proxy(
   11713     ID3D11VideoContext* This,
   11714     ID3D11AuthenticatedChannel *channel,
   11715     UINT data_size,
   11716     void *data);
   11717 void __RPC_STUB ID3D11VideoContext_NegotiateAuthenticatedChannelKeyExchange_Stub(
   11718     IRpcStubBuffer* This,
   11719     IRpcChannelBuffer* pRpcChannelBuffer,
   11720     PRPC_MESSAGE pRpcMessage,
   11721     DWORD* pdwStubPhase);
   11722 HRESULT STDMETHODCALLTYPE ID3D11VideoContext_QueryAuthenticatedChannel_Proxy(
   11723     ID3D11VideoContext* This,
   11724     ID3D11AuthenticatedChannel *channel,
   11725     UINT input_size,
   11726     const void *input,
   11727     UINT output_size,
   11728     void *output);
   11729 void __RPC_STUB ID3D11VideoContext_QueryAuthenticatedChannel_Stub(
   11730     IRpcStubBuffer* This,
   11731     IRpcChannelBuffer* pRpcChannelBuffer,
   11732     PRPC_MESSAGE pRpcMessage,
   11733     DWORD* pdwStubPhase);
   11734 HRESULT STDMETHODCALLTYPE ID3D11VideoContext_ConfigureAuthenticatedChannel_Proxy(
   11735     ID3D11VideoContext* This,
   11736     ID3D11AuthenticatedChannel *channel,
   11737     UINT input_size,
   11738     const void *input,
   11739     D3D11_AUTHENTICATED_CONFIGURE_OUTPUT *output);
   11740 void __RPC_STUB ID3D11VideoContext_ConfigureAuthenticatedChannel_Stub(
   11741     IRpcStubBuffer* This,
   11742     IRpcChannelBuffer* pRpcChannelBuffer,
   11743     PRPC_MESSAGE pRpcMessage,
   11744     DWORD* pdwStubPhase);
   11745 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorSetStreamRotation_Proxy(
   11746     ID3D11VideoContext* This,
   11747     ID3D11VideoProcessor *processor,
   11748     UINT stream_idx,
   11749     WINBOOL enable,
   11750     D3D11_VIDEO_PROCESSOR_ROTATION rotation);
   11751 void __RPC_STUB ID3D11VideoContext_VideoProcessorSetStreamRotation_Stub(
   11752     IRpcStubBuffer* This,
   11753     IRpcChannelBuffer* pRpcChannelBuffer,
   11754     PRPC_MESSAGE pRpcMessage,
   11755     DWORD* pdwStubPhase);
   11756 void STDMETHODCALLTYPE ID3D11VideoContext_VideoProcessorGetStreamRotation_Proxy(
   11757     ID3D11VideoContext* This,
   11758     ID3D11VideoProcessor *processor,
   11759     UINT stream_idx,
   11760     WINBOOL *enable,
   11761     D3D11_VIDEO_PROCESSOR_ROTATION *rotation);
   11762 void __RPC_STUB ID3D11VideoContext_VideoProcessorGetStreamRotation_Stub(
   11763     IRpcStubBuffer* This,
   11764     IRpcChannelBuffer* pRpcChannelBuffer,
   11765     PRPC_MESSAGE pRpcMessage,
   11766     DWORD* pdwStubPhase);
   11767 
   11768 #endif  /* __ID3D11VideoContext_INTERFACE_DEFINED__ */
   11769 
   11770 /*****************************************************************************
   11771  * ID3D11Device interface
   11772  */
   11773 #ifndef __ID3D11Device_INTERFACE_DEFINED__
   11774 #define __ID3D11Device_INTERFACE_DEFINED__
   11775 
   11776 DEFINE_GUID(IID_ID3D11Device, 0xdb6f6ddb, 0xac77, 0x4e88, 0x82,0x53, 0x81,0x9d,0xf9,0xbb,0xf1,0x40);
   11777 #if defined(__cplusplus) && !defined(CINTERFACE)
   11778 MIDL_INTERFACE("db6f6ddb-ac77-4e88-8253-819df9bbf140")
   11779 ID3D11Device : public IUnknown
   11780 {
   11781     virtual HRESULT STDMETHODCALLTYPE CreateBuffer(
   11782         const D3D11_BUFFER_DESC *pDesc,
   11783         const D3D11_SUBRESOURCE_DATA *pInitialData,
   11784         ID3D11Buffer **ppBuffer) = 0;
   11785 
   11786     virtual HRESULT STDMETHODCALLTYPE CreateTexture1D(
   11787         const D3D11_TEXTURE1D_DESC *pDesc,
   11788         const D3D11_SUBRESOURCE_DATA *pInitialData,
   11789         ID3D11Texture1D **ppTexture1D) = 0;
   11790 
   11791     virtual HRESULT STDMETHODCALLTYPE CreateTexture2D(
   11792         const D3D11_TEXTURE2D_DESC *pDesc,
   11793         const D3D11_SUBRESOURCE_DATA *pInitialData,
   11794         ID3D11Texture2D **ppTexture2D) = 0;
   11795 
   11796     virtual HRESULT STDMETHODCALLTYPE CreateTexture3D(
   11797         const D3D11_TEXTURE3D_DESC *pDesc,
   11798         const D3D11_SUBRESOURCE_DATA *pInitialData,
   11799         ID3D11Texture3D **ppTexture3D) = 0;
   11800 
   11801     virtual HRESULT STDMETHODCALLTYPE CreateShaderResourceView(
   11802         ID3D11Resource *pResource,
   11803         const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc,
   11804         ID3D11ShaderResourceView **ppSRView) = 0;
   11805 
   11806     virtual HRESULT STDMETHODCALLTYPE CreateUnorderedAccessView(
   11807         ID3D11Resource *pResource,
   11808         const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc,
   11809         ID3D11UnorderedAccessView **ppUAView) = 0;
   11810 
   11811     virtual HRESULT STDMETHODCALLTYPE CreateRenderTargetView(
   11812         ID3D11Resource *pResource,
   11813         const D3D11_RENDER_TARGET_VIEW_DESC *pDesc,
   11814         ID3D11RenderTargetView **ppRTView) = 0;
   11815 
   11816     virtual HRESULT STDMETHODCALLTYPE CreateDepthStencilView(
   11817         ID3D11Resource *pResource,
   11818         const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc,
   11819         ID3D11DepthStencilView **ppDepthStencilView) = 0;
   11820 
   11821     virtual HRESULT STDMETHODCALLTYPE CreateInputLayout(
   11822         const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs,
   11823         UINT NumElements,
   11824         const void *pShaderBytecodeWithInputSignature,
   11825         SIZE_T BytecodeLength,
   11826         ID3D11InputLayout **ppInputLayout) = 0;
   11827 
   11828     virtual HRESULT STDMETHODCALLTYPE CreateVertexShader(
   11829         const void *pShaderBytecode,
   11830         SIZE_T BytecodeLength,
   11831         ID3D11ClassLinkage *pClassLinkage,
   11832         ID3D11VertexShader **ppVertexShader) = 0;
   11833 
   11834     virtual HRESULT STDMETHODCALLTYPE CreateGeometryShader(
   11835         const void *pShaderBytecode,
   11836         SIZE_T BytecodeLength,
   11837         ID3D11ClassLinkage *pClassLinkage,
   11838         ID3D11GeometryShader **ppGeometryShader) = 0;
   11839 
   11840     virtual HRESULT STDMETHODCALLTYPE CreateGeometryShaderWithStreamOutput(
   11841         const void *pShaderBytecode,
   11842         SIZE_T BytecodeLength,
   11843         const D3D11_SO_DECLARATION_ENTRY *pSODeclaration,
   11844         UINT NumEntries,
   11845         const UINT *pBufferStrides,
   11846         UINT NumStrides,
   11847         UINT RasterizedStream,
   11848         ID3D11ClassLinkage *pClassLinkage,
   11849         ID3D11GeometryShader **ppGeometryShader) = 0;
   11850 
   11851     virtual HRESULT STDMETHODCALLTYPE CreatePixelShader(
   11852         const void *pShaderBytecode,
   11853         SIZE_T BytecodeLength,
   11854         ID3D11ClassLinkage *pClassLinkage,
   11855         ID3D11PixelShader **ppPixelShader) = 0;
   11856 
   11857     virtual HRESULT STDMETHODCALLTYPE CreateHullShader(
   11858         const void *pShaderBytecode,
   11859         SIZE_T BytecodeLength,
   11860         ID3D11ClassLinkage *pClassLinkage,
   11861         ID3D11HullShader **ppHullShader) = 0;
   11862 
   11863     virtual HRESULT STDMETHODCALLTYPE CreateDomainShader(
   11864         const void *pShaderBytecode,
   11865         SIZE_T BytecodeLength,
   11866         ID3D11ClassLinkage *pClassLinkage,
   11867         ID3D11DomainShader **ppDomainShader) = 0;
   11868 
   11869     virtual HRESULT STDMETHODCALLTYPE CreateComputeShader(
   11870         const void *pShaderBytecode,
   11871         SIZE_T BytecodeLength,
   11872         ID3D11ClassLinkage *pClassLinkage,
   11873         ID3D11ComputeShader **ppComputeShader) = 0;
   11874 
   11875     virtual HRESULT STDMETHODCALLTYPE CreateClassLinkage(
   11876         ID3D11ClassLinkage **ppLinkage) = 0;
   11877 
   11878     virtual HRESULT STDMETHODCALLTYPE CreateBlendState(
   11879         const D3D11_BLEND_DESC *pBlendStateDesc,
   11880         ID3D11BlendState **ppBlendState) = 0;
   11881 
   11882     virtual HRESULT STDMETHODCALLTYPE CreateDepthStencilState(
   11883         const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc,
   11884         ID3D11DepthStencilState **ppDepthStencilState) = 0;
   11885 
   11886     virtual HRESULT STDMETHODCALLTYPE CreateRasterizerState(
   11887         const D3D11_RASTERIZER_DESC *pRasterizerDesc,
   11888         ID3D11RasterizerState **ppRasterizerState) = 0;
   11889 
   11890     virtual HRESULT STDMETHODCALLTYPE CreateSamplerState(
   11891         const D3D11_SAMPLER_DESC *pSamplerDesc,
   11892         ID3D11SamplerState **ppSamplerState) = 0;
   11893 
   11894     virtual HRESULT STDMETHODCALLTYPE CreateQuery(
   11895         const D3D11_QUERY_DESC *pQueryDesc,
   11896         ID3D11Query **ppQuery) = 0;
   11897 
   11898     virtual HRESULT STDMETHODCALLTYPE CreatePredicate(
   11899         const D3D11_QUERY_DESC *pPredicateDesc,
   11900         ID3D11Predicate **ppPredicate) = 0;
   11901 
   11902     virtual HRESULT STDMETHODCALLTYPE CreateCounter(
   11903         const D3D11_COUNTER_DESC *pCounterDesc,
   11904         ID3D11Counter **ppCounter) = 0;
   11905 
   11906     virtual HRESULT STDMETHODCALLTYPE CreateDeferredContext(
   11907         UINT ContextFlags,
   11908         ID3D11DeviceContext **ppDeferredContext) = 0;
   11909 
   11910     virtual HRESULT STDMETHODCALLTYPE OpenSharedResource(
   11911         HANDLE hResource,
   11912         REFIID ReturnedInterface,
   11913         void **ppResource) = 0;
   11914 
   11915     virtual HRESULT STDMETHODCALLTYPE CheckFormatSupport(
   11916         DXGI_FORMAT Format,
   11917         UINT *pFormatSupport) = 0;
   11918 
   11919     virtual HRESULT STDMETHODCALLTYPE CheckMultisampleQualityLevels(
   11920         DXGI_FORMAT Format,
   11921         UINT SampleCount,
   11922         UINT *pNumQualityLevels) = 0;
   11923 
   11924     virtual void STDMETHODCALLTYPE CheckCounterInfo(
   11925         D3D11_COUNTER_INFO *pCounterInfo) = 0;
   11926 
   11927     virtual HRESULT STDMETHODCALLTYPE CheckCounter(
   11928         const D3D11_COUNTER_DESC *pDesc,
   11929         D3D11_COUNTER_TYPE *pType,
   11930         UINT *pActiveCounters,
   11931         LPSTR szName,
   11932         UINT *pNameLength,
   11933         LPSTR szUnits,
   11934         UINT *pUnitsLength,
   11935         LPSTR szDescription,
   11936         UINT *pDescriptionLength) = 0;
   11937 
   11938     virtual HRESULT STDMETHODCALLTYPE CheckFeatureSupport(
   11939         D3D11_FEATURE Feature,
   11940         void *pFeatureSupportData,
   11941         UINT FeatureSupportDataSize) = 0;
   11942 
   11943     virtual HRESULT STDMETHODCALLTYPE GetPrivateData(
   11944         REFGUID guid,
   11945         UINT *pDataSize,
   11946         void *pData) = 0;
   11947 
   11948     virtual HRESULT STDMETHODCALLTYPE SetPrivateData(
   11949         REFGUID guid,
   11950         UINT DataSize,
   11951         const void *pData) = 0;
   11952 
   11953     virtual HRESULT STDMETHODCALLTYPE SetPrivateDataInterface(
   11954         REFGUID guid,
   11955         const IUnknown *pData) = 0;
   11956 
   11957     virtual D3D_FEATURE_LEVEL STDMETHODCALLTYPE GetFeatureLevel(
   11958         ) = 0;
   11959 
   11960     virtual UINT STDMETHODCALLTYPE GetCreationFlags(
   11961         ) = 0;
   11962 
   11963     virtual HRESULT STDMETHODCALLTYPE GetDeviceRemovedReason(
   11964         ) = 0;
   11965 
   11966     virtual void STDMETHODCALLTYPE GetImmediateContext(
   11967         ID3D11DeviceContext **ppImmediateContext) = 0;
   11968 
   11969     virtual HRESULT STDMETHODCALLTYPE SetExceptionMode(
   11970         UINT RaiseFlags) = 0;
   11971 
   11972     virtual UINT STDMETHODCALLTYPE GetExceptionMode(
   11973         ) = 0;
   11974 
   11975 };
   11976 #ifdef __CRT_UUID_DECL
   11977 __CRT_UUID_DECL(ID3D11Device, 0xdb6f6ddb, 0xac77, 0x4e88, 0x82,0x53, 0x81,0x9d,0xf9,0xbb,0xf1,0x40)
   11978 #endif
   11979 #else
   11980 typedef struct ID3D11DeviceVtbl {
   11981     BEGIN_INTERFACE
   11982 
   11983     /*** IUnknown methods ***/
   11984     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   11985         ID3D11Device* This,
   11986         REFIID riid,
   11987         void **ppvObject);
   11988 
   11989     ULONG (STDMETHODCALLTYPE *AddRef)(
   11990         ID3D11Device* This);
   11991 
   11992     ULONG (STDMETHODCALLTYPE *Release)(
   11993         ID3D11Device* This);
   11994 
   11995     /*** ID3D11Device methods ***/
   11996     HRESULT (STDMETHODCALLTYPE *CreateBuffer)(
   11997         ID3D11Device* This,
   11998         const D3D11_BUFFER_DESC *pDesc,
   11999         const D3D11_SUBRESOURCE_DATA *pInitialData,
   12000         ID3D11Buffer **ppBuffer);
   12001 
   12002     HRESULT (STDMETHODCALLTYPE *CreateTexture1D)(
   12003         ID3D11Device* This,
   12004         const D3D11_TEXTURE1D_DESC *pDesc,
   12005         const D3D11_SUBRESOURCE_DATA *pInitialData,
   12006         ID3D11Texture1D **ppTexture1D);
   12007 
   12008     HRESULT (STDMETHODCALLTYPE *CreateTexture2D)(
   12009         ID3D11Device* This,
   12010         const D3D11_TEXTURE2D_DESC *pDesc,
   12011         const D3D11_SUBRESOURCE_DATA *pInitialData,
   12012         ID3D11Texture2D **ppTexture2D);
   12013 
   12014     HRESULT (STDMETHODCALLTYPE *CreateTexture3D)(
   12015         ID3D11Device* This,
   12016         const D3D11_TEXTURE3D_DESC *pDesc,
   12017         const D3D11_SUBRESOURCE_DATA *pInitialData,
   12018         ID3D11Texture3D **ppTexture3D);
   12019 
   12020     HRESULT (STDMETHODCALLTYPE *CreateShaderResourceView)(
   12021         ID3D11Device* This,
   12022         ID3D11Resource *pResource,
   12023         const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc,
   12024         ID3D11ShaderResourceView **ppSRView);
   12025 
   12026     HRESULT (STDMETHODCALLTYPE *CreateUnorderedAccessView)(
   12027         ID3D11Device* This,
   12028         ID3D11Resource *pResource,
   12029         const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc,
   12030         ID3D11UnorderedAccessView **ppUAView);
   12031 
   12032     HRESULT (STDMETHODCALLTYPE *CreateRenderTargetView)(
   12033         ID3D11Device* This,
   12034         ID3D11Resource *pResource,
   12035         const D3D11_RENDER_TARGET_VIEW_DESC *pDesc,
   12036         ID3D11RenderTargetView **ppRTView);
   12037 
   12038     HRESULT (STDMETHODCALLTYPE *CreateDepthStencilView)(
   12039         ID3D11Device* This,
   12040         ID3D11Resource *pResource,
   12041         const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc,
   12042         ID3D11DepthStencilView **ppDepthStencilView);
   12043 
   12044     HRESULT (STDMETHODCALLTYPE *CreateInputLayout)(
   12045         ID3D11Device* This,
   12046         const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs,
   12047         UINT NumElements,
   12048         const void *pShaderBytecodeWithInputSignature,
   12049         SIZE_T BytecodeLength,
   12050         ID3D11InputLayout **ppInputLayout);
   12051 
   12052     HRESULT (STDMETHODCALLTYPE *CreateVertexShader)(
   12053         ID3D11Device* This,
   12054         const void *pShaderBytecode,
   12055         SIZE_T BytecodeLength,
   12056         ID3D11ClassLinkage *pClassLinkage,
   12057         ID3D11VertexShader **ppVertexShader);
   12058 
   12059     HRESULT (STDMETHODCALLTYPE *CreateGeometryShader)(
   12060         ID3D11Device* This,
   12061         const void *pShaderBytecode,
   12062         SIZE_T BytecodeLength,
   12063         ID3D11ClassLinkage *pClassLinkage,
   12064         ID3D11GeometryShader **ppGeometryShader);
   12065 
   12066     HRESULT (STDMETHODCALLTYPE *CreateGeometryShaderWithStreamOutput)(
   12067         ID3D11Device* This,
   12068         const void *pShaderBytecode,
   12069         SIZE_T BytecodeLength,
   12070         const D3D11_SO_DECLARATION_ENTRY *pSODeclaration,
   12071         UINT NumEntries,
   12072         const UINT *pBufferStrides,
   12073         UINT NumStrides,
   12074         UINT RasterizedStream,
   12075         ID3D11ClassLinkage *pClassLinkage,
   12076         ID3D11GeometryShader **ppGeometryShader);
   12077 
   12078     HRESULT (STDMETHODCALLTYPE *CreatePixelShader)(
   12079         ID3D11Device* This,
   12080         const void *pShaderBytecode,
   12081         SIZE_T BytecodeLength,
   12082         ID3D11ClassLinkage *pClassLinkage,
   12083         ID3D11PixelShader **ppPixelShader);
   12084 
   12085     HRESULT (STDMETHODCALLTYPE *CreateHullShader)(
   12086         ID3D11Device* This,
   12087         const void *pShaderBytecode,
   12088         SIZE_T BytecodeLength,
   12089         ID3D11ClassLinkage *pClassLinkage,
   12090         ID3D11HullShader **ppHullShader);
   12091 
   12092     HRESULT (STDMETHODCALLTYPE *CreateDomainShader)(
   12093         ID3D11Device* This,
   12094         const void *pShaderBytecode,
   12095         SIZE_T BytecodeLength,
   12096         ID3D11ClassLinkage *pClassLinkage,
   12097         ID3D11DomainShader **ppDomainShader);
   12098 
   12099     HRESULT (STDMETHODCALLTYPE *CreateComputeShader)(
   12100         ID3D11Device* This,
   12101         const void *pShaderBytecode,
   12102         SIZE_T BytecodeLength,
   12103         ID3D11ClassLinkage *pClassLinkage,
   12104         ID3D11ComputeShader **ppComputeShader);
   12105 
   12106     HRESULT (STDMETHODCALLTYPE *CreateClassLinkage)(
   12107         ID3D11Device* This,
   12108         ID3D11ClassLinkage **ppLinkage);
   12109 
   12110     HRESULT (STDMETHODCALLTYPE *CreateBlendState)(
   12111         ID3D11Device* This,
   12112         const D3D11_BLEND_DESC *pBlendStateDesc,
   12113         ID3D11BlendState **ppBlendState);
   12114 
   12115     HRESULT (STDMETHODCALLTYPE *CreateDepthStencilState)(
   12116         ID3D11Device* This,
   12117         const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc,
   12118         ID3D11DepthStencilState **ppDepthStencilState);
   12119 
   12120     HRESULT (STDMETHODCALLTYPE *CreateRasterizerState)(
   12121         ID3D11Device* This,
   12122         const D3D11_RASTERIZER_DESC *pRasterizerDesc,
   12123         ID3D11RasterizerState **ppRasterizerState);
   12124 
   12125     HRESULT (STDMETHODCALLTYPE *CreateSamplerState)(
   12126         ID3D11Device* This,
   12127         const D3D11_SAMPLER_DESC *pSamplerDesc,
   12128         ID3D11SamplerState **ppSamplerState);
   12129 
   12130     HRESULT (STDMETHODCALLTYPE *CreateQuery)(
   12131         ID3D11Device* This,
   12132         const D3D11_QUERY_DESC *pQueryDesc,
   12133         ID3D11Query **ppQuery);
   12134 
   12135     HRESULT (STDMETHODCALLTYPE *CreatePredicate)(
   12136         ID3D11Device* This,
   12137         const D3D11_QUERY_DESC *pPredicateDesc,
   12138         ID3D11Predicate **ppPredicate);
   12139 
   12140     HRESULT (STDMETHODCALLTYPE *CreateCounter)(
   12141         ID3D11Device* This,
   12142         const D3D11_COUNTER_DESC *pCounterDesc,
   12143         ID3D11Counter **ppCounter);
   12144 
   12145     HRESULT (STDMETHODCALLTYPE *CreateDeferredContext)(
   12146         ID3D11Device* This,
   12147         UINT ContextFlags,
   12148         ID3D11DeviceContext **ppDeferredContext);
   12149 
   12150     HRESULT (STDMETHODCALLTYPE *OpenSharedResource)(
   12151         ID3D11Device* This,
   12152         HANDLE hResource,
   12153         REFIID ReturnedInterface,
   12154         void **ppResource);
   12155 
   12156     HRESULT (STDMETHODCALLTYPE *CheckFormatSupport)(
   12157         ID3D11Device* This,
   12158         DXGI_FORMAT Format,
   12159         UINT *pFormatSupport);
   12160 
   12161     HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels)(
   12162         ID3D11Device* This,
   12163         DXGI_FORMAT Format,
   12164         UINT SampleCount,
   12165         UINT *pNumQualityLevels);
   12166 
   12167     void (STDMETHODCALLTYPE *CheckCounterInfo)(
   12168         ID3D11Device* This,
   12169         D3D11_COUNTER_INFO *pCounterInfo);
   12170 
   12171     HRESULT (STDMETHODCALLTYPE *CheckCounter)(
   12172         ID3D11Device* This,
   12173         const D3D11_COUNTER_DESC *pDesc,
   12174         D3D11_COUNTER_TYPE *pType,
   12175         UINT *pActiveCounters,
   12176         LPSTR szName,
   12177         UINT *pNameLength,
   12178         LPSTR szUnits,
   12179         UINT *pUnitsLength,
   12180         LPSTR szDescription,
   12181         UINT *pDescriptionLength);
   12182 
   12183     HRESULT (STDMETHODCALLTYPE *CheckFeatureSupport)(
   12184         ID3D11Device* This,
   12185         D3D11_FEATURE Feature,
   12186         void *pFeatureSupportData,
   12187         UINT FeatureSupportDataSize);
   12188 
   12189     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
   12190         ID3D11Device* This,
   12191         REFGUID guid,
   12192         UINT *pDataSize,
   12193         void *pData);
   12194 
   12195     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
   12196         ID3D11Device* This,
   12197         REFGUID guid,
   12198         UINT DataSize,
   12199         const void *pData);
   12200 
   12201     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
   12202         ID3D11Device* This,
   12203         REFGUID guid,
   12204         const IUnknown *pData);
   12205 
   12206     D3D_FEATURE_LEVEL (STDMETHODCALLTYPE *GetFeatureLevel)(
   12207         ID3D11Device* This);
   12208 
   12209     UINT (STDMETHODCALLTYPE *GetCreationFlags)(
   12210         ID3D11Device* This);
   12211 
   12212     HRESULT (STDMETHODCALLTYPE *GetDeviceRemovedReason)(
   12213         ID3D11Device* This);
   12214 
   12215     void (STDMETHODCALLTYPE *GetImmediateContext)(
   12216         ID3D11Device* This,
   12217         ID3D11DeviceContext **ppImmediateContext);
   12218 
   12219     HRESULT (STDMETHODCALLTYPE *SetExceptionMode)(
   12220         ID3D11Device* This,
   12221         UINT RaiseFlags);
   12222 
   12223     UINT (STDMETHODCALLTYPE *GetExceptionMode)(
   12224         ID3D11Device* This);
   12225 
   12226     END_INTERFACE
   12227 } ID3D11DeviceVtbl;
   12228 interface ID3D11Device {
   12229     CONST_VTBL ID3D11DeviceVtbl* lpVtbl;
   12230 };
   12231 
   12232 #ifdef COBJMACROS
   12233 #ifndef WIDL_C_INLINE_WRAPPERS
   12234 /*** IUnknown methods ***/
   12235 #define ID3D11Device_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   12236 #define ID3D11Device_AddRef(This) (This)->lpVtbl->AddRef(This)
   12237 #define ID3D11Device_Release(This) (This)->lpVtbl->Release(This)
   12238 /*** ID3D11Device methods ***/
   12239 #define ID3D11Device_CreateBuffer(This,pDesc,pInitialData,ppBuffer) (This)->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer)
   12240 #define ID3D11Device_CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) (This)->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D)
   12241 #define ID3D11Device_CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) (This)->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D)
   12242 #define ID3D11Device_CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) (This)->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D)
   12243 #define ID3D11Device_CreateShaderResourceView(This,pResource,pDesc,ppSRView) (This)->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView)
   12244 #define ID3D11Device_CreateUnorderedAccessView(This,pResource,pDesc,ppUAView) (This)->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView)
   12245 #define ID3D11Device_CreateRenderTargetView(This,pResource,pDesc,ppRTView) (This)->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView)
   12246 #define ID3D11Device_CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) (This)->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView)
   12247 #define ID3D11Device_CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) (This)->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout)
   12248 #define ID3D11Device_CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader) (This)->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader)
   12249 #define ID3D11Device_CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader)
   12250 #define ID3D11Device_CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader)
   12251 #define ID3D11Device_CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader) (This)->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader)
   12252 #define ID3D11Device_CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader) (This)->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader)
   12253 #define ID3D11Device_CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader) (This)->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader)
   12254 #define ID3D11Device_CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader) (This)->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader)
   12255 #define ID3D11Device_CreateClassLinkage(This,ppLinkage) (This)->lpVtbl->CreateClassLinkage(This,ppLinkage)
   12256 #define ID3D11Device_CreateBlendState(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState)
   12257 #define ID3D11Device_CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) (This)->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState)
   12258 #define ID3D11Device_CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState)
   12259 #define ID3D11Device_CreateSamplerState(This,pSamplerDesc,ppSamplerState) (This)->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState)
   12260 #define ID3D11Device_CreateQuery(This,pQueryDesc,ppQuery) (This)->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery)
   12261 #define ID3D11Device_CreatePredicate(This,pPredicateDesc,ppPredicate) (This)->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate)
   12262 #define ID3D11Device_CreateCounter(This,pCounterDesc,ppCounter) (This)->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter)
   12263 #define ID3D11Device_CreateDeferredContext(This,ContextFlags,ppDeferredContext) (This)->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext)
   12264 #define ID3D11Device_OpenSharedResource(This,hResource,ReturnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource)
   12265 #define ID3D11Device_CheckFormatSupport(This,Format,pFormatSupport) (This)->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport)
   12266 #define ID3D11Device_CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) (This)->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels)
   12267 #define ID3D11Device_CheckCounterInfo(This,pCounterInfo) (This)->lpVtbl->CheckCounterInfo(This,pCounterInfo)
   12268 #define ID3D11Device_CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) (This)->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength)
   12269 #define ID3D11Device_CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) (This)->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize)
   12270 #define ID3D11Device_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
   12271 #define ID3D11Device_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
   12272 #define ID3D11Device_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
   12273 #define ID3D11Device_GetFeatureLevel(This) (This)->lpVtbl->GetFeatureLevel(This)
   12274 #define ID3D11Device_GetCreationFlags(This) (This)->lpVtbl->GetCreationFlags(This)
   12275 #define ID3D11Device_GetDeviceRemovedReason(This) (This)->lpVtbl->GetDeviceRemovedReason(This)
   12276 #define ID3D11Device_GetImmediateContext(This,ppImmediateContext) (This)->lpVtbl->GetImmediateContext(This,ppImmediateContext)
   12277 #define ID3D11Device_SetExceptionMode(This,RaiseFlags) (This)->lpVtbl->SetExceptionMode(This,RaiseFlags)
   12278 #define ID3D11Device_GetExceptionMode(This) (This)->lpVtbl->GetExceptionMode(This)
   12279 #else
   12280 /*** IUnknown methods ***/
   12281 static FORCEINLINE HRESULT ID3D11Device_QueryInterface(ID3D11Device* This,REFIID riid,void **ppvObject) {
   12282     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   12283 }
   12284 static FORCEINLINE ULONG ID3D11Device_AddRef(ID3D11Device* This) {
   12285     return This->lpVtbl->AddRef(This);
   12286 }
   12287 static FORCEINLINE ULONG ID3D11Device_Release(ID3D11Device* This) {
   12288     return This->lpVtbl->Release(This);
   12289 }
   12290 /*** ID3D11Device methods ***/
   12291 static FORCEINLINE HRESULT ID3D11Device_CreateBuffer(ID3D11Device* This,const D3D11_BUFFER_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Buffer **ppBuffer) {
   12292     return This->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer);
   12293 }
   12294 static FORCEINLINE HRESULT ID3D11Device_CreateTexture1D(ID3D11Device* This,const D3D11_TEXTURE1D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture1D **ppTexture1D) {
   12295     return This->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D);
   12296 }
   12297 static FORCEINLINE HRESULT ID3D11Device_CreateTexture2D(ID3D11Device* This,const D3D11_TEXTURE2D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture2D **ppTexture2D) {
   12298     return This->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D);
   12299 }
   12300 static FORCEINLINE HRESULT ID3D11Device_CreateTexture3D(ID3D11Device* This,const D3D11_TEXTURE3D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture3D **ppTexture3D) {
   12301     return This->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D);
   12302 }
   12303 static FORCEINLINE HRESULT ID3D11Device_CreateShaderResourceView(ID3D11Device* This,ID3D11Resource *pResource,const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc,ID3D11ShaderResourceView **ppSRView) {
   12304     return This->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView);
   12305 }
   12306 static FORCEINLINE HRESULT ID3D11Device_CreateUnorderedAccessView(ID3D11Device* This,ID3D11Resource *pResource,const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc,ID3D11UnorderedAccessView **ppUAView) {
   12307     return This->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView);
   12308 }
   12309 static FORCEINLINE HRESULT ID3D11Device_CreateRenderTargetView(ID3D11Device* This,ID3D11Resource *pResource,const D3D11_RENDER_TARGET_VIEW_DESC *pDesc,ID3D11RenderTargetView **ppRTView) {
   12310     return This->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView);
   12311 }
   12312 static FORCEINLINE HRESULT ID3D11Device_CreateDepthStencilView(ID3D11Device* This,ID3D11Resource *pResource,const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc,ID3D11DepthStencilView **ppDepthStencilView) {
   12313     return This->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView);
   12314 }
   12315 static FORCEINLINE HRESULT ID3D11Device_CreateInputLayout(ID3D11Device* This,const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs,UINT NumElements,const void *pShaderBytecodeWithInputSignature,SIZE_T BytecodeLength,ID3D11InputLayout **ppInputLayout) {
   12316     return This->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout);
   12317 }
   12318 static FORCEINLINE HRESULT ID3D11Device_CreateVertexShader(ID3D11Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11VertexShader **ppVertexShader) {
   12319     return This->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader);
   12320 }
   12321 static FORCEINLINE HRESULT ID3D11Device_CreateGeometryShader(ID3D11Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11GeometryShader **ppGeometryShader) {
   12322     return This->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader);
   12323 }
   12324 static FORCEINLINE HRESULT ID3D11Device_CreateGeometryShaderWithStreamOutput(ID3D11Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,const D3D11_SO_DECLARATION_ENTRY *pSODeclaration,UINT NumEntries,const UINT *pBufferStrides,UINT NumStrides,UINT RasterizedStream,ID3D11ClassLinkage *pClassLinkage,ID3D11GeometryShader **ppGeometryShader) {
   12325     return This->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader);
   12326 }
   12327 static FORCEINLINE HRESULT ID3D11Device_CreatePixelShader(ID3D11Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11PixelShader **ppPixelShader) {
   12328     return This->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader);
   12329 }
   12330 static FORCEINLINE HRESULT ID3D11Device_CreateHullShader(ID3D11Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11HullShader **ppHullShader) {
   12331     return This->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader);
   12332 }
   12333 static FORCEINLINE HRESULT ID3D11Device_CreateDomainShader(ID3D11Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11DomainShader **ppDomainShader) {
   12334     return This->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader);
   12335 }
   12336 static FORCEINLINE HRESULT ID3D11Device_CreateComputeShader(ID3D11Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11ComputeShader **ppComputeShader) {
   12337     return This->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader);
   12338 }
   12339 static FORCEINLINE HRESULT ID3D11Device_CreateClassLinkage(ID3D11Device* This,ID3D11ClassLinkage **ppLinkage) {
   12340     return This->lpVtbl->CreateClassLinkage(This,ppLinkage);
   12341 }
   12342 static FORCEINLINE HRESULT ID3D11Device_CreateBlendState(ID3D11Device* This,const D3D11_BLEND_DESC *pBlendStateDesc,ID3D11BlendState **ppBlendState) {
   12343     return This->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState);
   12344 }
   12345 static FORCEINLINE HRESULT ID3D11Device_CreateDepthStencilState(ID3D11Device* This,const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc,ID3D11DepthStencilState **ppDepthStencilState) {
   12346     return This->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState);
   12347 }
   12348 static FORCEINLINE HRESULT ID3D11Device_CreateRasterizerState(ID3D11Device* This,const D3D11_RASTERIZER_DESC *pRasterizerDesc,ID3D11RasterizerState **ppRasterizerState) {
   12349     return This->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState);
   12350 }
   12351 static FORCEINLINE HRESULT ID3D11Device_CreateSamplerState(ID3D11Device* This,const D3D11_SAMPLER_DESC *pSamplerDesc,ID3D11SamplerState **ppSamplerState) {
   12352     return This->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState);
   12353 }
   12354 static FORCEINLINE HRESULT ID3D11Device_CreateQuery(ID3D11Device* This,const D3D11_QUERY_DESC *pQueryDesc,ID3D11Query **ppQuery) {
   12355     return This->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery);
   12356 }
   12357 static FORCEINLINE HRESULT ID3D11Device_CreatePredicate(ID3D11Device* This,const D3D11_QUERY_DESC *pPredicateDesc,ID3D11Predicate **ppPredicate) {
   12358     return This->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate);
   12359 }
   12360 static FORCEINLINE HRESULT ID3D11Device_CreateCounter(ID3D11Device* This,const D3D11_COUNTER_DESC *pCounterDesc,ID3D11Counter **ppCounter) {
   12361     return This->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter);
   12362 }
   12363 static FORCEINLINE HRESULT ID3D11Device_CreateDeferredContext(ID3D11Device* This,UINT ContextFlags,ID3D11DeviceContext **ppDeferredContext) {
   12364     return This->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext);
   12365 }
   12366 static FORCEINLINE HRESULT ID3D11Device_OpenSharedResource(ID3D11Device* This,HANDLE hResource,REFIID ReturnedInterface,void **ppResource) {
   12367     return This->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource);
   12368 }
   12369 static FORCEINLINE HRESULT ID3D11Device_CheckFormatSupport(ID3D11Device* This,DXGI_FORMAT Format,UINT *pFormatSupport) {
   12370     return This->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport);
   12371 }
   12372 static FORCEINLINE HRESULT ID3D11Device_CheckMultisampleQualityLevels(ID3D11Device* This,DXGI_FORMAT Format,UINT SampleCount,UINT *pNumQualityLevels) {
   12373     return This->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels);
   12374 }
   12375 static FORCEINLINE void ID3D11Device_CheckCounterInfo(ID3D11Device* This,D3D11_COUNTER_INFO *pCounterInfo) {
   12376     This->lpVtbl->CheckCounterInfo(This,pCounterInfo);
   12377 }
   12378 static FORCEINLINE HRESULT ID3D11Device_CheckCounter(ID3D11Device* This,const D3D11_COUNTER_DESC *pDesc,D3D11_COUNTER_TYPE *pType,UINT *pActiveCounters,LPSTR szName,UINT *pNameLength,LPSTR szUnits,UINT *pUnitsLength,LPSTR szDescription,UINT *pDescriptionLength) {
   12379     return This->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength);
   12380 }
   12381 static FORCEINLINE HRESULT ID3D11Device_CheckFeatureSupport(ID3D11Device* This,D3D11_FEATURE Feature,void *pFeatureSupportData,UINT FeatureSupportDataSize) {
   12382     return This->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize);
   12383 }
   12384 static FORCEINLINE HRESULT ID3D11Device_GetPrivateData(ID3D11Device* This,REFGUID guid,UINT *pDataSize,void *pData) {
   12385     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
   12386 }
   12387 static FORCEINLINE HRESULT ID3D11Device_SetPrivateData(ID3D11Device* This,REFGUID guid,UINT DataSize,const void *pData) {
   12388     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
   12389 }
   12390 static FORCEINLINE HRESULT ID3D11Device_SetPrivateDataInterface(ID3D11Device* This,REFGUID guid,const IUnknown *pData) {
   12391     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
   12392 }
   12393 static FORCEINLINE D3D_FEATURE_LEVEL ID3D11Device_GetFeatureLevel(ID3D11Device* This) {
   12394     return This->lpVtbl->GetFeatureLevel(This);
   12395 }
   12396 static FORCEINLINE UINT ID3D11Device_GetCreationFlags(ID3D11Device* This) {
   12397     return This->lpVtbl->GetCreationFlags(This);
   12398 }
   12399 static FORCEINLINE HRESULT ID3D11Device_GetDeviceRemovedReason(ID3D11Device* This) {
   12400     return This->lpVtbl->GetDeviceRemovedReason(This);
   12401 }
   12402 static FORCEINLINE void ID3D11Device_GetImmediateContext(ID3D11Device* This,ID3D11DeviceContext **ppImmediateContext) {
   12403     This->lpVtbl->GetImmediateContext(This,ppImmediateContext);
   12404 }
   12405 static FORCEINLINE HRESULT ID3D11Device_SetExceptionMode(ID3D11Device* This,UINT RaiseFlags) {
   12406     return This->lpVtbl->SetExceptionMode(This,RaiseFlags);
   12407 }
   12408 static FORCEINLINE UINT ID3D11Device_GetExceptionMode(ID3D11Device* This) {
   12409     return This->lpVtbl->GetExceptionMode(This);
   12410 }
   12411 #endif
   12412 #endif
   12413 
   12414 #endif
   12415 
   12416 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateBuffer_Proxy(
   12417     ID3D11Device* This,
   12418     const D3D11_BUFFER_DESC *pDesc,
   12419     const D3D11_SUBRESOURCE_DATA *pInitialData,
   12420     ID3D11Buffer **ppBuffer);
   12421 void __RPC_STUB ID3D11Device_CreateBuffer_Stub(
   12422     IRpcStubBuffer* This,
   12423     IRpcChannelBuffer* pRpcChannelBuffer,
   12424     PRPC_MESSAGE pRpcMessage,
   12425     DWORD* pdwStubPhase);
   12426 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateTexture1D_Proxy(
   12427     ID3D11Device* This,
   12428     const D3D11_TEXTURE1D_DESC *pDesc,
   12429     const D3D11_SUBRESOURCE_DATA *pInitialData,
   12430     ID3D11Texture1D **ppTexture1D);
   12431 void __RPC_STUB ID3D11Device_CreateTexture1D_Stub(
   12432     IRpcStubBuffer* This,
   12433     IRpcChannelBuffer* pRpcChannelBuffer,
   12434     PRPC_MESSAGE pRpcMessage,
   12435     DWORD* pdwStubPhase);
   12436 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateTexture2D_Proxy(
   12437     ID3D11Device* This,
   12438     const D3D11_TEXTURE2D_DESC *pDesc,
   12439     const D3D11_SUBRESOURCE_DATA *pInitialData,
   12440     ID3D11Texture2D **ppTexture2D);
   12441 void __RPC_STUB ID3D11Device_CreateTexture2D_Stub(
   12442     IRpcStubBuffer* This,
   12443     IRpcChannelBuffer* pRpcChannelBuffer,
   12444     PRPC_MESSAGE pRpcMessage,
   12445     DWORD* pdwStubPhase);
   12446 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateTexture3D_Proxy(
   12447     ID3D11Device* This,
   12448     const D3D11_TEXTURE3D_DESC *pDesc,
   12449     const D3D11_SUBRESOURCE_DATA *pInitialData,
   12450     ID3D11Texture3D **ppTexture3D);
   12451 void __RPC_STUB ID3D11Device_CreateTexture3D_Stub(
   12452     IRpcStubBuffer* This,
   12453     IRpcChannelBuffer* pRpcChannelBuffer,
   12454     PRPC_MESSAGE pRpcMessage,
   12455     DWORD* pdwStubPhase);
   12456 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateShaderResourceView_Proxy(
   12457     ID3D11Device* This,
   12458     ID3D11Resource *pResource,
   12459     const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc,
   12460     ID3D11ShaderResourceView **ppSRView);
   12461 void __RPC_STUB ID3D11Device_CreateShaderResourceView_Stub(
   12462     IRpcStubBuffer* This,
   12463     IRpcChannelBuffer* pRpcChannelBuffer,
   12464     PRPC_MESSAGE pRpcMessage,
   12465     DWORD* pdwStubPhase);
   12466 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateUnorderedAccessView_Proxy(
   12467     ID3D11Device* This,
   12468     ID3D11Resource *pResource,
   12469     const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc,
   12470     ID3D11UnorderedAccessView **ppUAView);
   12471 void __RPC_STUB ID3D11Device_CreateUnorderedAccessView_Stub(
   12472     IRpcStubBuffer* This,
   12473     IRpcChannelBuffer* pRpcChannelBuffer,
   12474     PRPC_MESSAGE pRpcMessage,
   12475     DWORD* pdwStubPhase);
   12476 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateRenderTargetView_Proxy(
   12477     ID3D11Device* This,
   12478     ID3D11Resource *pResource,
   12479     const D3D11_RENDER_TARGET_VIEW_DESC *pDesc,
   12480     ID3D11RenderTargetView **ppRTView);
   12481 void __RPC_STUB ID3D11Device_CreateRenderTargetView_Stub(
   12482     IRpcStubBuffer* This,
   12483     IRpcChannelBuffer* pRpcChannelBuffer,
   12484     PRPC_MESSAGE pRpcMessage,
   12485     DWORD* pdwStubPhase);
   12486 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateDepthStencilView_Proxy(
   12487     ID3D11Device* This,
   12488     ID3D11Resource *pResource,
   12489     const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc,
   12490     ID3D11DepthStencilView **ppDepthStencilView);
   12491 void __RPC_STUB ID3D11Device_CreateDepthStencilView_Stub(
   12492     IRpcStubBuffer* This,
   12493     IRpcChannelBuffer* pRpcChannelBuffer,
   12494     PRPC_MESSAGE pRpcMessage,
   12495     DWORD* pdwStubPhase);
   12496 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateInputLayout_Proxy(
   12497     ID3D11Device* This,
   12498     const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs,
   12499     UINT NumElements,
   12500     const void *pShaderBytecodeWithInputSignature,
   12501     SIZE_T BytecodeLength,
   12502     ID3D11InputLayout **ppInputLayout);
   12503 void __RPC_STUB ID3D11Device_CreateInputLayout_Stub(
   12504     IRpcStubBuffer* This,
   12505     IRpcChannelBuffer* pRpcChannelBuffer,
   12506     PRPC_MESSAGE pRpcMessage,
   12507     DWORD* pdwStubPhase);
   12508 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateVertexShader_Proxy(
   12509     ID3D11Device* This,
   12510     const void *pShaderBytecode,
   12511     SIZE_T BytecodeLength,
   12512     ID3D11ClassLinkage *pClassLinkage,
   12513     ID3D11VertexShader **ppVertexShader);
   12514 void __RPC_STUB ID3D11Device_CreateVertexShader_Stub(
   12515     IRpcStubBuffer* This,
   12516     IRpcChannelBuffer* pRpcChannelBuffer,
   12517     PRPC_MESSAGE pRpcMessage,
   12518     DWORD* pdwStubPhase);
   12519 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateGeometryShader_Proxy(
   12520     ID3D11Device* This,
   12521     const void *pShaderBytecode,
   12522     SIZE_T BytecodeLength,
   12523     ID3D11ClassLinkage *pClassLinkage,
   12524     ID3D11GeometryShader **ppGeometryShader);
   12525 void __RPC_STUB ID3D11Device_CreateGeometryShader_Stub(
   12526     IRpcStubBuffer* This,
   12527     IRpcChannelBuffer* pRpcChannelBuffer,
   12528     PRPC_MESSAGE pRpcMessage,
   12529     DWORD* pdwStubPhase);
   12530 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateGeometryShaderWithStreamOutput_Proxy(
   12531     ID3D11Device* This,
   12532     const void *pShaderBytecode,
   12533     SIZE_T BytecodeLength,
   12534     const D3D11_SO_DECLARATION_ENTRY *pSODeclaration,
   12535     UINT NumEntries,
   12536     const UINT *pBufferStrides,
   12537     UINT NumStrides,
   12538     UINT RasterizedStream,
   12539     ID3D11ClassLinkage *pClassLinkage,
   12540     ID3D11GeometryShader **ppGeometryShader);
   12541 void __RPC_STUB ID3D11Device_CreateGeometryShaderWithStreamOutput_Stub(
   12542     IRpcStubBuffer* This,
   12543     IRpcChannelBuffer* pRpcChannelBuffer,
   12544     PRPC_MESSAGE pRpcMessage,
   12545     DWORD* pdwStubPhase);
   12546 HRESULT STDMETHODCALLTYPE ID3D11Device_CreatePixelShader_Proxy(
   12547     ID3D11Device* This,
   12548     const void *pShaderBytecode,
   12549     SIZE_T BytecodeLength,
   12550     ID3D11ClassLinkage *pClassLinkage,
   12551     ID3D11PixelShader **ppPixelShader);
   12552 void __RPC_STUB ID3D11Device_CreatePixelShader_Stub(
   12553     IRpcStubBuffer* This,
   12554     IRpcChannelBuffer* pRpcChannelBuffer,
   12555     PRPC_MESSAGE pRpcMessage,
   12556     DWORD* pdwStubPhase);
   12557 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateHullShader_Proxy(
   12558     ID3D11Device* This,
   12559     const void *pShaderBytecode,
   12560     SIZE_T BytecodeLength,
   12561     ID3D11ClassLinkage *pClassLinkage,
   12562     ID3D11HullShader **ppHullShader);
   12563 void __RPC_STUB ID3D11Device_CreateHullShader_Stub(
   12564     IRpcStubBuffer* This,
   12565     IRpcChannelBuffer* pRpcChannelBuffer,
   12566     PRPC_MESSAGE pRpcMessage,
   12567     DWORD* pdwStubPhase);
   12568 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateDomainShader_Proxy(
   12569     ID3D11Device* This,
   12570     const void *pShaderBytecode,
   12571     SIZE_T BytecodeLength,
   12572     ID3D11ClassLinkage *pClassLinkage,
   12573     ID3D11DomainShader **ppDomainShader);
   12574 void __RPC_STUB ID3D11Device_CreateDomainShader_Stub(
   12575     IRpcStubBuffer* This,
   12576     IRpcChannelBuffer* pRpcChannelBuffer,
   12577     PRPC_MESSAGE pRpcMessage,
   12578     DWORD* pdwStubPhase);
   12579 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateComputeShader_Proxy(
   12580     ID3D11Device* This,
   12581     const void *pShaderBytecode,
   12582     SIZE_T BytecodeLength,
   12583     ID3D11ClassLinkage *pClassLinkage,
   12584     ID3D11ComputeShader **ppComputeShader);
   12585 void __RPC_STUB ID3D11Device_CreateComputeShader_Stub(
   12586     IRpcStubBuffer* This,
   12587     IRpcChannelBuffer* pRpcChannelBuffer,
   12588     PRPC_MESSAGE pRpcMessage,
   12589     DWORD* pdwStubPhase);
   12590 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateClassLinkage_Proxy(
   12591     ID3D11Device* This,
   12592     ID3D11ClassLinkage **ppLinkage);
   12593 void __RPC_STUB ID3D11Device_CreateClassLinkage_Stub(
   12594     IRpcStubBuffer* This,
   12595     IRpcChannelBuffer* pRpcChannelBuffer,
   12596     PRPC_MESSAGE pRpcMessage,
   12597     DWORD* pdwStubPhase);
   12598 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateBlendState_Proxy(
   12599     ID3D11Device* This,
   12600     const D3D11_BLEND_DESC *pBlendStateDesc,
   12601     ID3D11BlendState **ppBlendState);
   12602 void __RPC_STUB ID3D11Device_CreateBlendState_Stub(
   12603     IRpcStubBuffer* This,
   12604     IRpcChannelBuffer* pRpcChannelBuffer,
   12605     PRPC_MESSAGE pRpcMessage,
   12606     DWORD* pdwStubPhase);
   12607 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateDepthStencilState_Proxy(
   12608     ID3D11Device* This,
   12609     const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc,
   12610     ID3D11DepthStencilState **ppDepthStencilState);
   12611 void __RPC_STUB ID3D11Device_CreateDepthStencilState_Stub(
   12612     IRpcStubBuffer* This,
   12613     IRpcChannelBuffer* pRpcChannelBuffer,
   12614     PRPC_MESSAGE pRpcMessage,
   12615     DWORD* pdwStubPhase);
   12616 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateRasterizerState_Proxy(
   12617     ID3D11Device* This,
   12618     const D3D11_RASTERIZER_DESC *pRasterizerDesc,
   12619     ID3D11RasterizerState **ppRasterizerState);
   12620 void __RPC_STUB ID3D11Device_CreateRasterizerState_Stub(
   12621     IRpcStubBuffer* This,
   12622     IRpcChannelBuffer* pRpcChannelBuffer,
   12623     PRPC_MESSAGE pRpcMessage,
   12624     DWORD* pdwStubPhase);
   12625 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateSamplerState_Proxy(
   12626     ID3D11Device* This,
   12627     const D3D11_SAMPLER_DESC *pSamplerDesc,
   12628     ID3D11SamplerState **ppSamplerState);
   12629 void __RPC_STUB ID3D11Device_CreateSamplerState_Stub(
   12630     IRpcStubBuffer* This,
   12631     IRpcChannelBuffer* pRpcChannelBuffer,
   12632     PRPC_MESSAGE pRpcMessage,
   12633     DWORD* pdwStubPhase);
   12634 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateQuery_Proxy(
   12635     ID3D11Device* This,
   12636     const D3D11_QUERY_DESC *pQueryDesc,
   12637     ID3D11Query **ppQuery);
   12638 void __RPC_STUB ID3D11Device_CreateQuery_Stub(
   12639     IRpcStubBuffer* This,
   12640     IRpcChannelBuffer* pRpcChannelBuffer,
   12641     PRPC_MESSAGE pRpcMessage,
   12642     DWORD* pdwStubPhase);
   12643 HRESULT STDMETHODCALLTYPE ID3D11Device_CreatePredicate_Proxy(
   12644     ID3D11Device* This,
   12645     const D3D11_QUERY_DESC *pPredicateDesc,
   12646     ID3D11Predicate **ppPredicate);
   12647 void __RPC_STUB ID3D11Device_CreatePredicate_Stub(
   12648     IRpcStubBuffer* This,
   12649     IRpcChannelBuffer* pRpcChannelBuffer,
   12650     PRPC_MESSAGE pRpcMessage,
   12651     DWORD* pdwStubPhase);
   12652 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateCounter_Proxy(
   12653     ID3D11Device* This,
   12654     const D3D11_COUNTER_DESC *pCounterDesc,
   12655     ID3D11Counter **ppCounter);
   12656 void __RPC_STUB ID3D11Device_CreateCounter_Stub(
   12657     IRpcStubBuffer* This,
   12658     IRpcChannelBuffer* pRpcChannelBuffer,
   12659     PRPC_MESSAGE pRpcMessage,
   12660     DWORD* pdwStubPhase);
   12661 HRESULT STDMETHODCALLTYPE ID3D11Device_CreateDeferredContext_Proxy(
   12662     ID3D11Device* This,
   12663     UINT ContextFlags,
   12664     ID3D11DeviceContext **ppDeferredContext);
   12665 void __RPC_STUB ID3D11Device_CreateDeferredContext_Stub(
   12666     IRpcStubBuffer* This,
   12667     IRpcChannelBuffer* pRpcChannelBuffer,
   12668     PRPC_MESSAGE pRpcMessage,
   12669     DWORD* pdwStubPhase);
   12670 HRESULT STDMETHODCALLTYPE ID3D11Device_OpenSharedResource_Proxy(
   12671     ID3D11Device* This,
   12672     HANDLE hResource,
   12673     REFIID ReturnedInterface,
   12674     void **ppResource);
   12675 void __RPC_STUB ID3D11Device_OpenSharedResource_Stub(
   12676     IRpcStubBuffer* This,
   12677     IRpcChannelBuffer* pRpcChannelBuffer,
   12678     PRPC_MESSAGE pRpcMessage,
   12679     DWORD* pdwStubPhase);
   12680 HRESULT STDMETHODCALLTYPE ID3D11Device_CheckFormatSupport_Proxy(
   12681     ID3D11Device* This,
   12682     DXGI_FORMAT Format,
   12683     UINT *pFormatSupport);
   12684 void __RPC_STUB ID3D11Device_CheckFormatSupport_Stub(
   12685     IRpcStubBuffer* This,
   12686     IRpcChannelBuffer* pRpcChannelBuffer,
   12687     PRPC_MESSAGE pRpcMessage,
   12688     DWORD* pdwStubPhase);
   12689 HRESULT STDMETHODCALLTYPE ID3D11Device_CheckMultisampleQualityLevels_Proxy(
   12690     ID3D11Device* This,
   12691     DXGI_FORMAT Format,
   12692     UINT SampleCount,
   12693     UINT *pNumQualityLevels);
   12694 void __RPC_STUB ID3D11Device_CheckMultisampleQualityLevels_Stub(
   12695     IRpcStubBuffer* This,
   12696     IRpcChannelBuffer* pRpcChannelBuffer,
   12697     PRPC_MESSAGE pRpcMessage,
   12698     DWORD* pdwStubPhase);
   12699 void STDMETHODCALLTYPE ID3D11Device_CheckCounterInfo_Proxy(
   12700     ID3D11Device* This,
   12701     D3D11_COUNTER_INFO *pCounterInfo);
   12702 void __RPC_STUB ID3D11Device_CheckCounterInfo_Stub(
   12703     IRpcStubBuffer* This,
   12704     IRpcChannelBuffer* pRpcChannelBuffer,
   12705     PRPC_MESSAGE pRpcMessage,
   12706     DWORD* pdwStubPhase);
   12707 HRESULT STDMETHODCALLTYPE ID3D11Device_CheckCounter_Proxy(
   12708     ID3D11Device* This,
   12709     const D3D11_COUNTER_DESC *pDesc,
   12710     D3D11_COUNTER_TYPE *pType,
   12711     UINT *pActiveCounters,
   12712     LPSTR szName,
   12713     UINT *pNameLength,
   12714     LPSTR szUnits,
   12715     UINT *pUnitsLength,
   12716     LPSTR szDescription,
   12717     UINT *pDescriptionLength);
   12718 void __RPC_STUB ID3D11Device_CheckCounter_Stub(
   12719     IRpcStubBuffer* This,
   12720     IRpcChannelBuffer* pRpcChannelBuffer,
   12721     PRPC_MESSAGE pRpcMessage,
   12722     DWORD* pdwStubPhase);
   12723 HRESULT STDMETHODCALLTYPE ID3D11Device_CheckFeatureSupport_Proxy(
   12724     ID3D11Device* This,
   12725     D3D11_FEATURE Feature,
   12726     void *pFeatureSupportData,
   12727     UINT FeatureSupportDataSize);
   12728 void __RPC_STUB ID3D11Device_CheckFeatureSupport_Stub(
   12729     IRpcStubBuffer* This,
   12730     IRpcChannelBuffer* pRpcChannelBuffer,
   12731     PRPC_MESSAGE pRpcMessage,
   12732     DWORD* pdwStubPhase);
   12733 HRESULT STDMETHODCALLTYPE ID3D11Device_GetPrivateData_Proxy(
   12734     ID3D11Device* This,
   12735     REFGUID guid,
   12736     UINT *pDataSize,
   12737     void *pData);
   12738 void __RPC_STUB ID3D11Device_GetPrivateData_Stub(
   12739     IRpcStubBuffer* This,
   12740     IRpcChannelBuffer* pRpcChannelBuffer,
   12741     PRPC_MESSAGE pRpcMessage,
   12742     DWORD* pdwStubPhase);
   12743 HRESULT STDMETHODCALLTYPE ID3D11Device_SetPrivateData_Proxy(
   12744     ID3D11Device* This,
   12745     REFGUID guid,
   12746     UINT DataSize,
   12747     const void *pData);
   12748 void __RPC_STUB ID3D11Device_SetPrivateData_Stub(
   12749     IRpcStubBuffer* This,
   12750     IRpcChannelBuffer* pRpcChannelBuffer,
   12751     PRPC_MESSAGE pRpcMessage,
   12752     DWORD* pdwStubPhase);
   12753 HRESULT STDMETHODCALLTYPE ID3D11Device_SetPrivateDataInterface_Proxy(
   12754     ID3D11Device* This,
   12755     REFGUID guid,
   12756     const IUnknown *pData);
   12757 void __RPC_STUB ID3D11Device_SetPrivateDataInterface_Stub(
   12758     IRpcStubBuffer* This,
   12759     IRpcChannelBuffer* pRpcChannelBuffer,
   12760     PRPC_MESSAGE pRpcMessage,
   12761     DWORD* pdwStubPhase);
   12762 D3D_FEATURE_LEVEL STDMETHODCALLTYPE ID3D11Device_GetFeatureLevel_Proxy(
   12763     ID3D11Device* This);
   12764 void __RPC_STUB ID3D11Device_GetFeatureLevel_Stub(
   12765     IRpcStubBuffer* This,
   12766     IRpcChannelBuffer* pRpcChannelBuffer,
   12767     PRPC_MESSAGE pRpcMessage,
   12768     DWORD* pdwStubPhase);
   12769 UINT STDMETHODCALLTYPE ID3D11Device_GetCreationFlags_Proxy(
   12770     ID3D11Device* This);
   12771 void __RPC_STUB ID3D11Device_GetCreationFlags_Stub(
   12772     IRpcStubBuffer* This,
   12773     IRpcChannelBuffer* pRpcChannelBuffer,
   12774     PRPC_MESSAGE pRpcMessage,
   12775     DWORD* pdwStubPhase);
   12776 HRESULT STDMETHODCALLTYPE ID3D11Device_GetDeviceRemovedReason_Proxy(
   12777     ID3D11Device* This);
   12778 void __RPC_STUB ID3D11Device_GetDeviceRemovedReason_Stub(
   12779     IRpcStubBuffer* This,
   12780     IRpcChannelBuffer* pRpcChannelBuffer,
   12781     PRPC_MESSAGE pRpcMessage,
   12782     DWORD* pdwStubPhase);
   12783 void STDMETHODCALLTYPE ID3D11Device_GetImmediateContext_Proxy(
   12784     ID3D11Device* This,
   12785     ID3D11DeviceContext **ppImmediateContext);
   12786 void __RPC_STUB ID3D11Device_GetImmediateContext_Stub(
   12787     IRpcStubBuffer* This,
   12788     IRpcChannelBuffer* pRpcChannelBuffer,
   12789     PRPC_MESSAGE pRpcMessage,
   12790     DWORD* pdwStubPhase);
   12791 HRESULT STDMETHODCALLTYPE ID3D11Device_SetExceptionMode_Proxy(
   12792     ID3D11Device* This,
   12793     UINT RaiseFlags);
   12794 void __RPC_STUB ID3D11Device_SetExceptionMode_Stub(
   12795     IRpcStubBuffer* This,
   12796     IRpcChannelBuffer* pRpcChannelBuffer,
   12797     PRPC_MESSAGE pRpcMessage,
   12798     DWORD* pdwStubPhase);
   12799 UINT STDMETHODCALLTYPE ID3D11Device_GetExceptionMode_Proxy(
   12800     ID3D11Device* This);
   12801 void __RPC_STUB ID3D11Device_GetExceptionMode_Stub(
   12802     IRpcStubBuffer* This,
   12803     IRpcChannelBuffer* pRpcChannelBuffer,
   12804     PRPC_MESSAGE pRpcMessage,
   12805     DWORD* pdwStubPhase);
   12806 
   12807 #endif  /* __ID3D11Device_INTERFACE_DEFINED__ */
   12808 
   12809 typedef enum D3D11_CREATE_DEVICE_FLAG {
   12810     D3D11_CREATE_DEVICE_SINGLETHREADED = 0x1,
   12811     D3D11_CREATE_DEVICE_DEBUG = 0x2,
   12812     D3D11_CREATE_DEVICE_SWITCH_TO_REF = 0x4,
   12813     D3D11_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS = 0x8,
   12814     D3D11_CREATE_DEVICE_BGRA_SUPPORT = 0x20,
   12815     D3D11_CREATE_DEVICE_DEBUGGABLE = 0x40,
   12816     D3D11_CREATE_DEVICE_PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY = 0x80,
   12817     D3D11_CREATE_DEVICE_DISABLE_GPU_TIMEOUT = 0x100,
   12818     D3D11_CREATE_DEVICE_VIDEO_SUPPORT = 0x800
   12819 } D3D11_CREATE_DEVICE_FLAG;
   12820 #define D3D11_SDK_VERSION (7)
   12821 
   12822 #include <d3d10_1.h>
   12823 #ifndef D3D11_IGNORE_SDK_LAYERS
   12824 # include <d3d11sdklayers.h>
   12825 #endif
   12826 #include <d3d10misc.h>
   12827 #include <d3d10shader.h>
   12828 #include <d3d10effect.h>
   12829 #include <d3d10_1shader.h>
   12830 typedef HRESULT (WINAPI* PFN_D3D11_CREATE_DEVICE)(IDXGIAdapter*,D3D_DRIVER_TYPE,HMODULE,UINT,
   12831     const D3D_FEATURE_LEVEL*,UINT,UINT,ID3D11Device**,D3D_FEATURE_LEVEL*,ID3D11DeviceContext**);
   12832 HRESULT WINAPI D3D11CreateDevice(IDXGIAdapter*,D3D_DRIVER_TYPE,HMODULE,UINT,const D3D_FEATURE_LEVEL*,
   12833     UINT,UINT,ID3D11Device**,D3D_FEATURE_LEVEL*,ID3D11DeviceContext**);
   12834 typedef HRESULT (WINAPI *PFN_D3D11_CREATE_DEVICE_AND_SWAP_CHAIN)(IDXGIAdapter*,D3D_DRIVER_TYPE,HMODULE,UINT,
   12835     const D3D_FEATURE_LEVEL*,UINT,UINT,const DXGI_SWAP_CHAIN_DESC*,IDXGISwapChain**,ID3D11Device**,
   12836     D3D_FEATURE_LEVEL*,ID3D11DeviceContext**);
   12837 HRESULT __stdcall  D3D11CreateDeviceAndSwapChain(IDXGIAdapter *adapter,D3D_DRIVER_TYPE driver_type,HMODULE swrast,UINT flags,const D3D_FEATURE_LEVEL *feature_levels,UINT levels,UINT sdk_version,const DXGI_SWAP_CHAIN_DESC *swapchain_desc,IDXGISwapChain **swapchain,ID3D11Device **device,D3D_FEATURE_LEVEL *obtained_feature_level,ID3D11DeviceContext **immediate_context);
   12838 
   12839 /* Begin additional prototypes for all interfaces */
   12840 
   12841 
   12842 /* End additional prototypes */
   12843 
   12844 #ifdef __cplusplus
   12845 }
   12846 #endif
   12847 
   12848 #endif /* __d3d11_h__ */
   12849