1 /*** Autogenerated by WIDL 3.19 from direct-x/include/d3d11_2.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_2_h__
16 #define __d3d11_2_h__
17 
18 /* Forward declarations */
19 
20 #ifndef __ID3D11DeviceContext2_FWD_DEFINED__
21 #define __ID3D11DeviceContext2_FWD_DEFINED__
22 typedef interface ID3D11DeviceContext2 ID3D11DeviceContext2;
23 #ifdef __cplusplus
24 interface ID3D11DeviceContext2;
25 #endif /* __cplusplus */
26 #endif
27 
28 #ifndef __ID3D11Device2_FWD_DEFINED__
29 #define __ID3D11Device2_FWD_DEFINED__
30 typedef interface ID3D11Device2 ID3D11Device2;
31 #ifdef __cplusplus
32 interface ID3D11Device2;
33 #endif /* __cplusplus */
34 #endif
35 
36 /* Headers for imported files */
37 
38 #include <oaidl.h>
39 #include <ocidl.h>
40 #include <dxgi1_3.h>
41 #include <d3dcommon.h>
42 #include <d3d11_1.h>
43 
44 #ifdef __cplusplus
45 extern "C" {
46 #endif
47 
48 #define D3D11_PACKED_TILE (0xffffffff)
49 
50 typedef enum D3D11_TILE_MAPPING_FLAG {
51     D3D11_TILE_MAPPING_NO_OVERWRITE = 0x1
52 } D3D11_TILE_MAPPING_FLAG;
53 typedef enum D3D11_TILE_RANGE_FLAG {
54     D3D11_TILE_RANGE_NULL = 0x1,
55     D3D11_TILE_RANGE_SKIP = 0x2,
56     D3D11_TILE_RANGE_REUSE_SINGLE_TILE = 0x4
57 } D3D11_TILE_RANGE_FLAG;
58 typedef enum D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_FLAG {
59     D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_TILED_RESOURCE = 0x1
60 } D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_FLAG;
61 typedef enum D3D11_TILE_COPY_FLAG {
62     D3D11_TILE_COPY_NO_OVERWRITE = 0x1,
63     D3D11_TILE_COPY_LINEAR_BUFFER_TO_SWIZZLED_TILED_RESOURCE = 0x2,
64     D3D11_TILE_COPY_SWIZZLED_TILED_RESOURCE_TO_LINEAR_BUFFER = 0x4
65 } D3D11_TILE_COPY_FLAG;
66 typedef struct D3D11_TILED_RESOURCE_COORDINATE {
67     UINT X;
68     UINT Y;
69     UINT Z;
70     UINT Subresource;
71 } D3D11_TILED_RESOURCE_COORDINATE;
72 typedef struct D3D11_TILE_REGION_SIZE {
73     UINT NumTiles;
74     WINBOOL bUseBox;
75     UINT Width;
76     UINT16 Height;
77     UINT16 Depth;
78 } D3D11_TILE_REGION_SIZE;
79 typedef struct D3D11_SUBRESOURCE_TILING {
80     UINT WidthInTiles;
81     UINT16 HeightInTiles;
82     UINT16 DepthInTiles;
83     UINT StartTileIndexInOverallResource;
84 } D3D11_SUBRESOURCE_TILING;
85 typedef struct D3D11_TILE_SHAPE {
86     UINT WidthInTexels;
87     UINT HeightInTexels;
88     UINT DepthInTexels;
89 } D3D11_TILE_SHAPE;
90 typedef struct D3D11_PACKED_MIP_DESC {
91     UINT8 NumStandardMips;
92     UINT8 NumPackedMips;
93     UINT NumTilesForPackedMips;
94     UINT StartTileIndexInOverallResource;
95 } D3D11_PACKED_MIP_DESC;
96 /*****************************************************************************
97  * ID3D11DeviceContext2 interface
98  */
99 #ifndef __ID3D11DeviceContext2_INTERFACE_DEFINED__
100 #define __ID3D11DeviceContext2_INTERFACE_DEFINED__
101 
102 DEFINE_GUID(IID_ID3D11DeviceContext2, 0x420d5b32, 0xb90c, 0x4da4, 0xbe,0xf0, 0x35,0x9f,0x6a,0x24,0xa8,0x3a);
103 #if defined(__cplusplus) && !defined(CINTERFACE)
104 MIDL_INTERFACE("420d5b32-b90c-4da4-bef0-359f6a24a83a")
105 ID3D11DeviceContext2 : public ID3D11DeviceContext1
106 {
107     virtual HRESULT STDMETHODCALLTYPE UpdateTileMappings(
108         ID3D11Resource *resource,
109         UINT region_count,
110         const D3D11_TILED_RESOURCE_COORDINATE *region_start_coordinates,
111         const D3D11_TILE_REGION_SIZE *region_sizes,
112         ID3D11Buffer *pool,
113         UINT range_count,
114         const UINT *range_flags,
115         const UINT *pool_start_offsets,
116         const UINT *range_tile_counts,
117         UINT flags) = 0;
118 
119     virtual HRESULT STDMETHODCALLTYPE CopyTileMappings(
120         ID3D11Resource *dst_resource,
121         const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,
122         ID3D11Resource *src_resource,
123         const D3D11_TILED_RESOURCE_COORDINATE *src_start_coordinate,
124         const D3D11_TILE_REGION_SIZE *region_size,
125         UINT flags) = 0;
126 
127     virtual void STDMETHODCALLTYPE CopyTiles(
128         ID3D11Resource *resource,
129         const D3D11_TILED_RESOURCE_COORDINATE *start_coordinate,
130         const D3D11_TILE_REGION_SIZE *size,
131         ID3D11Buffer *buffer,
132         UINT64 start_offset,
133         UINT flags) = 0;
134 
135     virtual void STDMETHODCALLTYPE UpdateTiles(
136         ID3D11Resource *dst_resource,
137         const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,
138         const D3D11_TILE_REGION_SIZE *dst_region_size,
139         const void *src_data,
140         UINT flags) = 0;
141 
142     virtual HRESULT STDMETHODCALLTYPE ResizeTilePool(
143         ID3D11Buffer *pool,
144         UINT64 size) = 0;
145 
146     virtual void STDMETHODCALLTYPE TiledResourceBarrier(
147         ID3D11DeviceChild *before_barrier,
148         ID3D11DeviceChild *after_barrier) = 0;
149 
150     virtual WINBOOL STDMETHODCALLTYPE IsAnnotationEnabled(
151         ) = 0;
152 
153     virtual void STDMETHODCALLTYPE SetMarkerInt(
154         const WCHAR *label,
155         int data) = 0;
156 
157     virtual void STDMETHODCALLTYPE BeginEventInt(
158         const WCHAR *label,
159         int data) = 0;
160 
161     virtual void STDMETHODCALLTYPE EndEvent(
162         ) = 0;
163 
164 };
165 #ifdef __CRT_UUID_DECL
166 __CRT_UUID_DECL(ID3D11DeviceContext2, 0x420d5b32, 0xb90c, 0x4da4, 0xbe,0xf0, 0x35,0x9f,0x6a,0x24,0xa8,0x3a)
167 #endif
168 #else
169 typedef struct ID3D11DeviceContext2Vtbl {
170     BEGIN_INTERFACE
171 
172     /*** IUnknown methods ***/
173     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
174         ID3D11DeviceContext2 *This,
175         REFIID riid,
176         void **ppvObject);
177 
178     ULONG (STDMETHODCALLTYPE *AddRef)(
179         ID3D11DeviceContext2 *This);
180 
181     ULONG (STDMETHODCALLTYPE *Release)(
182         ID3D11DeviceContext2 *This);
183 
184     /*** ID3D11DeviceChild methods ***/
185     void (STDMETHODCALLTYPE *GetDevice)(
186         ID3D11DeviceContext2 *This,
187         ID3D11Device **ppDevice);
188 
189     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
190         ID3D11DeviceContext2 *This,
191         REFGUID guid,
192         UINT *pDataSize,
193         void *pData);
194 
195     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
196         ID3D11DeviceContext2 *This,
197         REFGUID guid,
198         UINT DataSize,
199         const void *pData);
200 
201     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
202         ID3D11DeviceContext2 *This,
203         REFGUID guid,
204         const IUnknown *pData);
205 
206     /*** ID3D11DeviceContext methods ***/
207     void (STDMETHODCALLTYPE *VSSetConstantBuffers)(
208         ID3D11DeviceContext2 *This,
209         UINT StartSlot,
210         UINT NumBuffers,
211         ID3D11Buffer *const *ppConstantBuffers);
212 
213     void (STDMETHODCALLTYPE *PSSetShaderResources)(
214         ID3D11DeviceContext2 *This,
215         UINT StartSlot,
216         UINT NumViews,
217         ID3D11ShaderResourceView *const *ppShaderResourceViews);
218 
219     void (STDMETHODCALLTYPE *PSSetShader)(
220         ID3D11DeviceContext2 *This,
221         ID3D11PixelShader *pPixelShader,
222         ID3D11ClassInstance *const *ppClassInstances,
223         UINT NumClassInstances);
224 
225     void (STDMETHODCALLTYPE *PSSetSamplers)(
226         ID3D11DeviceContext2 *This,
227         UINT StartSlot,
228         UINT NumSamplers,
229         ID3D11SamplerState *const *ppSamplers);
230 
231     void (STDMETHODCALLTYPE *VSSetShader)(
232         ID3D11DeviceContext2 *This,
233         ID3D11VertexShader *pVertexShader,
234         ID3D11ClassInstance *const *ppClassInstances,
235         UINT NumClassInstances);
236 
237     void (STDMETHODCALLTYPE *DrawIndexed)(
238         ID3D11DeviceContext2 *This,
239         UINT IndexCount,
240         UINT StartIndexLocation,
241         INT BaseVertexLocation);
242 
243     void (STDMETHODCALLTYPE *Draw)(
244         ID3D11DeviceContext2 *This,
245         UINT VertexCount,
246         UINT StartVertexLocation);
247 
248     HRESULT (STDMETHODCALLTYPE *Map)(
249         ID3D11DeviceContext2 *This,
250         ID3D11Resource *pResource,
251         UINT Subresource,
252         D3D11_MAP MapType,
253         UINT MapFlags,
254         D3D11_MAPPED_SUBRESOURCE *pMappedResource);
255 
256     void (STDMETHODCALLTYPE *Unmap)(
257         ID3D11DeviceContext2 *This,
258         ID3D11Resource *pResource,
259         UINT Subresource);
260 
261     void (STDMETHODCALLTYPE *PSSetConstantBuffers)(
262         ID3D11DeviceContext2 *This,
263         UINT StartSlot,
264         UINT NumBuffers,
265         ID3D11Buffer *const *ppConstantBuffers);
266 
267     void (STDMETHODCALLTYPE *IASetInputLayout)(
268         ID3D11DeviceContext2 *This,
269         ID3D11InputLayout *pInputLayout);
270 
271     void (STDMETHODCALLTYPE *IASetVertexBuffers)(
272         ID3D11DeviceContext2 *This,
273         UINT StartSlot,
274         UINT NumBuffers,
275         ID3D11Buffer *const *ppVertexBuffers,
276         const UINT *pStrides,
277         const UINT *pOffsets);
278 
279     void (STDMETHODCALLTYPE *IASetIndexBuffer)(
280         ID3D11DeviceContext2 *This,
281         ID3D11Buffer *pIndexBuffer,
282         DXGI_FORMAT Format,
283         UINT Offset);
284 
285     void (STDMETHODCALLTYPE *DrawIndexedInstanced)(
286         ID3D11DeviceContext2 *This,
287         UINT IndexCountPerInstance,
288         UINT InstanceCount,
289         UINT StartIndexLocation,
290         INT BaseVertexLocation,
291         UINT StartInstanceLocation);
292 
293     void (STDMETHODCALLTYPE *DrawInstanced)(
294         ID3D11DeviceContext2 *This,
295         UINT VertexCountPerInstance,
296         UINT InstanceCount,
297         UINT StartVertexLocation,
298         UINT StartInstanceLocation);
299 
300     void (STDMETHODCALLTYPE *GSSetConstantBuffers)(
301         ID3D11DeviceContext2 *This,
302         UINT StartSlot,
303         UINT NumBuffers,
304         ID3D11Buffer *const *ppConstantBuffers);
305 
306     void (STDMETHODCALLTYPE *GSSetShader)(
307         ID3D11DeviceContext2 *This,
308         ID3D11GeometryShader *pShader,
309         ID3D11ClassInstance *const *ppClassInstances,
310         UINT NumClassInstances);
311 
312     void (STDMETHODCALLTYPE *IASetPrimitiveTopology)(
313         ID3D11DeviceContext2 *This,
314         D3D11_PRIMITIVE_TOPOLOGY Topology);
315 
316     void (STDMETHODCALLTYPE *VSSetShaderResources)(
317         ID3D11DeviceContext2 *This,
318         UINT StartSlot,
319         UINT NumViews,
320         ID3D11ShaderResourceView *const *ppShaderResourceViews);
321 
322     void (STDMETHODCALLTYPE *VSSetSamplers)(
323         ID3D11DeviceContext2 *This,
324         UINT StartSlot,
325         UINT NumSamplers,
326         ID3D11SamplerState *const *ppSamplers);
327 
328     void (STDMETHODCALLTYPE *Begin)(
329         ID3D11DeviceContext2 *This,
330         ID3D11Asynchronous *pAsync);
331 
332     void (STDMETHODCALLTYPE *End)(
333         ID3D11DeviceContext2 *This,
334         ID3D11Asynchronous *pAsync);
335 
336     HRESULT (STDMETHODCALLTYPE *GetData)(
337         ID3D11DeviceContext2 *This,
338         ID3D11Asynchronous *pAsync,
339         void *pData,
340         UINT DataSize,
341         UINT GetDataFlags);
342 
343     void (STDMETHODCALLTYPE *SetPredication)(
344         ID3D11DeviceContext2 *This,
345         ID3D11Predicate *pPredicate,
346         WINBOOL PredicateValue);
347 
348     void (STDMETHODCALLTYPE *GSSetShaderResources)(
349         ID3D11DeviceContext2 *This,
350         UINT StartSlot,
351         UINT NumViews,
352         ID3D11ShaderResourceView *const *ppShaderResourceViews);
353 
354     void (STDMETHODCALLTYPE *GSSetSamplers)(
355         ID3D11DeviceContext2 *This,
356         UINT StartSlot,
357         UINT NumSamplers,
358         ID3D11SamplerState *const *ppSamplers);
359 
360     void (STDMETHODCALLTYPE *OMSetRenderTargets)(
361         ID3D11DeviceContext2 *This,
362         UINT NumViews,
363         ID3D11RenderTargetView *const *ppRenderTargetViews,
364         ID3D11DepthStencilView *pDepthStencilView);
365 
366     void (STDMETHODCALLTYPE *OMSetRenderTargetsAndUnorderedAccessViews)(
367         ID3D11DeviceContext2 *This,
368         UINT NumRTVs,
369         ID3D11RenderTargetView *const *ppRenderTargetViews,
370         ID3D11DepthStencilView *pDepthStencilView,
371         UINT UAVStartSlot,
372         UINT NumUAVs,
373         ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,
374         const UINT *pUAVInitialCounts);
375 
376     void (STDMETHODCALLTYPE *OMSetBlendState)(
377         ID3D11DeviceContext2 *This,
378         ID3D11BlendState *pBlendState,
379         const FLOAT BlendFactor[4],
380         UINT SampleMask);
381 
382     void (STDMETHODCALLTYPE *OMSetDepthStencilState)(
383         ID3D11DeviceContext2 *This,
384         ID3D11DepthStencilState *pDepthStencilState,
385         UINT StencilRef);
386 
387     void (STDMETHODCALLTYPE *SOSetTargets)(
388         ID3D11DeviceContext2 *This,
389         UINT NumBuffers,
390         ID3D11Buffer *const *ppSOTargets,
391         const UINT *pOffsets);
392 
393     void (STDMETHODCALLTYPE *DrawAuto)(
394         ID3D11DeviceContext2 *This);
395 
396     void (STDMETHODCALLTYPE *DrawIndexedInstancedIndirect)(
397         ID3D11DeviceContext2 *This,
398         ID3D11Buffer *pBufferForArgs,
399         UINT AlignedByteOffsetForArgs);
400 
401     void (STDMETHODCALLTYPE *DrawInstancedIndirect)(
402         ID3D11DeviceContext2 *This,
403         ID3D11Buffer *pBufferForArgs,
404         UINT AlignedByteOffsetForArgs);
405 
406     void (STDMETHODCALLTYPE *Dispatch)(
407         ID3D11DeviceContext2 *This,
408         UINT ThreadGroupCountX,
409         UINT ThreadGroupCountY,
410         UINT ThreadGroupCountZ);
411 
412     void (STDMETHODCALLTYPE *DispatchIndirect)(
413         ID3D11DeviceContext2 *This,
414         ID3D11Buffer *pBufferForArgs,
415         UINT AlignedByteOffsetForArgs);
416 
417     void (STDMETHODCALLTYPE *RSSetState)(
418         ID3D11DeviceContext2 *This,
419         ID3D11RasterizerState *pRasterizerState);
420 
421     void (STDMETHODCALLTYPE *RSSetViewports)(
422         ID3D11DeviceContext2 *This,
423         UINT NumViewports,
424         const D3D11_VIEWPORT *pViewports);
425 
426     void (STDMETHODCALLTYPE *RSSetScissorRects)(
427         ID3D11DeviceContext2 *This,
428         UINT NumRects,
429         const D3D11_RECT *pRects);
430 
431     void (STDMETHODCALLTYPE *CopySubresourceRegion)(
432         ID3D11DeviceContext2 *This,
433         ID3D11Resource *pDstResource,
434         UINT DstSubresource,
435         UINT DstX,
436         UINT DstY,
437         UINT DstZ,
438         ID3D11Resource *pSrcResource,
439         UINT SrcSubresource,
440         const D3D11_BOX *pSrcBox);
441 
442     void (STDMETHODCALLTYPE *CopyResource)(
443         ID3D11DeviceContext2 *This,
444         ID3D11Resource *pDstResource,
445         ID3D11Resource *pSrcResource);
446 
447     void (STDMETHODCALLTYPE *UpdateSubresource)(
448         ID3D11DeviceContext2 *This,
449         ID3D11Resource *pDstResource,
450         UINT DstSubresource,
451         const D3D11_BOX *pDstBox,
452         const void *pSrcData,
453         UINT SrcRowPitch,
454         UINT SrcDepthPitch);
455 
456     void (STDMETHODCALLTYPE *CopyStructureCount)(
457         ID3D11DeviceContext2 *This,
458         ID3D11Buffer *pDstBuffer,
459         UINT DstAlignedByteOffset,
460         ID3D11UnorderedAccessView *pSrcView);
461 
462     void (STDMETHODCALLTYPE *ClearRenderTargetView)(
463         ID3D11DeviceContext2 *This,
464         ID3D11RenderTargetView *pRenderTargetView,
465         const FLOAT ColorRGBA[4]);
466 
467     void (STDMETHODCALLTYPE *ClearUnorderedAccessViewUint)(
468         ID3D11DeviceContext2 *This,
469         ID3D11UnorderedAccessView *pUnorderedAccessView,
470         const UINT Values[4]);
471 
472     void (STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat)(
473         ID3D11DeviceContext2 *This,
474         ID3D11UnorderedAccessView *pUnorderedAccessView,
475         const FLOAT Values[4]);
476 
477     void (STDMETHODCALLTYPE *ClearDepthStencilView)(
478         ID3D11DeviceContext2 *This,
479         ID3D11DepthStencilView *pDepthStencilView,
480         UINT ClearFlags,
481         FLOAT Depth,
482         UINT8 Stencil);
483 
484     void (STDMETHODCALLTYPE *GenerateMips)(
485         ID3D11DeviceContext2 *This,
486         ID3D11ShaderResourceView *pShaderResourceView);
487 
488     void (STDMETHODCALLTYPE *SetResourceMinLOD)(
489         ID3D11DeviceContext2 *This,
490         ID3D11Resource *pResource,
491         FLOAT MinLOD);
492 
493     FLOAT (STDMETHODCALLTYPE *GetResourceMinLOD)(
494         ID3D11DeviceContext2 *This,
495         ID3D11Resource *pResource);
496 
497     void (STDMETHODCALLTYPE *ResolveSubresource)(
498         ID3D11DeviceContext2 *This,
499         ID3D11Resource *pDstResource,
500         UINT DstSubresource,
501         ID3D11Resource *pSrcResource,
502         UINT SrcSubresource,
503         DXGI_FORMAT Format);
504 
505     void (STDMETHODCALLTYPE *ExecuteCommandList)(
506         ID3D11DeviceContext2 *This,
507         ID3D11CommandList *pCommandList,
508         WINBOOL RestoreContextState);
509 
510     void (STDMETHODCALLTYPE *HSSetShaderResources)(
511         ID3D11DeviceContext2 *This,
512         UINT StartSlot,
513         UINT NumViews,
514         ID3D11ShaderResourceView *const *ppShaderResourceViews);
515 
516     void (STDMETHODCALLTYPE *HSSetShader)(
517         ID3D11DeviceContext2 *This,
518         ID3D11HullShader *pHullShader,
519         ID3D11ClassInstance *const *ppClassInstances,
520         UINT NumClassInstances);
521 
522     void (STDMETHODCALLTYPE *HSSetSamplers)(
523         ID3D11DeviceContext2 *This,
524         UINT StartSlot,
525         UINT NumSamplers,
526         ID3D11SamplerState *const *ppSamplers);
527 
528     void (STDMETHODCALLTYPE *HSSetConstantBuffers)(
529         ID3D11DeviceContext2 *This,
530         UINT StartSlot,
531         UINT NumBuffers,
532         ID3D11Buffer *const *ppConstantBuffers);
533 
534     void (STDMETHODCALLTYPE *DSSetShaderResources)(
535         ID3D11DeviceContext2 *This,
536         UINT StartSlot,
537         UINT NumViews,
538         ID3D11ShaderResourceView *const *ppShaderResourceViews);
539 
540     void (STDMETHODCALLTYPE *DSSetShader)(
541         ID3D11DeviceContext2 *This,
542         ID3D11DomainShader *pDomainShader,
543         ID3D11ClassInstance *const *ppClassInstances,
544         UINT NumClassInstances);
545 
546     void (STDMETHODCALLTYPE *DSSetSamplers)(
547         ID3D11DeviceContext2 *This,
548         UINT StartSlot,
549         UINT NumSamplers,
550         ID3D11SamplerState *const *ppSamplers);
551 
552     void (STDMETHODCALLTYPE *DSSetConstantBuffers)(
553         ID3D11DeviceContext2 *This,
554         UINT StartSlot,
555         UINT NumBuffers,
556         ID3D11Buffer *const *ppConstantBuffers);
557 
558     void (STDMETHODCALLTYPE *CSSetShaderResources)(
559         ID3D11DeviceContext2 *This,
560         UINT StartSlot,
561         UINT NumViews,
562         ID3D11ShaderResourceView *const *ppShaderResourceViews);
563 
564     void (STDMETHODCALLTYPE *CSSetUnorderedAccessViews)(
565         ID3D11DeviceContext2 *This,
566         UINT StartSlot,
567         UINT NumUAVs,
568         ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,
569         const UINT *pUAVInitialCounts);
570 
571     void (STDMETHODCALLTYPE *CSSetShader)(
572         ID3D11DeviceContext2 *This,
573         ID3D11ComputeShader *pComputeShader,
574         ID3D11ClassInstance *const *ppClassInstances,
575         UINT NumClassInstances);
576 
577     void (STDMETHODCALLTYPE *CSSetSamplers)(
578         ID3D11DeviceContext2 *This,
579         UINT StartSlot,
580         UINT NumSamplers,
581         ID3D11SamplerState *const *ppSamplers);
582 
583     void (STDMETHODCALLTYPE *CSSetConstantBuffers)(
584         ID3D11DeviceContext2 *This,
585         UINT StartSlot,
586         UINT NumBuffers,
587         ID3D11Buffer *const *ppConstantBuffers);
588 
589     void (STDMETHODCALLTYPE *VSGetConstantBuffers)(
590         ID3D11DeviceContext2 *This,
591         UINT StartSlot,
592         UINT NumBuffers,
593         ID3D11Buffer **ppConstantBuffers);
594 
595     void (STDMETHODCALLTYPE *PSGetShaderResources)(
596         ID3D11DeviceContext2 *This,
597         UINT StartSlot,
598         UINT NumViews,
599         ID3D11ShaderResourceView **ppShaderResourceViews);
600 
601     void (STDMETHODCALLTYPE *PSGetShader)(
602         ID3D11DeviceContext2 *This,
603         ID3D11PixelShader **ppPixelShader,
604         ID3D11ClassInstance **ppClassInstances,
605         UINT *pNumClassInstances);
606 
607     void (STDMETHODCALLTYPE *PSGetSamplers)(
608         ID3D11DeviceContext2 *This,
609         UINT StartSlot,
610         UINT NumSamplers,
611         ID3D11SamplerState **ppSamplers);
612 
613     void (STDMETHODCALLTYPE *VSGetShader)(
614         ID3D11DeviceContext2 *This,
615         ID3D11VertexShader **ppVertexShader,
616         ID3D11ClassInstance **ppClassInstances,
617         UINT *pNumClassInstances);
618 
619     void (STDMETHODCALLTYPE *PSGetConstantBuffers)(
620         ID3D11DeviceContext2 *This,
621         UINT StartSlot,
622         UINT NumBuffers,
623         ID3D11Buffer **ppConstantBuffers);
624 
625     void (STDMETHODCALLTYPE *IAGetInputLayout)(
626         ID3D11DeviceContext2 *This,
627         ID3D11InputLayout **ppInputLayout);
628 
629     void (STDMETHODCALLTYPE *IAGetVertexBuffers)(
630         ID3D11DeviceContext2 *This,
631         UINT StartSlot,
632         UINT NumBuffers,
633         ID3D11Buffer **ppVertexBuffers,
634         UINT *pStrides,
635         UINT *pOffsets);
636 
637     void (STDMETHODCALLTYPE *IAGetIndexBuffer)(
638         ID3D11DeviceContext2 *This,
639         ID3D11Buffer **pIndexBuffer,
640         DXGI_FORMAT *Format,
641         UINT *Offset);
642 
643     void (STDMETHODCALLTYPE *GSGetConstantBuffers)(
644         ID3D11DeviceContext2 *This,
645         UINT StartSlot,
646         UINT NumBuffers,
647         ID3D11Buffer **ppConstantBuffers);
648 
649     void (STDMETHODCALLTYPE *GSGetShader)(
650         ID3D11DeviceContext2 *This,
651         ID3D11GeometryShader **ppGeometryShader,
652         ID3D11ClassInstance **ppClassInstances,
653         UINT *pNumClassInstances);
654 
655     void (STDMETHODCALLTYPE *IAGetPrimitiveTopology)(
656         ID3D11DeviceContext2 *This,
657         D3D11_PRIMITIVE_TOPOLOGY *pTopology);
658 
659     void (STDMETHODCALLTYPE *VSGetShaderResources)(
660         ID3D11DeviceContext2 *This,
661         UINT StartSlot,
662         UINT NumViews,
663         ID3D11ShaderResourceView **ppShaderResourceViews);
664 
665     void (STDMETHODCALLTYPE *VSGetSamplers)(
666         ID3D11DeviceContext2 *This,
667         UINT StartSlot,
668         UINT NumSamplers,
669         ID3D11SamplerState **ppSamplers);
670 
671     void (STDMETHODCALLTYPE *GetPredication)(
672         ID3D11DeviceContext2 *This,
673         ID3D11Predicate **ppPredicate,
674         WINBOOL *pPredicateValue);
675 
676     void (STDMETHODCALLTYPE *GSGetShaderResources)(
677         ID3D11DeviceContext2 *This,
678         UINT StartSlot,
679         UINT NumViews,
680         ID3D11ShaderResourceView **ppShaderResourceViews);
681 
682     void (STDMETHODCALLTYPE *GSGetSamplers)(
683         ID3D11DeviceContext2 *This,
684         UINT StartSlot,
685         UINT NumSamplers,
686         ID3D11SamplerState **ppSamplers);
687 
688     void (STDMETHODCALLTYPE *OMGetRenderTargets)(
689         ID3D11DeviceContext2 *This,
690         UINT NumViews,
691         ID3D11RenderTargetView **ppRenderTargetViews,
692         ID3D11DepthStencilView **ppDepthStencilView);
693 
694     void (STDMETHODCALLTYPE *OMGetRenderTargetsAndUnorderedAccessViews)(
695         ID3D11DeviceContext2 *This,
696         UINT NumRTVs,
697         ID3D11RenderTargetView **ppRenderTargetViews,
698         ID3D11DepthStencilView **ppDepthStencilView,
699         UINT UAVStartSlot,
700         UINT NumUAVs,
701         ID3D11UnorderedAccessView **ppUnorderedAccessViews);
702 
703     void (STDMETHODCALLTYPE *OMGetBlendState)(
704         ID3D11DeviceContext2 *This,
705         ID3D11BlendState **ppBlendState,
706         FLOAT BlendFactor[4],
707         UINT *pSampleMask);
708 
709     void (STDMETHODCALLTYPE *OMGetDepthStencilState)(
710         ID3D11DeviceContext2 *This,
711         ID3D11DepthStencilState **ppDepthStencilState,
712         UINT *pStencilRef);
713 
714     void (STDMETHODCALLTYPE *SOGetTargets)(
715         ID3D11DeviceContext2 *This,
716         UINT NumBuffers,
717         ID3D11Buffer **ppSOTargets);
718 
719     void (STDMETHODCALLTYPE *RSGetState)(
720         ID3D11DeviceContext2 *This,
721         ID3D11RasterizerState **ppRasterizerState);
722 
723     void (STDMETHODCALLTYPE *RSGetViewports)(
724         ID3D11DeviceContext2 *This,
725         UINT *pNumViewports,
726         D3D11_VIEWPORT *pViewports);
727 
728     void (STDMETHODCALLTYPE *RSGetScissorRects)(
729         ID3D11DeviceContext2 *This,
730         UINT *pNumRects,
731         D3D11_RECT *pRects);
732 
733     void (STDMETHODCALLTYPE *HSGetShaderResources)(
734         ID3D11DeviceContext2 *This,
735         UINT StartSlot,
736         UINT NumViews,
737         ID3D11ShaderResourceView **ppShaderResourceViews);
738 
739     void (STDMETHODCALLTYPE *HSGetShader)(
740         ID3D11DeviceContext2 *This,
741         ID3D11HullShader **ppHullShader,
742         ID3D11ClassInstance **ppClassInstances,
743         UINT *pNumClassInstances);
744 
745     void (STDMETHODCALLTYPE *HSGetSamplers)(
746         ID3D11DeviceContext2 *This,
747         UINT StartSlot,
748         UINT NumSamplers,
749         ID3D11SamplerState **ppSamplers);
750 
751     void (STDMETHODCALLTYPE *HSGetConstantBuffers)(
752         ID3D11DeviceContext2 *This,
753         UINT StartSlot,
754         UINT NumBuffers,
755         ID3D11Buffer **ppConstantBuffers);
756 
757     void (STDMETHODCALLTYPE *DSGetShaderResources)(
758         ID3D11DeviceContext2 *This,
759         UINT StartSlot,
760         UINT NumViews,
761         ID3D11ShaderResourceView **ppShaderResourceViews);
762 
763     void (STDMETHODCALLTYPE *DSGetShader)(
764         ID3D11DeviceContext2 *This,
765         ID3D11DomainShader **ppDomainShader,
766         ID3D11ClassInstance **ppClassInstances,
767         UINT *pNumClassInstances);
768 
769     void (STDMETHODCALLTYPE *DSGetSamplers)(
770         ID3D11DeviceContext2 *This,
771         UINT StartSlot,
772         UINT NumSamplers,
773         ID3D11SamplerState **ppSamplers);
774 
775     void (STDMETHODCALLTYPE *DSGetConstantBuffers)(
776         ID3D11DeviceContext2 *This,
777         UINT StartSlot,
778         UINT NumBuffers,
779         ID3D11Buffer **ppConstantBuffers);
780 
781     void (STDMETHODCALLTYPE *CSGetShaderResources)(
782         ID3D11DeviceContext2 *This,
783         UINT StartSlot,
784         UINT NumViews,
785         ID3D11ShaderResourceView **ppShaderResourceViews);
786 
787     void (STDMETHODCALLTYPE *CSGetUnorderedAccessViews)(
788         ID3D11DeviceContext2 *This,
789         UINT StartSlot,
790         UINT NumUAVs,
791         ID3D11UnorderedAccessView **ppUnorderedAccessViews);
792 
793     void (STDMETHODCALLTYPE *CSGetShader)(
794         ID3D11DeviceContext2 *This,
795         ID3D11ComputeShader **ppComputeShader,
796         ID3D11ClassInstance **ppClassInstances,
797         UINT *pNumClassInstances);
798 
799     void (STDMETHODCALLTYPE *CSGetSamplers)(
800         ID3D11DeviceContext2 *This,
801         UINT StartSlot,
802         UINT NumSamplers,
803         ID3D11SamplerState **ppSamplers);
804 
805     void (STDMETHODCALLTYPE *CSGetConstantBuffers)(
806         ID3D11DeviceContext2 *This,
807         UINT StartSlot,
808         UINT NumBuffers,
809         ID3D11Buffer **ppConstantBuffers);
810 
811     void (STDMETHODCALLTYPE *ClearState)(
812         ID3D11DeviceContext2 *This);
813 
814     void (STDMETHODCALLTYPE *Flush)(
815         ID3D11DeviceContext2 *This);
816 
817     D3D11_DEVICE_CONTEXT_TYPE (STDMETHODCALLTYPE *GetType)(
818         ID3D11DeviceContext2 *This);
819 
820     UINT (STDMETHODCALLTYPE *GetContextFlags)(
821         ID3D11DeviceContext2 *This);
822 
823     HRESULT (STDMETHODCALLTYPE *FinishCommandList)(
824         ID3D11DeviceContext2 *This,
825         WINBOOL RestoreDeferredContextState,
826         ID3D11CommandList **ppCommandList);
827 
828     /*** ID3D11DeviceContext1 methods ***/
829     void (STDMETHODCALLTYPE *CopySubresourceRegion1)(
830         ID3D11DeviceContext2 *This,
831         ID3D11Resource *pDstResource,
832         UINT DstSubresource,
833         UINT DstX,
834         UINT DstY,
835         UINT DstZ,
836         ID3D11Resource *pSrcResource,
837         UINT SrcSubresource,
838         const D3D11_BOX *pSrcBox,
839         UINT CopyFlags);
840 
841     void (STDMETHODCALLTYPE *UpdateSubresource1)(
842         ID3D11DeviceContext2 *This,
843         ID3D11Resource *pDstResource,
844         UINT DstSubresource,
845         const D3D11_BOX *pDstBox,
846         const void *pSrcData,
847         UINT SrcRowPitch,
848         UINT SrcDepthPitch,
849         UINT CopyFlags);
850 
851     void (STDMETHODCALLTYPE *DiscardResource)(
852         ID3D11DeviceContext2 *This,
853         ID3D11Resource *pResource);
854 
855     void (STDMETHODCALLTYPE *DiscardView)(
856         ID3D11DeviceContext2 *This,
857         ID3D11View *pResourceView);
858 
859     void (STDMETHODCALLTYPE *VSSetConstantBuffers1)(
860         ID3D11DeviceContext2 *This,
861         UINT StartSlot,
862         UINT NumBuffers,
863         ID3D11Buffer *const *ppConstantBuffers,
864         const UINT *pFirstConstant,
865         const UINT *pNumConstants);
866 
867     void (STDMETHODCALLTYPE *HSSetConstantBuffers1)(
868         ID3D11DeviceContext2 *This,
869         UINT StartSlot,
870         UINT NumBuffers,
871         ID3D11Buffer *const *ppConstantBuffers,
872         const UINT *pFirstConstant,
873         const UINT *pNumConstants);
874 
875     void (STDMETHODCALLTYPE *DSSetConstantBuffers1)(
876         ID3D11DeviceContext2 *This,
877         UINT StartSlot,
878         UINT NumBuffers,
879         ID3D11Buffer *const *ppConstantBuffers,
880         const UINT *pFirstConstant,
881         const UINT *pNumConstants);
882 
883     void (STDMETHODCALLTYPE *GSSetConstantBuffers1)(
884         ID3D11DeviceContext2 *This,
885         UINT StartSlot,
886         UINT NumBuffers,
887         ID3D11Buffer *const *ppConstantBuffers,
888         const UINT *pFirstConstant,
889         const UINT *pNumConstants);
890 
891     void (STDMETHODCALLTYPE *PSSetConstantBuffers1)(
892         ID3D11DeviceContext2 *This,
893         UINT StartSlot,
894         UINT NumBuffers,
895         ID3D11Buffer *const *ppConstantBuffers,
896         const UINT *pFirstConstant,
897         const UINT *pNumConstants);
898 
899     void (STDMETHODCALLTYPE *CSSetConstantBuffers1)(
900         ID3D11DeviceContext2 *This,
901         UINT StartSlot,
902         UINT NumBuffers,
903         ID3D11Buffer *const *ppConstantBuffers,
904         const UINT *pFirstConstant,
905         const UINT *pNumConstants);
906 
907     void (STDMETHODCALLTYPE *VSGetConstantBuffers1)(
908         ID3D11DeviceContext2 *This,
909         UINT StartSlot,
910         UINT NumBuffers,
911         ID3D11Buffer **ppConstantBuffers,
912         UINT *pFirstConstant,
913         UINT *pNumConstants);
914 
915     void (STDMETHODCALLTYPE *HSGetConstantBuffers1)(
916         ID3D11DeviceContext2 *This,
917         UINT StartSlot,
918         UINT NumBuffers,
919         ID3D11Buffer **ppConstantBuffers,
920         UINT *pFirstConstant,
921         UINT *pNumConstants);
922 
923     void (STDMETHODCALLTYPE *DSGetConstantBuffers1)(
924         ID3D11DeviceContext2 *This,
925         UINT StartSlot,
926         UINT NumBuffers,
927         ID3D11Buffer **ppConstantBuffers,
928         UINT *pFirstConstant,
929         UINT *pNumConstants);
930 
931     void (STDMETHODCALLTYPE *GSGetConstantBuffers1)(
932         ID3D11DeviceContext2 *This,
933         UINT StartSlot,
934         UINT NumBuffers,
935         ID3D11Buffer **ppConstantBuffers,
936         UINT *pFirstConstant,
937         UINT *pNumConstants);
938 
939     void (STDMETHODCALLTYPE *PSGetConstantBuffers1)(
940         ID3D11DeviceContext2 *This,
941         UINT StartSlot,
942         UINT NumBuffers,
943         ID3D11Buffer **ppConstantBuffers,
944         UINT *pFirstConstant,
945         UINT *pNumConstants);
946 
947     void (STDMETHODCALLTYPE *CSGetConstantBuffers1)(
948         ID3D11DeviceContext2 *This,
949         UINT StartSlot,
950         UINT NumBuffers,
951         ID3D11Buffer **ppConstantBuffers,
952         UINT *pFirstConstant,
953         UINT *pNumConstants);
954 
955     void (STDMETHODCALLTYPE *SwapDeviceContextState)(
956         ID3D11DeviceContext2 *This,
957         ID3DDeviceContextState *pState,
958         ID3DDeviceContextState **ppPreviousState);
959 
960     void (STDMETHODCALLTYPE *ClearView)(
961         ID3D11DeviceContext2 *This,
962         ID3D11View *pView,
963         const FLOAT Color[4],
964         const D3D11_RECT *pRect,
965         UINT NumRects);
966 
967     void (STDMETHODCALLTYPE *DiscardView1)(
968         ID3D11DeviceContext2 *This,
969         ID3D11View *pResourceView,
970         const D3D11_RECT *pRects,
971         UINT NumRects);
972 
973     /*** ID3D11DeviceContext2 methods ***/
974     HRESULT (STDMETHODCALLTYPE *UpdateTileMappings)(
975         ID3D11DeviceContext2 *This,
976         ID3D11Resource *resource,
977         UINT region_count,
978         const D3D11_TILED_RESOURCE_COORDINATE *region_start_coordinates,
979         const D3D11_TILE_REGION_SIZE *region_sizes,
980         ID3D11Buffer *pool,
981         UINT range_count,
982         const UINT *range_flags,
983         const UINT *pool_start_offsets,
984         const UINT *range_tile_counts,
985         UINT flags);
986 
987     HRESULT (STDMETHODCALLTYPE *CopyTileMappings)(
988         ID3D11DeviceContext2 *This,
989         ID3D11Resource *dst_resource,
990         const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,
991         ID3D11Resource *src_resource,
992         const D3D11_TILED_RESOURCE_COORDINATE *src_start_coordinate,
993         const D3D11_TILE_REGION_SIZE *region_size,
994         UINT flags);
995 
996     void (STDMETHODCALLTYPE *CopyTiles)(
997         ID3D11DeviceContext2 *This,
998         ID3D11Resource *resource,
999         const D3D11_TILED_RESOURCE_COORDINATE *start_coordinate,
1000         const D3D11_TILE_REGION_SIZE *size,
1001         ID3D11Buffer *buffer,
1002         UINT64 start_offset,
1003         UINT flags);
1004 
1005     void (STDMETHODCALLTYPE *UpdateTiles)(
1006         ID3D11DeviceContext2 *This,
1007         ID3D11Resource *dst_resource,
1008         const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,
1009         const D3D11_TILE_REGION_SIZE *dst_region_size,
1010         const void *src_data,
1011         UINT flags);
1012 
1013     HRESULT (STDMETHODCALLTYPE *ResizeTilePool)(
1014         ID3D11DeviceContext2 *This,
1015         ID3D11Buffer *pool,
1016         UINT64 size);
1017 
1018     void (STDMETHODCALLTYPE *TiledResourceBarrier)(
1019         ID3D11DeviceContext2 *This,
1020         ID3D11DeviceChild *before_barrier,
1021         ID3D11DeviceChild *after_barrier);
1022 
1023     WINBOOL (STDMETHODCALLTYPE *IsAnnotationEnabled)(
1024         ID3D11DeviceContext2 *This);
1025 
1026     void (STDMETHODCALLTYPE *SetMarkerInt)(
1027         ID3D11DeviceContext2 *This,
1028         const WCHAR *label,
1029         int data);
1030 
1031     void (STDMETHODCALLTYPE *BeginEventInt)(
1032         ID3D11DeviceContext2 *This,
1033         const WCHAR *label,
1034         int data);
1035 
1036     void (STDMETHODCALLTYPE *EndEvent)(
1037         ID3D11DeviceContext2 *This);
1038 
1039     END_INTERFACE
1040 } ID3D11DeviceContext2Vtbl;
1041 
1042 interface ID3D11DeviceContext2 {
1043     CONST_VTBL ID3D11DeviceContext2Vtbl* lpVtbl;
1044 };
1045 
1046 #ifdef COBJMACROS
1047 #ifndef WIDL_C_INLINE_WRAPPERS
1048 /*** IUnknown methods ***/
1049 #define ID3D11DeviceContext2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1050 #define ID3D11DeviceContext2_AddRef(This) (This)->lpVtbl->AddRef(This)
1051 #define ID3D11DeviceContext2_Release(This) (This)->lpVtbl->Release(This)
1052 /*** ID3D11DeviceChild methods ***/
1053 #define ID3D11DeviceContext2_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
1054 #define ID3D11DeviceContext2_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
1055 #define ID3D11DeviceContext2_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
1056 #define ID3D11DeviceContext2_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
1057 /*** ID3D11DeviceContext methods ***/
1058 #define ID3D11DeviceContext2_VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
1059 #define ID3D11DeviceContext2_PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
1060 #define ID3D11DeviceContext2_PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances)
1061 #define ID3D11DeviceContext2_PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
1062 #define ID3D11DeviceContext2_VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances)
1063 #define ID3D11DeviceContext2_DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) (This)->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation)
1064 #define ID3D11DeviceContext2_Draw(This,VertexCount,StartVertexLocation) (This)->lpVtbl->Draw(This,VertexCount,StartVertexLocation)
1065 #define ID3D11DeviceContext2_Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource) (This)->lpVtbl->Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource)
1066 #define ID3D11DeviceContext2_Unmap(This,pResource,Subresource) (This)->lpVtbl->Unmap(This,pResource,Subresource)
1067 #define ID3D11DeviceContext2_PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
1068 #define ID3D11DeviceContext2_IASetInputLayout(This,pInputLayout) (This)->lpVtbl->IASetInputLayout(This,pInputLayout)
1069 #define ID3D11DeviceContext2_IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets)
1070 #define ID3D11DeviceContext2_IASetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset)
1071 #define ID3D11DeviceContext2_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation)
1072 #define ID3D11DeviceContext2_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation)
1073 #define ID3D11DeviceContext2_GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
1074 #define ID3D11DeviceContext2_GSSetShader(This,pShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->GSSetShader(This,pShader,ppClassInstances,NumClassInstances)
1075 #define ID3D11DeviceContext2_IASetPrimitiveTopology(This,Topology) (This)->lpVtbl->IASetPrimitiveTopology(This,Topology)
1076 #define ID3D11DeviceContext2_VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
1077 #define ID3D11DeviceContext2_VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
1078 #define ID3D11DeviceContext2_Begin(This,pAsync) (This)->lpVtbl->Begin(This,pAsync)
1079 #define ID3D11DeviceContext2_End(This,pAsync) (This)->lpVtbl->End(This,pAsync)
1080 #define ID3D11DeviceContext2_GetData(This,pAsync,pData,DataSize,GetDataFlags) (This)->lpVtbl->GetData(This,pAsync,pData,DataSize,GetDataFlags)
1081 #define ID3D11DeviceContext2_SetPredication(This,pPredicate,PredicateValue) (This)->lpVtbl->SetPredication(This,pPredicate,PredicateValue)
1082 #define ID3D11DeviceContext2_GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
1083 #define ID3D11DeviceContext2_GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
1084 #define ID3D11DeviceContext2_OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) (This)->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView)
1085 #define ID3D11DeviceContext2_OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) (This)->lpVtbl->OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts)
1086 #define ID3D11DeviceContext2_OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) (This)->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask)
1087 #define ID3D11DeviceContext2_OMSetDepthStencilState(This,pDepthStencilState,StencilRef) (This)->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef)
1088 #define ID3D11DeviceContext2_SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) (This)->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets)
1089 #define ID3D11DeviceContext2_DrawAuto(This) (This)->lpVtbl->DrawAuto(This)
1090 #define ID3D11DeviceContext2_DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs)
1091 #define ID3D11DeviceContext2_DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs)
1092 #define ID3D11DeviceContext2_Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) (This)->lpVtbl->Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ)
1093 #define ID3D11DeviceContext2_DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs)
1094 #define ID3D11DeviceContext2_RSSetState(This,pRasterizerState) (This)->lpVtbl->RSSetState(This,pRasterizerState)
1095 #define ID3D11DeviceContext2_RSSetViewports(This,NumViewports,pViewports) (This)->lpVtbl->RSSetViewports(This,NumViewports,pViewports)
1096 #define ID3D11DeviceContext2_RSSetScissorRects(This,NumRects,pRects) (This)->lpVtbl->RSSetScissorRects(This,NumRects,pRects)
1097 #define ID3D11DeviceContext2_CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) (This)->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox)
1098 #define ID3D11DeviceContext2_CopyResource(This,pDstResource,pSrcResource) (This)->lpVtbl->CopyResource(This,pDstResource,pSrcResource)
1099 #define ID3D11DeviceContext2_UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) (This)->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch)
1100 #define ID3D11DeviceContext2_CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView) (This)->lpVtbl->CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView)
1101 #define ID3D11DeviceContext2_ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) (This)->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA)
1102 #define ID3D11DeviceContext2_ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values) (This)->lpVtbl->ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values)
1103 #define ID3D11DeviceContext2_ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values) (This)->lpVtbl->ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values)
1104 #define ID3D11DeviceContext2_ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) (This)->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil)
1105 #define ID3D11DeviceContext2_GenerateMips(This,pShaderResourceView) (This)->lpVtbl->GenerateMips(This,pShaderResourceView)
1106 #define ID3D11DeviceContext2_SetResourceMinLOD(This,pResource,MinLOD) (This)->lpVtbl->SetResourceMinLOD(This,pResource,MinLOD)
1107 #define ID3D11DeviceContext2_GetResourceMinLOD(This,pResource) (This)->lpVtbl->GetResourceMinLOD(This,pResource)
1108 #define ID3D11DeviceContext2_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) (This)->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format)
1109 #define ID3D11DeviceContext2_ExecuteCommandList(This,pCommandList,RestoreContextState) (This)->lpVtbl->ExecuteCommandList(This,pCommandList,RestoreContextState)
1110 #define ID3D11DeviceContext2_HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
1111 #define ID3D11DeviceContext2_HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances)
1112 #define ID3D11DeviceContext2_HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
1113 #define ID3D11DeviceContext2_HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
1114 #define ID3D11DeviceContext2_DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
1115 #define ID3D11DeviceContext2_DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances)
1116 #define ID3D11DeviceContext2_DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
1117 #define ID3D11DeviceContext2_DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
1118 #define ID3D11DeviceContext2_CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
1119 #define ID3D11DeviceContext2_CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) (This)->lpVtbl->CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts)
1120 #define ID3D11DeviceContext2_CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances)
1121 #define ID3D11DeviceContext2_CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
1122 #define ID3D11DeviceContext2_CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
1123 #define ID3D11DeviceContext2_VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
1124 #define ID3D11DeviceContext2_PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
1125 #define ID3D11DeviceContext2_PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances)
1126 #define ID3D11DeviceContext2_PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
1127 #define ID3D11DeviceContext2_VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances)
1128 #define ID3D11DeviceContext2_PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
1129 #define ID3D11DeviceContext2_IAGetInputLayout(This,ppInputLayout) (This)->lpVtbl->IAGetInputLayout(This,ppInputLayout)
1130 #define ID3D11DeviceContext2_IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets)
1131 #define ID3D11DeviceContext2_IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset)
1132 #define ID3D11DeviceContext2_GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
1133 #define ID3D11DeviceContext2_GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances)
1134 #define ID3D11DeviceContext2_IAGetPrimitiveTopology(This,pTopology) (This)->lpVtbl->IAGetPrimitiveTopology(This,pTopology)
1135 #define ID3D11DeviceContext2_VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
1136 #define ID3D11DeviceContext2_VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
1137 #define ID3D11DeviceContext2_GetPredication(This,ppPredicate,pPredicateValue) (This)->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue)
1138 #define ID3D11DeviceContext2_GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
1139 #define ID3D11DeviceContext2_GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
1140 #define ID3D11DeviceContext2_OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) (This)->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView)
1141 #define ID3D11DeviceContext2_OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews) (This)->lpVtbl->OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews)
1142 #define ID3D11DeviceContext2_OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) (This)->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask)
1143 #define ID3D11DeviceContext2_OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) (This)->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef)
1144 #define ID3D11DeviceContext2_SOGetTargets(This,NumBuffers,ppSOTargets) (This)->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets)
1145 #define ID3D11DeviceContext2_RSGetState(This,ppRasterizerState) (This)->lpVtbl->RSGetState(This,ppRasterizerState)
1146 #define ID3D11DeviceContext2_RSGetViewports(This,pNumViewports,pViewports) (This)->lpVtbl->RSGetViewports(This,pNumViewports,pViewports)
1147 #define ID3D11DeviceContext2_RSGetScissorRects(This,pNumRects,pRects) (This)->lpVtbl->RSGetScissorRects(This,pNumRects,pRects)
1148 #define ID3D11DeviceContext2_HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
1149 #define ID3D11DeviceContext2_HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances)
1150 #define ID3D11DeviceContext2_HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
1151 #define ID3D11DeviceContext2_HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
1152 #define ID3D11DeviceContext2_DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
1153 #define ID3D11DeviceContext2_DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances)
1154 #define ID3D11DeviceContext2_DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
1155 #define ID3D11DeviceContext2_DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
1156 #define ID3D11DeviceContext2_CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
1157 #define ID3D11DeviceContext2_CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews) (This)->lpVtbl->CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews)
1158 #define ID3D11DeviceContext2_CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances)
1159 #define ID3D11DeviceContext2_CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
1160 #define ID3D11DeviceContext2_CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
1161 #define ID3D11DeviceContext2_ClearState(This) (This)->lpVtbl->ClearState(This)
1162 #define ID3D11DeviceContext2_Flush(This) (This)->lpVtbl->Flush(This)
1163 #define ID3D11DeviceContext2_GetType(This) (This)->lpVtbl->GetType(This)
1164 #define ID3D11DeviceContext2_GetContextFlags(This) (This)->lpVtbl->GetContextFlags(This)
1165 #define ID3D11DeviceContext2_FinishCommandList(This,RestoreDeferredContextState,ppCommandList) (This)->lpVtbl->FinishCommandList(This,RestoreDeferredContextState,ppCommandList)
1166 /*** ID3D11DeviceContext1 methods ***/
1167 #define ID3D11DeviceContext2_CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags) (This)->lpVtbl->CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags)
1168 #define ID3D11DeviceContext2_UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags) (This)->lpVtbl->UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags)
1169 #define ID3D11DeviceContext2_DiscardResource(This,pResource) (This)->lpVtbl->DiscardResource(This,pResource)
1170 #define ID3D11DeviceContext2_DiscardView(This,pResourceView) (This)->lpVtbl->DiscardView(This,pResourceView)
1171 #define ID3D11DeviceContext2_VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
1172 #define ID3D11DeviceContext2_HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
1173 #define ID3D11DeviceContext2_DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
1174 #define ID3D11DeviceContext2_GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
1175 #define ID3D11DeviceContext2_PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
1176 #define ID3D11DeviceContext2_CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
1177 #define ID3D11DeviceContext2_VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
1178 #define ID3D11DeviceContext2_HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
1179 #define ID3D11DeviceContext2_DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
1180 #define ID3D11DeviceContext2_GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
1181 #define ID3D11DeviceContext2_PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
1182 #define ID3D11DeviceContext2_CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
1183 #define ID3D11DeviceContext2_SwapDeviceContextState(This,pState,ppPreviousState) (This)->lpVtbl->SwapDeviceContextState(This,pState,ppPreviousState)
1184 #define ID3D11DeviceContext2_ClearView(This,pView,Color,pRect,NumRects) (This)->lpVtbl->ClearView(This,pView,Color,pRect,NumRects)
1185 #define ID3D11DeviceContext2_DiscardView1(This,pResourceView,pRects,NumRects) (This)->lpVtbl->DiscardView1(This,pResourceView,pRects,NumRects)
1186 /*** ID3D11DeviceContext2 methods ***/
1187 #define ID3D11DeviceContext2_UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,pool,range_count,range_flags,pool_start_offsets,range_tile_counts,flags) (This)->lpVtbl->UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,pool,range_count,range_flags,pool_start_offsets,range_tile_counts,flags)
1188 #define ID3D11DeviceContext2_CopyTileMappings(This,dst_resource,dst_start_coordinate,src_resource,src_start_coordinate,region_size,flags) (This)->lpVtbl->CopyTileMappings(This,dst_resource,dst_start_coordinate,src_resource,src_start_coordinate,region_size,flags)
1189 #define ID3D11DeviceContext2_CopyTiles(This,resource,start_coordinate,size,buffer,start_offset,flags) (This)->lpVtbl->CopyTiles(This,resource,start_coordinate,size,buffer,start_offset,flags)
1190 #define ID3D11DeviceContext2_UpdateTiles(This,dst_resource,dst_start_coordinate,dst_region_size,src_data,flags) (This)->lpVtbl->UpdateTiles(This,dst_resource,dst_start_coordinate,dst_region_size,src_data,flags)
1191 #define ID3D11DeviceContext2_ResizeTilePool(This,pool,size) (This)->lpVtbl->ResizeTilePool(This,pool,size)
1192 #define ID3D11DeviceContext2_TiledResourceBarrier(This,before_barrier,after_barrier) (This)->lpVtbl->TiledResourceBarrier(This,before_barrier,after_barrier)
1193 #define ID3D11DeviceContext2_IsAnnotationEnabled(This) (This)->lpVtbl->IsAnnotationEnabled(This)
1194 #define ID3D11DeviceContext2_SetMarkerInt(This,label,data) (This)->lpVtbl->SetMarkerInt(This,label,data)
1195 #define ID3D11DeviceContext2_BeginEventInt(This,label,data) (This)->lpVtbl->BeginEventInt(This,label,data)
1196 #define ID3D11DeviceContext2_EndEvent(This) (This)->lpVtbl->EndEvent(This)
1197 #else
1198 /*** IUnknown methods ***/
1199 static FORCEINLINE HRESULT ID3D11DeviceContext2_QueryInterface(ID3D11DeviceContext2* This,REFIID riid,void **ppvObject) {
1200     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1201 }
1202 static FORCEINLINE ULONG ID3D11DeviceContext2_AddRef(ID3D11DeviceContext2* This) {
1203     return This->lpVtbl->AddRef(This);
1204 }
1205 static FORCEINLINE ULONG ID3D11DeviceContext2_Release(ID3D11DeviceContext2* This) {
1206     return This->lpVtbl->Release(This);
1207 }
1208 /*** ID3D11DeviceChild methods ***/
1209 static FORCEINLINE void ID3D11DeviceContext2_GetDevice(ID3D11DeviceContext2* This,ID3D11Device **ppDevice) {
1210     This->lpVtbl->GetDevice(This,ppDevice);
1211 }
1212 static FORCEINLINE HRESULT ID3D11DeviceContext2_GetPrivateData(ID3D11DeviceContext2* This,REFGUID guid,UINT *pDataSize,void *pData) {
1213     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
1214 }
1215 static FORCEINLINE HRESULT ID3D11DeviceContext2_SetPrivateData(ID3D11DeviceContext2* This,REFGUID guid,UINT DataSize,const void *pData) {
1216     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
1217 }
1218 static FORCEINLINE HRESULT ID3D11DeviceContext2_SetPrivateDataInterface(ID3D11DeviceContext2* This,REFGUID guid,const IUnknown *pData) {
1219     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
1220 }
1221 /*** ID3D11DeviceContext methods ***/
1222 static FORCEINLINE void ID3D11DeviceContext2_VSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
1223     This->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
1224 }
1225 static FORCEINLINE void ID3D11DeviceContext2_PSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
1226     This->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
1227 }
1228 static FORCEINLINE void ID3D11DeviceContext2_PSSetShader(ID3D11DeviceContext2* This,ID3D11PixelShader *pPixelShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
1229     This->lpVtbl->PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances);
1230 }
1231 static FORCEINLINE void ID3D11DeviceContext2_PSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
1232     This->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
1233 }
1234 static FORCEINLINE void ID3D11DeviceContext2_VSSetShader(ID3D11DeviceContext2* This,ID3D11VertexShader *pVertexShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
1235     This->lpVtbl->VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances);
1236 }
1237 static FORCEINLINE void ID3D11DeviceContext2_DrawIndexed(ID3D11DeviceContext2* This,UINT IndexCount,UINT StartIndexLocation,INT BaseVertexLocation) {
1238     This->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation);
1239 }
1240 static FORCEINLINE void ID3D11DeviceContext2_Draw(ID3D11DeviceContext2* This,UINT VertexCount,UINT StartVertexLocation) {
1241     This->lpVtbl->Draw(This,VertexCount,StartVertexLocation);
1242 }
1243 static FORCEINLINE HRESULT ID3D11DeviceContext2_Map(ID3D11DeviceContext2* This,ID3D11Resource *pResource,UINT Subresource,D3D11_MAP MapType,UINT MapFlags,D3D11_MAPPED_SUBRESOURCE *pMappedResource) {
1244     return This->lpVtbl->Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource);
1245 }
1246 static FORCEINLINE void ID3D11DeviceContext2_Unmap(ID3D11DeviceContext2* This,ID3D11Resource *pResource,UINT Subresource) {
1247     This->lpVtbl->Unmap(This,pResource,Subresource);
1248 }
1249 static FORCEINLINE void ID3D11DeviceContext2_PSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
1250     This->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
1251 }
1252 static FORCEINLINE void ID3D11DeviceContext2_IASetInputLayout(ID3D11DeviceContext2* This,ID3D11InputLayout *pInputLayout) {
1253     This->lpVtbl->IASetInputLayout(This,pInputLayout);
1254 }
1255 static FORCEINLINE void ID3D11DeviceContext2_IASetVertexBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppVertexBuffers,const UINT *pStrides,const UINT *pOffsets) {
1256     This->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets);
1257 }
1258 static FORCEINLINE void ID3D11DeviceContext2_IASetIndexBuffer(ID3D11DeviceContext2* This,ID3D11Buffer *pIndexBuffer,DXGI_FORMAT Format,UINT Offset) {
1259     This->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset);
1260 }
1261 static FORCEINLINE void ID3D11DeviceContext2_DrawIndexedInstanced(ID3D11DeviceContext2* This,UINT IndexCountPerInstance,UINT InstanceCount,UINT StartIndexLocation,INT BaseVertexLocation,UINT StartInstanceLocation) {
1262     This->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation);
1263 }
1264 static FORCEINLINE void ID3D11DeviceContext2_DrawInstanced(ID3D11DeviceContext2* This,UINT VertexCountPerInstance,UINT InstanceCount,UINT StartVertexLocation,UINT StartInstanceLocation) {
1265     This->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation);
1266 }
1267 static FORCEINLINE void ID3D11DeviceContext2_GSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
1268     This->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
1269 }
1270 static FORCEINLINE void ID3D11DeviceContext2_GSSetShader(ID3D11DeviceContext2* This,ID3D11GeometryShader *pShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
1271     This->lpVtbl->GSSetShader(This,pShader,ppClassInstances,NumClassInstances);
1272 }
1273 static FORCEINLINE void ID3D11DeviceContext2_IASetPrimitiveTopology(ID3D11DeviceContext2* This,D3D11_PRIMITIVE_TOPOLOGY Topology) {
1274     This->lpVtbl->IASetPrimitiveTopology(This,Topology);
1275 }
1276 static FORCEINLINE void ID3D11DeviceContext2_VSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
1277     This->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
1278 }
1279 static FORCEINLINE void ID3D11DeviceContext2_VSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
1280     This->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
1281 }
1282 static FORCEINLINE void ID3D11DeviceContext2_Begin(ID3D11DeviceContext2* This,ID3D11Asynchronous *pAsync) {
1283     This->lpVtbl->Begin(This,pAsync);
1284 }
1285 static FORCEINLINE void ID3D11DeviceContext2_End(ID3D11DeviceContext2* This,ID3D11Asynchronous *pAsync) {
1286     This->lpVtbl->End(This,pAsync);
1287 }
1288 static FORCEINLINE HRESULT ID3D11DeviceContext2_GetData(ID3D11DeviceContext2* This,ID3D11Asynchronous *pAsync,void *pData,UINT DataSize,UINT GetDataFlags) {
1289     return This->lpVtbl->GetData(This,pAsync,pData,DataSize,GetDataFlags);
1290 }
1291 static FORCEINLINE void ID3D11DeviceContext2_SetPredication(ID3D11DeviceContext2* This,ID3D11Predicate *pPredicate,WINBOOL PredicateValue) {
1292     This->lpVtbl->SetPredication(This,pPredicate,PredicateValue);
1293 }
1294 static FORCEINLINE void ID3D11DeviceContext2_GSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
1295     This->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
1296 }
1297 static FORCEINLINE void ID3D11DeviceContext2_GSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
1298     This->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
1299 }
1300 static FORCEINLINE void ID3D11DeviceContext2_OMSetRenderTargets(ID3D11DeviceContext2* This,UINT NumViews,ID3D11RenderTargetView *const *ppRenderTargetViews,ID3D11DepthStencilView *pDepthStencilView) {
1301     This->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView);
1302 }
1303 static FORCEINLINE void ID3D11DeviceContext2_OMSetRenderTargetsAndUnorderedAccessViews(ID3D11DeviceContext2* This,UINT NumRTVs,ID3D11RenderTargetView *const *ppRenderTargetViews,ID3D11DepthStencilView *pDepthStencilView,UINT UAVStartSlot,UINT NumUAVs,ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,const UINT *pUAVInitialCounts) {
1304     This->lpVtbl->OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts);
1305 }
1306 static FORCEINLINE void ID3D11DeviceContext2_OMSetBlendState(ID3D11DeviceContext2* This,ID3D11BlendState *pBlendState,const FLOAT BlendFactor[4],UINT SampleMask) {
1307     This->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask);
1308 }
1309 static FORCEINLINE void ID3D11DeviceContext2_OMSetDepthStencilState(ID3D11DeviceContext2* This,ID3D11DepthStencilState *pDepthStencilState,UINT StencilRef) {
1310     This->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef);
1311 }
1312 static FORCEINLINE void ID3D11DeviceContext2_SOSetTargets(ID3D11DeviceContext2* This,UINT NumBuffers,ID3D11Buffer *const *ppSOTargets,const UINT *pOffsets) {
1313     This->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets);
1314 }
1315 static FORCEINLINE void ID3D11DeviceContext2_DrawAuto(ID3D11DeviceContext2* This) {
1316     This->lpVtbl->DrawAuto(This);
1317 }
1318 static FORCEINLINE void ID3D11DeviceContext2_DrawIndexedInstancedIndirect(ID3D11DeviceContext2* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) {
1319     This->lpVtbl->DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs);
1320 }
1321 static FORCEINLINE void ID3D11DeviceContext2_DrawInstancedIndirect(ID3D11DeviceContext2* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) {
1322     This->lpVtbl->DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs);
1323 }
1324 static FORCEINLINE void ID3D11DeviceContext2_Dispatch(ID3D11DeviceContext2* This,UINT ThreadGroupCountX,UINT ThreadGroupCountY,UINT ThreadGroupCountZ) {
1325     This->lpVtbl->Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ);
1326 }
1327 static FORCEINLINE void ID3D11DeviceContext2_DispatchIndirect(ID3D11DeviceContext2* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) {
1328     This->lpVtbl->DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs);
1329 }
1330 static FORCEINLINE void ID3D11DeviceContext2_RSSetState(ID3D11DeviceContext2* This,ID3D11RasterizerState *pRasterizerState) {
1331     This->lpVtbl->RSSetState(This,pRasterizerState);
1332 }
1333 static FORCEINLINE void ID3D11DeviceContext2_RSSetViewports(ID3D11DeviceContext2* This,UINT NumViewports,const D3D11_VIEWPORT *pViewports) {
1334     This->lpVtbl->RSSetViewports(This,NumViewports,pViewports);
1335 }
1336 static FORCEINLINE void ID3D11DeviceContext2_RSSetScissorRects(ID3D11DeviceContext2* This,UINT NumRects,const D3D11_RECT *pRects) {
1337     This->lpVtbl->RSSetScissorRects(This,NumRects,pRects);
1338 }
1339 static FORCEINLINE void ID3D11DeviceContext2_CopySubresourceRegion(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,UINT DstSubresource,UINT DstX,UINT DstY,UINT DstZ,ID3D11Resource *pSrcResource,UINT SrcSubresource,const D3D11_BOX *pSrcBox) {
1340     This->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox);
1341 }
1342 static FORCEINLINE void ID3D11DeviceContext2_CopyResource(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,ID3D11Resource *pSrcResource) {
1343     This->lpVtbl->CopyResource(This,pDstResource,pSrcResource);
1344 }
1345 static FORCEINLINE void ID3D11DeviceContext2_UpdateSubresource(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,UINT DstSubresource,const D3D11_BOX *pDstBox,const void *pSrcData,UINT SrcRowPitch,UINT SrcDepthPitch) {
1346     This->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch);
1347 }
1348 static FORCEINLINE void ID3D11DeviceContext2_CopyStructureCount(ID3D11DeviceContext2* This,ID3D11Buffer *pDstBuffer,UINT DstAlignedByteOffset,ID3D11UnorderedAccessView *pSrcView) {
1349     This->lpVtbl->CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView);
1350 }
1351 static FORCEINLINE void ID3D11DeviceContext2_ClearRenderTargetView(ID3D11DeviceContext2* This,ID3D11RenderTargetView *pRenderTargetView,const FLOAT ColorRGBA[4]) {
1352     This->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA);
1353 }
1354 static FORCEINLINE void ID3D11DeviceContext2_ClearUnorderedAccessViewUint(ID3D11DeviceContext2* This,ID3D11UnorderedAccessView *pUnorderedAccessView,const UINT Values[4]) {
1355     This->lpVtbl->ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values);
1356 }
1357 static FORCEINLINE void ID3D11DeviceContext2_ClearUnorderedAccessViewFloat(ID3D11DeviceContext2* This,ID3D11UnorderedAccessView *pUnorderedAccessView,const FLOAT Values[4]) {
1358     This->lpVtbl->ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values);
1359 }
1360 static FORCEINLINE void ID3D11DeviceContext2_ClearDepthStencilView(ID3D11DeviceContext2* This,ID3D11DepthStencilView *pDepthStencilView,UINT ClearFlags,FLOAT Depth,UINT8 Stencil) {
1361     This->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil);
1362 }
1363 static FORCEINLINE void ID3D11DeviceContext2_GenerateMips(ID3D11DeviceContext2* This,ID3D11ShaderResourceView *pShaderResourceView) {
1364     This->lpVtbl->GenerateMips(This,pShaderResourceView);
1365 }
1366 static FORCEINLINE void ID3D11DeviceContext2_SetResourceMinLOD(ID3D11DeviceContext2* This,ID3D11Resource *pResource,FLOAT MinLOD) {
1367     This->lpVtbl->SetResourceMinLOD(This,pResource,MinLOD);
1368 }
1369 static FORCEINLINE FLOAT ID3D11DeviceContext2_GetResourceMinLOD(ID3D11DeviceContext2* This,ID3D11Resource *pResource) {
1370     return This->lpVtbl->GetResourceMinLOD(This,pResource);
1371 }
1372 static FORCEINLINE void ID3D11DeviceContext2_ResolveSubresource(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,UINT DstSubresource,ID3D11Resource *pSrcResource,UINT SrcSubresource,DXGI_FORMAT Format) {
1373     This->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format);
1374 }
1375 static FORCEINLINE void ID3D11DeviceContext2_ExecuteCommandList(ID3D11DeviceContext2* This,ID3D11CommandList *pCommandList,WINBOOL RestoreContextState) {
1376     This->lpVtbl->ExecuteCommandList(This,pCommandList,RestoreContextState);
1377 }
1378 static FORCEINLINE void ID3D11DeviceContext2_HSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
1379     This->lpVtbl->HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
1380 }
1381 static FORCEINLINE void ID3D11DeviceContext2_HSSetShader(ID3D11DeviceContext2* This,ID3D11HullShader *pHullShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
1382     This->lpVtbl->HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances);
1383 }
1384 static FORCEINLINE void ID3D11DeviceContext2_HSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
1385     This->lpVtbl->HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
1386 }
1387 static FORCEINLINE void ID3D11DeviceContext2_HSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
1388     This->lpVtbl->HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
1389 }
1390 static FORCEINLINE void ID3D11DeviceContext2_DSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
1391     This->lpVtbl->DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
1392 }
1393 static FORCEINLINE void ID3D11DeviceContext2_DSSetShader(ID3D11DeviceContext2* This,ID3D11DomainShader *pDomainShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
1394     This->lpVtbl->DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances);
1395 }
1396 static FORCEINLINE void ID3D11DeviceContext2_DSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
1397     This->lpVtbl->DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
1398 }
1399 static FORCEINLINE void ID3D11DeviceContext2_DSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
1400     This->lpVtbl->DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
1401 }
1402 static FORCEINLINE void ID3D11DeviceContext2_CSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
1403     This->lpVtbl->CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
1404 }
1405 static FORCEINLINE void ID3D11DeviceContext2_CSSetUnorderedAccessViews(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumUAVs,ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,const UINT *pUAVInitialCounts) {
1406     This->lpVtbl->CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts);
1407 }
1408 static FORCEINLINE void ID3D11DeviceContext2_CSSetShader(ID3D11DeviceContext2* This,ID3D11ComputeShader *pComputeShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
1409     This->lpVtbl->CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances);
1410 }
1411 static FORCEINLINE void ID3D11DeviceContext2_CSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
1412     This->lpVtbl->CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
1413 }
1414 static FORCEINLINE void ID3D11DeviceContext2_CSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
1415     This->lpVtbl->CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
1416 }
1417 static FORCEINLINE void ID3D11DeviceContext2_VSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
1418     This->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
1419 }
1420 static FORCEINLINE void ID3D11DeviceContext2_PSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
1421     This->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
1422 }
1423 static FORCEINLINE void ID3D11DeviceContext2_PSGetShader(ID3D11DeviceContext2* This,ID3D11PixelShader **ppPixelShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
1424     This->lpVtbl->PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances);
1425 }
1426 static FORCEINLINE void ID3D11DeviceContext2_PSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
1427     This->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
1428 }
1429 static FORCEINLINE void ID3D11DeviceContext2_VSGetShader(ID3D11DeviceContext2* This,ID3D11VertexShader **ppVertexShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
1430     This->lpVtbl->VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances);
1431 }
1432 static FORCEINLINE void ID3D11DeviceContext2_PSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
1433     This->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
1434 }
1435 static FORCEINLINE void ID3D11DeviceContext2_IAGetInputLayout(ID3D11DeviceContext2* This,ID3D11InputLayout **ppInputLayout) {
1436     This->lpVtbl->IAGetInputLayout(This,ppInputLayout);
1437 }
1438 static FORCEINLINE void ID3D11DeviceContext2_IAGetVertexBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppVertexBuffers,UINT *pStrides,UINT *pOffsets) {
1439     This->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets);
1440 }
1441 static FORCEINLINE void ID3D11DeviceContext2_IAGetIndexBuffer(ID3D11DeviceContext2* This,ID3D11Buffer **pIndexBuffer,DXGI_FORMAT *Format,UINT *Offset) {
1442     This->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset);
1443 }
1444 static FORCEINLINE void ID3D11DeviceContext2_GSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
1445     This->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
1446 }
1447 static FORCEINLINE void ID3D11DeviceContext2_GSGetShader(ID3D11DeviceContext2* This,ID3D11GeometryShader **ppGeometryShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
1448     This->lpVtbl->GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances);
1449 }
1450 static FORCEINLINE void ID3D11DeviceContext2_IAGetPrimitiveTopology(ID3D11DeviceContext2* This,D3D11_PRIMITIVE_TOPOLOGY *pTopology) {
1451     This->lpVtbl->IAGetPrimitiveTopology(This,pTopology);
1452 }
1453 static FORCEINLINE void ID3D11DeviceContext2_VSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
1454     This->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
1455 }
1456 static FORCEINLINE void ID3D11DeviceContext2_VSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
1457     This->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
1458 }
1459 static FORCEINLINE void ID3D11DeviceContext2_GetPredication(ID3D11DeviceContext2* This,ID3D11Predicate **ppPredicate,WINBOOL *pPredicateValue) {
1460     This->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue);
1461 }
1462 static FORCEINLINE void ID3D11DeviceContext2_GSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
1463     This->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
1464 }
1465 static FORCEINLINE void ID3D11DeviceContext2_GSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
1466     This->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
1467 }
1468 static FORCEINLINE void ID3D11DeviceContext2_OMGetRenderTargets(ID3D11DeviceContext2* This,UINT NumViews,ID3D11RenderTargetView **ppRenderTargetViews,ID3D11DepthStencilView **ppDepthStencilView) {
1469     This->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView);
1470 }
1471 static FORCEINLINE void ID3D11DeviceContext2_OMGetRenderTargetsAndUnorderedAccessViews(ID3D11DeviceContext2* This,UINT NumRTVs,ID3D11RenderTargetView **ppRenderTargetViews,ID3D11DepthStencilView **ppDepthStencilView,UINT UAVStartSlot,UINT NumUAVs,ID3D11UnorderedAccessView **ppUnorderedAccessViews) {
1472     This->lpVtbl->OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews);
1473 }
1474 static FORCEINLINE void ID3D11DeviceContext2_OMGetBlendState(ID3D11DeviceContext2* This,ID3D11BlendState **ppBlendState,FLOAT BlendFactor[4],UINT *pSampleMask) {
1475     This->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask);
1476 }
1477 static FORCEINLINE void ID3D11DeviceContext2_OMGetDepthStencilState(ID3D11DeviceContext2* This,ID3D11DepthStencilState **ppDepthStencilState,UINT *pStencilRef) {
1478     This->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef);
1479 }
1480 static FORCEINLINE void ID3D11DeviceContext2_SOGetTargets(ID3D11DeviceContext2* This,UINT NumBuffers,ID3D11Buffer **ppSOTargets) {
1481     This->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets);
1482 }
1483 static FORCEINLINE void ID3D11DeviceContext2_RSGetState(ID3D11DeviceContext2* This,ID3D11RasterizerState **ppRasterizerState) {
1484     This->lpVtbl->RSGetState(This,ppRasterizerState);
1485 }
1486 static FORCEINLINE void ID3D11DeviceContext2_RSGetViewports(ID3D11DeviceContext2* This,UINT *pNumViewports,D3D11_VIEWPORT *pViewports) {
1487     This->lpVtbl->RSGetViewports(This,pNumViewports,pViewports);
1488 }
1489 static FORCEINLINE void ID3D11DeviceContext2_RSGetScissorRects(ID3D11DeviceContext2* This,UINT *pNumRects,D3D11_RECT *pRects) {
1490     This->lpVtbl->RSGetScissorRects(This,pNumRects,pRects);
1491 }
1492 static FORCEINLINE void ID3D11DeviceContext2_HSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
1493     This->lpVtbl->HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
1494 }
1495 static FORCEINLINE void ID3D11DeviceContext2_HSGetShader(ID3D11DeviceContext2* This,ID3D11HullShader **ppHullShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
1496     This->lpVtbl->HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances);
1497 }
1498 static FORCEINLINE void ID3D11DeviceContext2_HSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
1499     This->lpVtbl->HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
1500 }
1501 static FORCEINLINE void ID3D11DeviceContext2_HSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
1502     This->lpVtbl->HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
1503 }
1504 static FORCEINLINE void ID3D11DeviceContext2_DSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
1505     This->lpVtbl->DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
1506 }
1507 static FORCEINLINE void ID3D11DeviceContext2_DSGetShader(ID3D11DeviceContext2* This,ID3D11DomainShader **ppDomainShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
1508     This->lpVtbl->DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances);
1509 }
1510 static FORCEINLINE void ID3D11DeviceContext2_DSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
1511     This->lpVtbl->DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
1512 }
1513 static FORCEINLINE void ID3D11DeviceContext2_DSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
1514     This->lpVtbl->DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
1515 }
1516 static FORCEINLINE void ID3D11DeviceContext2_CSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
1517     This->lpVtbl->CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
1518 }
1519 static FORCEINLINE void ID3D11DeviceContext2_CSGetUnorderedAccessViews(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumUAVs,ID3D11UnorderedAccessView **ppUnorderedAccessViews) {
1520     This->lpVtbl->CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews);
1521 }
1522 static FORCEINLINE void ID3D11DeviceContext2_CSGetShader(ID3D11DeviceContext2* This,ID3D11ComputeShader **ppComputeShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
1523     This->lpVtbl->CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances);
1524 }
1525 static FORCEINLINE void ID3D11DeviceContext2_CSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
1526     This->lpVtbl->CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
1527 }
1528 static FORCEINLINE void ID3D11DeviceContext2_CSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
1529     This->lpVtbl->CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
1530 }
1531 static FORCEINLINE void ID3D11DeviceContext2_ClearState(ID3D11DeviceContext2* This) {
1532     This->lpVtbl->ClearState(This);
1533 }
1534 static FORCEINLINE void ID3D11DeviceContext2_Flush(ID3D11DeviceContext2* This) {
1535     This->lpVtbl->Flush(This);
1536 }
1537 static FORCEINLINE D3D11_DEVICE_CONTEXT_TYPE ID3D11DeviceContext2_GetType(ID3D11DeviceContext2* This) {
1538     return This->lpVtbl->GetType(This);
1539 }
1540 static FORCEINLINE UINT ID3D11DeviceContext2_GetContextFlags(ID3D11DeviceContext2* This) {
1541     return This->lpVtbl->GetContextFlags(This);
1542 }
1543 static FORCEINLINE HRESULT ID3D11DeviceContext2_FinishCommandList(ID3D11DeviceContext2* This,WINBOOL RestoreDeferredContextState,ID3D11CommandList **ppCommandList) {
1544     return This->lpVtbl->FinishCommandList(This,RestoreDeferredContextState,ppCommandList);
1545 }
1546 /*** ID3D11DeviceContext1 methods ***/
1547 static FORCEINLINE void ID3D11DeviceContext2_CopySubresourceRegion1(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,UINT DstSubresource,UINT DstX,UINT DstY,UINT DstZ,ID3D11Resource *pSrcResource,UINT SrcSubresource,const D3D11_BOX *pSrcBox,UINT CopyFlags) {
1548     This->lpVtbl->CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags);
1549 }
1550 static FORCEINLINE void ID3D11DeviceContext2_UpdateSubresource1(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,UINT DstSubresource,const D3D11_BOX *pDstBox,const void *pSrcData,UINT SrcRowPitch,UINT SrcDepthPitch,UINT CopyFlags) {
1551     This->lpVtbl->UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags);
1552 }
1553 static FORCEINLINE void ID3D11DeviceContext2_DiscardResource(ID3D11DeviceContext2* This,ID3D11Resource *pResource) {
1554     This->lpVtbl->DiscardResource(This,pResource);
1555 }
1556 static FORCEINLINE void ID3D11DeviceContext2_DiscardView(ID3D11DeviceContext2* This,ID3D11View *pResourceView) {
1557     This->lpVtbl->DiscardView(This,pResourceView);
1558 }
1559 static FORCEINLINE void ID3D11DeviceContext2_VSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) {
1560     This->lpVtbl->VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
1561 }
1562 static FORCEINLINE void ID3D11DeviceContext2_HSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) {
1563     This->lpVtbl->HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
1564 }
1565 static FORCEINLINE void ID3D11DeviceContext2_DSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) {
1566     This->lpVtbl->DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
1567 }
1568 static FORCEINLINE void ID3D11DeviceContext2_GSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) {
1569     This->lpVtbl->GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
1570 }
1571 static FORCEINLINE void ID3D11DeviceContext2_PSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) {
1572     This->lpVtbl->PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
1573 }
1574 static FORCEINLINE void ID3D11DeviceContext2_CSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) {
1575     This->lpVtbl->CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
1576 }
1577 static FORCEINLINE void ID3D11DeviceContext2_VSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) {
1578     This->lpVtbl->VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
1579 }
1580 static FORCEINLINE void ID3D11DeviceContext2_HSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) {
1581     This->lpVtbl->HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
1582 }
1583 static FORCEINLINE void ID3D11DeviceContext2_DSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) {
1584     This->lpVtbl->DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
1585 }
1586 static FORCEINLINE void ID3D11DeviceContext2_GSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) {
1587     This->lpVtbl->GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
1588 }
1589 static FORCEINLINE void ID3D11DeviceContext2_PSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) {
1590     This->lpVtbl->PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
1591 }
1592 static FORCEINLINE void ID3D11DeviceContext2_CSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) {
1593     This->lpVtbl->CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
1594 }
1595 static FORCEINLINE void ID3D11DeviceContext2_SwapDeviceContextState(ID3D11DeviceContext2* This,ID3DDeviceContextState *pState,ID3DDeviceContextState **ppPreviousState) {
1596     This->lpVtbl->SwapDeviceContextState(This,pState,ppPreviousState);
1597 }
1598 static FORCEINLINE void ID3D11DeviceContext2_ClearView(ID3D11DeviceContext2* This,ID3D11View *pView,const FLOAT Color[4],const D3D11_RECT *pRect,UINT NumRects) {
1599     This->lpVtbl->ClearView(This,pView,Color,pRect,NumRects);
1600 }
1601 static FORCEINLINE void ID3D11DeviceContext2_DiscardView1(ID3D11DeviceContext2* This,ID3D11View *pResourceView,const D3D11_RECT *pRects,UINT NumRects) {
1602     This->lpVtbl->DiscardView1(This,pResourceView,pRects,NumRects);
1603 }
1604 /*** ID3D11DeviceContext2 methods ***/
1605 static FORCEINLINE HRESULT ID3D11DeviceContext2_UpdateTileMappings(ID3D11DeviceContext2* This,ID3D11Resource *resource,UINT region_count,const D3D11_TILED_RESOURCE_COORDINATE *region_start_coordinates,const D3D11_TILE_REGION_SIZE *region_sizes,ID3D11Buffer *pool,UINT range_count,const UINT *range_flags,const UINT *pool_start_offsets,const UINT *range_tile_counts,UINT flags) {
1606     return This->lpVtbl->UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,pool,range_count,range_flags,pool_start_offsets,range_tile_counts,flags);
1607 }
1608 static FORCEINLINE HRESULT ID3D11DeviceContext2_CopyTileMappings(ID3D11DeviceContext2* This,ID3D11Resource *dst_resource,const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,ID3D11Resource *src_resource,const D3D11_TILED_RESOURCE_COORDINATE *src_start_coordinate,const D3D11_TILE_REGION_SIZE *region_size,UINT flags) {
1609     return This->lpVtbl->CopyTileMappings(This,dst_resource,dst_start_coordinate,src_resource,src_start_coordinate,region_size,flags);
1610 }
1611 static FORCEINLINE void ID3D11DeviceContext2_CopyTiles(ID3D11DeviceContext2* This,ID3D11Resource *resource,const D3D11_TILED_RESOURCE_COORDINATE *start_coordinate,const D3D11_TILE_REGION_SIZE *size,ID3D11Buffer *buffer,UINT64 start_offset,UINT flags) {
1612     This->lpVtbl->CopyTiles(This,resource,start_coordinate,size,buffer,start_offset,flags);
1613 }
1614 static FORCEINLINE void ID3D11DeviceContext2_UpdateTiles(ID3D11DeviceContext2* This,ID3D11Resource *dst_resource,const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,const D3D11_TILE_REGION_SIZE *dst_region_size,const void *src_data,UINT flags) {
1615     This->lpVtbl->UpdateTiles(This,dst_resource,dst_start_coordinate,dst_region_size,src_data,flags);
1616 }
1617 static FORCEINLINE HRESULT ID3D11DeviceContext2_ResizeTilePool(ID3D11DeviceContext2* This,ID3D11Buffer *pool,UINT64 size) {
1618     return This->lpVtbl->ResizeTilePool(This,pool,size);
1619 }
1620 static FORCEINLINE void ID3D11DeviceContext2_TiledResourceBarrier(ID3D11DeviceContext2* This,ID3D11DeviceChild *before_barrier,ID3D11DeviceChild *after_barrier) {
1621     This->lpVtbl->TiledResourceBarrier(This,before_barrier,after_barrier);
1622 }
1623 static FORCEINLINE WINBOOL ID3D11DeviceContext2_IsAnnotationEnabled(ID3D11DeviceContext2* This) {
1624     return This->lpVtbl->IsAnnotationEnabled(This);
1625 }
1626 static FORCEINLINE void ID3D11DeviceContext2_SetMarkerInt(ID3D11DeviceContext2* This,const WCHAR *label,int data) {
1627     This->lpVtbl->SetMarkerInt(This,label,data);
1628 }
1629 static FORCEINLINE void ID3D11DeviceContext2_BeginEventInt(ID3D11DeviceContext2* This,const WCHAR *label,int data) {
1630     This->lpVtbl->BeginEventInt(This,label,data);
1631 }
1632 static FORCEINLINE void ID3D11DeviceContext2_EndEvent(ID3D11DeviceContext2* This) {
1633     This->lpVtbl->EndEvent(This);
1634 }
1635 #endif
1636 #endif
1637 
1638 #endif
1639 
1640 
1641 #endif  /* __ID3D11DeviceContext2_INTERFACE_DEFINED__ */
1642 
1643 /*****************************************************************************
1644  * ID3D11Device2 interface
1645  */
1646 #ifndef __ID3D11Device2_INTERFACE_DEFINED__
1647 #define __ID3D11Device2_INTERFACE_DEFINED__
1648 
1649 DEFINE_GUID(IID_ID3D11Device2, 0x9d06dffa, 0xd1e5, 0x4d07, 0x83,0xa8, 0x1b,0xb1,0x23,0xf2,0xf8,0x41);
1650 #if defined(__cplusplus) && !defined(CINTERFACE)
1651 MIDL_INTERFACE("9d06dffa-d1e5-4d07-83a8-1bb123f2f841")
1652 ID3D11Device2 : public ID3D11Device1
1653 {
1654     virtual void STDMETHODCALLTYPE GetImmediateContext2(
1655         ID3D11DeviceContext2 **context) = 0;
1656 
1657     virtual HRESULT STDMETHODCALLTYPE CreateDeferredContext2(
1658         UINT flags,
1659         ID3D11DeviceContext2 **context) = 0;
1660 
1661     virtual void STDMETHODCALLTYPE GetResourceTiling(
1662         ID3D11Resource *resource,
1663         UINT *tile_count,
1664         D3D11_PACKED_MIP_DESC *mip_desc,
1665         D3D11_TILE_SHAPE *tile_shape,
1666         UINT *subresource_tiling_count,
1667         UINT first_subresource_tiling,
1668         D3D11_SUBRESOURCE_TILING *subresource_tiling) = 0;
1669 
1670     virtual HRESULT STDMETHODCALLTYPE CheckMultisampleQualityLevels1(
1671         DXGI_FORMAT format,
1672         UINT sample_count,
1673         UINT flags,
1674         UINT *quality_level_count) = 0;
1675 
1676 };
1677 #ifdef __CRT_UUID_DECL
1678 __CRT_UUID_DECL(ID3D11Device2, 0x9d06dffa, 0xd1e5, 0x4d07, 0x83,0xa8, 0x1b,0xb1,0x23,0xf2,0xf8,0x41)
1679 #endif
1680 #else
1681 typedef struct ID3D11Device2Vtbl {
1682     BEGIN_INTERFACE
1683 
1684     /*** IUnknown methods ***/
1685     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1686         ID3D11Device2 *This,
1687         REFIID riid,
1688         void **ppvObject);
1689 
1690     ULONG (STDMETHODCALLTYPE *AddRef)(
1691         ID3D11Device2 *This);
1692 
1693     ULONG (STDMETHODCALLTYPE *Release)(
1694         ID3D11Device2 *This);
1695 
1696     /*** ID3D11Device methods ***/
1697     HRESULT (STDMETHODCALLTYPE *CreateBuffer)(
1698         ID3D11Device2 *This,
1699         const D3D11_BUFFER_DESC *pDesc,
1700         const D3D11_SUBRESOURCE_DATA *pInitialData,
1701         ID3D11Buffer **ppBuffer);
1702 
1703     HRESULT (STDMETHODCALLTYPE *CreateTexture1D)(
1704         ID3D11Device2 *This,
1705         const D3D11_TEXTURE1D_DESC *pDesc,
1706         const D3D11_SUBRESOURCE_DATA *pInitialData,
1707         ID3D11Texture1D **ppTexture1D);
1708 
1709     HRESULT (STDMETHODCALLTYPE *CreateTexture2D)(
1710         ID3D11Device2 *This,
1711         const D3D11_TEXTURE2D_DESC *pDesc,
1712         const D3D11_SUBRESOURCE_DATA *pInitialData,
1713         ID3D11Texture2D **ppTexture2D);
1714 
1715     HRESULT (STDMETHODCALLTYPE *CreateTexture3D)(
1716         ID3D11Device2 *This,
1717         const D3D11_TEXTURE3D_DESC *pDesc,
1718         const D3D11_SUBRESOURCE_DATA *pInitialData,
1719         ID3D11Texture3D **ppTexture3D);
1720 
1721     HRESULT (STDMETHODCALLTYPE *CreateShaderResourceView)(
1722         ID3D11Device2 *This,
1723         ID3D11Resource *pResource,
1724         const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc,
1725         ID3D11ShaderResourceView **ppSRView);
1726 
1727     HRESULT (STDMETHODCALLTYPE *CreateUnorderedAccessView)(
1728         ID3D11Device2 *This,
1729         ID3D11Resource *pResource,
1730         const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc,
1731         ID3D11UnorderedAccessView **ppUAView);
1732 
1733     HRESULT (STDMETHODCALLTYPE *CreateRenderTargetView)(
1734         ID3D11Device2 *This,
1735         ID3D11Resource *pResource,
1736         const D3D11_RENDER_TARGET_VIEW_DESC *pDesc,
1737         ID3D11RenderTargetView **ppRTView);
1738 
1739     HRESULT (STDMETHODCALLTYPE *CreateDepthStencilView)(
1740         ID3D11Device2 *This,
1741         ID3D11Resource *pResource,
1742         const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc,
1743         ID3D11DepthStencilView **ppDepthStencilView);
1744 
1745     HRESULT (STDMETHODCALLTYPE *CreateInputLayout)(
1746         ID3D11Device2 *This,
1747         const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs,
1748         UINT NumElements,
1749         const void *pShaderBytecodeWithInputSignature,
1750         SIZE_T BytecodeLength,
1751         ID3D11InputLayout **ppInputLayout);
1752 
1753     HRESULT (STDMETHODCALLTYPE *CreateVertexShader)(
1754         ID3D11Device2 *This,
1755         const void *pShaderBytecode,
1756         SIZE_T BytecodeLength,
1757         ID3D11ClassLinkage *pClassLinkage,
1758         ID3D11VertexShader **ppVertexShader);
1759 
1760     HRESULT (STDMETHODCALLTYPE *CreateGeometryShader)(
1761         ID3D11Device2 *This,
1762         const void *pShaderBytecode,
1763         SIZE_T BytecodeLength,
1764         ID3D11ClassLinkage *pClassLinkage,
1765         ID3D11GeometryShader **ppGeometryShader);
1766 
1767     HRESULT (STDMETHODCALLTYPE *CreateGeometryShaderWithStreamOutput)(
1768         ID3D11Device2 *This,
1769         const void *pShaderBytecode,
1770         SIZE_T BytecodeLength,
1771         const D3D11_SO_DECLARATION_ENTRY *pSODeclaration,
1772         UINT NumEntries,
1773         const UINT *pBufferStrides,
1774         UINT NumStrides,
1775         UINT RasterizedStream,
1776         ID3D11ClassLinkage *pClassLinkage,
1777         ID3D11GeometryShader **ppGeometryShader);
1778 
1779     HRESULT (STDMETHODCALLTYPE *CreatePixelShader)(
1780         ID3D11Device2 *This,
1781         const void *pShaderBytecode,
1782         SIZE_T BytecodeLength,
1783         ID3D11ClassLinkage *pClassLinkage,
1784         ID3D11PixelShader **ppPixelShader);
1785 
1786     HRESULT (STDMETHODCALLTYPE *CreateHullShader)(
1787         ID3D11Device2 *This,
1788         const void *pShaderBytecode,
1789         SIZE_T BytecodeLength,
1790         ID3D11ClassLinkage *pClassLinkage,
1791         ID3D11HullShader **ppHullShader);
1792 
1793     HRESULT (STDMETHODCALLTYPE *CreateDomainShader)(
1794         ID3D11Device2 *This,
1795         const void *pShaderBytecode,
1796         SIZE_T BytecodeLength,
1797         ID3D11ClassLinkage *pClassLinkage,
1798         ID3D11DomainShader **ppDomainShader);
1799 
1800     HRESULT (STDMETHODCALLTYPE *CreateComputeShader)(
1801         ID3D11Device2 *This,
1802         const void *pShaderBytecode,
1803         SIZE_T BytecodeLength,
1804         ID3D11ClassLinkage *pClassLinkage,
1805         ID3D11ComputeShader **ppComputeShader);
1806 
1807     HRESULT (STDMETHODCALLTYPE *CreateClassLinkage)(
1808         ID3D11Device2 *This,
1809         ID3D11ClassLinkage **ppLinkage);
1810 
1811     HRESULT (STDMETHODCALLTYPE *CreateBlendState)(
1812         ID3D11Device2 *This,
1813         const D3D11_BLEND_DESC *pBlendStateDesc,
1814         ID3D11BlendState **ppBlendState);
1815 
1816     HRESULT (STDMETHODCALLTYPE *CreateDepthStencilState)(
1817         ID3D11Device2 *This,
1818         const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc,
1819         ID3D11DepthStencilState **ppDepthStencilState);
1820 
1821     HRESULT (STDMETHODCALLTYPE *CreateRasterizerState)(
1822         ID3D11Device2 *This,
1823         const D3D11_RASTERIZER_DESC *pRasterizerDesc,
1824         ID3D11RasterizerState **ppRasterizerState);
1825 
1826     HRESULT (STDMETHODCALLTYPE *CreateSamplerState)(
1827         ID3D11Device2 *This,
1828         const D3D11_SAMPLER_DESC *pSamplerDesc,
1829         ID3D11SamplerState **ppSamplerState);
1830 
1831     HRESULT (STDMETHODCALLTYPE *CreateQuery)(
1832         ID3D11Device2 *This,
1833         const D3D11_QUERY_DESC *pQueryDesc,
1834         ID3D11Query **ppQuery);
1835 
1836     HRESULT (STDMETHODCALLTYPE *CreatePredicate)(
1837         ID3D11Device2 *This,
1838         const D3D11_QUERY_DESC *pPredicateDesc,
1839         ID3D11Predicate **ppPredicate);
1840 
1841     HRESULT (STDMETHODCALLTYPE *CreateCounter)(
1842         ID3D11Device2 *This,
1843         const D3D11_COUNTER_DESC *pCounterDesc,
1844         ID3D11Counter **ppCounter);
1845 
1846     HRESULT (STDMETHODCALLTYPE *CreateDeferredContext)(
1847         ID3D11Device2 *This,
1848         UINT ContextFlags,
1849         ID3D11DeviceContext **ppDeferredContext);
1850 
1851     HRESULT (STDMETHODCALLTYPE *OpenSharedResource)(
1852         ID3D11Device2 *This,
1853         HANDLE hResource,
1854         REFIID ReturnedInterface,
1855         void **ppResource);
1856 
1857     HRESULT (STDMETHODCALLTYPE *CheckFormatSupport)(
1858         ID3D11Device2 *This,
1859         DXGI_FORMAT Format,
1860         UINT *pFormatSupport);
1861 
1862     HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels)(
1863         ID3D11Device2 *This,
1864         DXGI_FORMAT Format,
1865         UINT SampleCount,
1866         UINT *pNumQualityLevels);
1867 
1868     void (STDMETHODCALLTYPE *CheckCounterInfo)(
1869         ID3D11Device2 *This,
1870         D3D11_COUNTER_INFO *pCounterInfo);
1871 
1872     HRESULT (STDMETHODCALLTYPE *CheckCounter)(
1873         ID3D11Device2 *This,
1874         const D3D11_COUNTER_DESC *pDesc,
1875         D3D11_COUNTER_TYPE *pType,
1876         UINT *pActiveCounters,
1877         LPSTR szName,
1878         UINT *pNameLength,
1879         LPSTR szUnits,
1880         UINT *pUnitsLength,
1881         LPSTR szDescription,
1882         UINT *pDescriptionLength);
1883 
1884     HRESULT (STDMETHODCALLTYPE *CheckFeatureSupport)(
1885         ID3D11Device2 *This,
1886         D3D11_FEATURE Feature,
1887         void *pFeatureSupportData,
1888         UINT FeatureSupportDataSize);
1889 
1890     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
1891         ID3D11Device2 *This,
1892         REFGUID guid,
1893         UINT *pDataSize,
1894         void *pData);
1895 
1896     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
1897         ID3D11Device2 *This,
1898         REFGUID guid,
1899         UINT DataSize,
1900         const void *pData);
1901 
1902     HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
1903         ID3D11Device2 *This,
1904         REFGUID guid,
1905         const IUnknown *pData);
1906 
1907     D3D_FEATURE_LEVEL (STDMETHODCALLTYPE *GetFeatureLevel)(
1908         ID3D11Device2 *This);
1909 
1910     UINT (STDMETHODCALLTYPE *GetCreationFlags)(
1911         ID3D11Device2 *This);
1912 
1913     HRESULT (STDMETHODCALLTYPE *GetDeviceRemovedReason)(
1914         ID3D11Device2 *This);
1915 
1916     void (STDMETHODCALLTYPE *GetImmediateContext)(
1917         ID3D11Device2 *This,
1918         ID3D11DeviceContext **ppImmediateContext);
1919 
1920     HRESULT (STDMETHODCALLTYPE *SetExceptionMode)(
1921         ID3D11Device2 *This,
1922         UINT RaiseFlags);
1923 
1924     UINT (STDMETHODCALLTYPE *GetExceptionMode)(
1925         ID3D11Device2 *This);
1926 
1927     /*** ID3D11Device1 methods ***/
1928     void (STDMETHODCALLTYPE *GetImmediateContext1)(
1929         ID3D11Device2 *This,
1930         ID3D11DeviceContext1 **ppImmediateContext);
1931 
1932     HRESULT (STDMETHODCALLTYPE *CreateDeferredContext1)(
1933         ID3D11Device2 *This,
1934         UINT ContextFlags,
1935         ID3D11DeviceContext1 **ppDeferredContext);
1936 
1937     HRESULT (STDMETHODCALLTYPE *CreateBlendState1)(
1938         ID3D11Device2 *This,
1939         const D3D11_BLEND_DESC1 *pBlendStateDesc,
1940         ID3D11BlendState1 **ppBlendState);
1941 
1942     HRESULT (STDMETHODCALLTYPE *CreateRasterizerState1)(
1943         ID3D11Device2 *This,
1944         const D3D11_RASTERIZER_DESC1 *pRasterizerDesc,
1945         ID3D11RasterizerState1 **ppRasterizerState);
1946 
1947     HRESULT (STDMETHODCALLTYPE *CreateDeviceContextState)(
1948         ID3D11Device2 *This,
1949         UINT Flags,
1950         const D3D_FEATURE_LEVEL *pFeatureLevels,
1951         UINT FeatureLevels,
1952         UINT SDKVersion,
1953         REFIID EmulatedInterface,
1954         D3D_FEATURE_LEVEL *pChosenFeatureLevel,
1955         ID3DDeviceContextState **ppContextState);
1956 
1957     HRESULT (STDMETHODCALLTYPE *OpenSharedResource1)(
1958         ID3D11Device2 *This,
1959         HANDLE hResource,
1960         REFIID returnedInterface,
1961         void **ppResource);
1962 
1963     HRESULT (STDMETHODCALLTYPE *OpenSharedResourceByName)(
1964         ID3D11Device2 *This,
1965         LPCWSTR lpName,
1966         DWORD dwDesiredAccess,
1967         REFIID returnedInterface,
1968         void **ppResource);
1969 
1970     /*** ID3D11Device2 methods ***/
1971     void (STDMETHODCALLTYPE *GetImmediateContext2)(
1972         ID3D11Device2 *This,
1973         ID3D11DeviceContext2 **context);
1974 
1975     HRESULT (STDMETHODCALLTYPE *CreateDeferredContext2)(
1976         ID3D11Device2 *This,
1977         UINT flags,
1978         ID3D11DeviceContext2 **context);
1979 
1980     void (STDMETHODCALLTYPE *GetResourceTiling)(
1981         ID3D11Device2 *This,
1982         ID3D11Resource *resource,
1983         UINT *tile_count,
1984         D3D11_PACKED_MIP_DESC *mip_desc,
1985         D3D11_TILE_SHAPE *tile_shape,
1986         UINT *subresource_tiling_count,
1987         UINT first_subresource_tiling,
1988         D3D11_SUBRESOURCE_TILING *subresource_tiling);
1989 
1990     HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels1)(
1991         ID3D11Device2 *This,
1992         DXGI_FORMAT format,
1993         UINT sample_count,
1994         UINT flags,
1995         UINT *quality_level_count);
1996 
1997     END_INTERFACE
1998 } ID3D11Device2Vtbl;
1999 
2000 interface ID3D11Device2 {
2001     CONST_VTBL ID3D11Device2Vtbl* lpVtbl;
2002 };
2003 
2004 #ifdef COBJMACROS
2005 #ifndef WIDL_C_INLINE_WRAPPERS
2006 /*** IUnknown methods ***/
2007 #define ID3D11Device2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2008 #define ID3D11Device2_AddRef(This) (This)->lpVtbl->AddRef(This)
2009 #define ID3D11Device2_Release(This) (This)->lpVtbl->Release(This)
2010 /*** ID3D11Device methods ***/
2011 #define ID3D11Device2_CreateBuffer(This,pDesc,pInitialData,ppBuffer) (This)->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer)
2012 #define ID3D11Device2_CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) (This)->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D)
2013 #define ID3D11Device2_CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) (This)->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D)
2014 #define ID3D11Device2_CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) (This)->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D)
2015 #define ID3D11Device2_CreateShaderResourceView(This,pResource,pDesc,ppSRView) (This)->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView)
2016 #define ID3D11Device2_CreateUnorderedAccessView(This,pResource,pDesc,ppUAView) (This)->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView)
2017 #define ID3D11Device2_CreateRenderTargetView(This,pResource,pDesc,ppRTView) (This)->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView)
2018 #define ID3D11Device2_CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) (This)->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView)
2019 #define ID3D11Device2_CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) (This)->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout)
2020 #define ID3D11Device2_CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader) (This)->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader)
2021 #define ID3D11Device2_CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader)
2022 #define ID3D11Device2_CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader)
2023 #define ID3D11Device2_CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader) (This)->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader)
2024 #define ID3D11Device2_CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader) (This)->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader)
2025 #define ID3D11Device2_CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader) (This)->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader)
2026 #define ID3D11Device2_CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader) (This)->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader)
2027 #define ID3D11Device2_CreateClassLinkage(This,ppLinkage) (This)->lpVtbl->CreateClassLinkage(This,ppLinkage)
2028 #define ID3D11Device2_CreateBlendState(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState)
2029 #define ID3D11Device2_CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) (This)->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState)
2030 #define ID3D11Device2_CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState)
2031 #define ID3D11Device2_CreateSamplerState(This,pSamplerDesc,ppSamplerState) (This)->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState)
2032 #define ID3D11Device2_CreateQuery(This,pQueryDesc,ppQuery) (This)->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery)
2033 #define ID3D11Device2_CreatePredicate(This,pPredicateDesc,ppPredicate) (This)->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate)
2034 #define ID3D11Device2_CreateCounter(This,pCounterDesc,ppCounter) (This)->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter)
2035 #define ID3D11Device2_CreateDeferredContext(This,ContextFlags,ppDeferredContext) (This)->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext)
2036 #define ID3D11Device2_OpenSharedResource(This,hResource,ReturnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource)
2037 #define ID3D11Device2_CheckFormatSupport(This,Format,pFormatSupport) (This)->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport)
2038 #define ID3D11Device2_CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) (This)->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels)
2039 #define ID3D11Device2_CheckCounterInfo(This,pCounterInfo) (This)->lpVtbl->CheckCounterInfo(This,pCounterInfo)
2040 #define ID3D11Device2_CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) (This)->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength)
2041 #define ID3D11Device2_CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) (This)->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize)
2042 #define ID3D11Device2_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
2043 #define ID3D11Device2_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
2044 #define ID3D11Device2_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
2045 #define ID3D11Device2_GetFeatureLevel(This) (This)->lpVtbl->GetFeatureLevel(This)
2046 #define ID3D11Device2_GetCreationFlags(This) (This)->lpVtbl->GetCreationFlags(This)
2047 #define ID3D11Device2_GetDeviceRemovedReason(This) (This)->lpVtbl->GetDeviceRemovedReason(This)
2048 #define ID3D11Device2_GetImmediateContext(This,ppImmediateContext) (This)->lpVtbl->GetImmediateContext(This,ppImmediateContext)
2049 #define ID3D11Device2_SetExceptionMode(This,RaiseFlags) (This)->lpVtbl->SetExceptionMode(This,RaiseFlags)
2050 #define ID3D11Device2_GetExceptionMode(This) (This)->lpVtbl->GetExceptionMode(This)
2051 /*** ID3D11Device1 methods ***/
2052 #define ID3D11Device2_GetImmediateContext1(This,ppImmediateContext) (This)->lpVtbl->GetImmediateContext1(This,ppImmediateContext)
2053 #define ID3D11Device2_CreateDeferredContext1(This,ContextFlags,ppDeferredContext) (This)->lpVtbl->CreateDeferredContext1(This,ContextFlags,ppDeferredContext)
2054 #define ID3D11Device2_CreateBlendState1(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState1(This,pBlendStateDesc,ppBlendState)
2055 #define ID3D11Device2_CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState)
2056 #define ID3D11Device2_CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState) (This)->lpVtbl->CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState)
2057 #define ID3D11Device2_OpenSharedResource1(This,hResource,returnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource1(This,hResource,returnedInterface,ppResource)
2058 #define ID3D11Device2_OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource) (This)->lpVtbl->OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource)
2059 /*** ID3D11Device2 methods ***/
2060 #define ID3D11Device2_GetImmediateContext2(This,context) (This)->lpVtbl->GetImmediateContext2(This,context)
2061 #define ID3D11Device2_CreateDeferredContext2(This,flags,context) (This)->lpVtbl->CreateDeferredContext2(This,flags,context)
2062 #define ID3D11Device2_GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling) (This)->lpVtbl->GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling)
2063 #define ID3D11Device2_CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count) (This)->lpVtbl->CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count)
2064 #else
2065 /*** IUnknown methods ***/
2066 static FORCEINLINE HRESULT ID3D11Device2_QueryInterface(ID3D11Device2* This,REFIID riid,void **ppvObject) {
2067     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2068 }
2069 static FORCEINLINE ULONG ID3D11Device2_AddRef(ID3D11Device2* This) {
2070     return This->lpVtbl->AddRef(This);
2071 }
2072 static FORCEINLINE ULONG ID3D11Device2_Release(ID3D11Device2* This) {
2073     return This->lpVtbl->Release(This);
2074 }
2075 /*** ID3D11Device methods ***/
2076 static FORCEINLINE HRESULT ID3D11Device2_CreateBuffer(ID3D11Device2* This,const D3D11_BUFFER_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Buffer **ppBuffer) {
2077     return This->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer);
2078 }
2079 static FORCEINLINE HRESULT ID3D11Device2_CreateTexture1D(ID3D11Device2* This,const D3D11_TEXTURE1D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture1D **ppTexture1D) {
2080     return This->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D);
2081 }
2082 static FORCEINLINE HRESULT ID3D11Device2_CreateTexture2D(ID3D11Device2* This,const D3D11_TEXTURE2D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture2D **ppTexture2D) {
2083     return This->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D);
2084 }
2085 static FORCEINLINE HRESULT ID3D11Device2_CreateTexture3D(ID3D11Device2* This,const D3D11_TEXTURE3D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture3D **ppTexture3D) {
2086     return This->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D);
2087 }
2088 static FORCEINLINE HRESULT ID3D11Device2_CreateShaderResourceView(ID3D11Device2* This,ID3D11Resource *pResource,const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc,ID3D11ShaderResourceView **ppSRView) {
2089     return This->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView);
2090 }
2091 static FORCEINLINE HRESULT ID3D11Device2_CreateUnorderedAccessView(ID3D11Device2* This,ID3D11Resource *pResource,const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc,ID3D11UnorderedAccessView **ppUAView) {
2092     return This->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView);
2093 }
2094 static FORCEINLINE HRESULT ID3D11Device2_CreateRenderTargetView(ID3D11Device2* This,ID3D11Resource *pResource,const D3D11_RENDER_TARGET_VIEW_DESC *pDesc,ID3D11RenderTargetView **ppRTView) {
2095     return This->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView);
2096 }
2097 static FORCEINLINE HRESULT ID3D11Device2_CreateDepthStencilView(ID3D11Device2* This,ID3D11Resource *pResource,const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc,ID3D11DepthStencilView **ppDepthStencilView) {
2098     return This->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView);
2099 }
2100 static FORCEINLINE HRESULT ID3D11Device2_CreateInputLayout(ID3D11Device2* This,const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs,UINT NumElements,const void *pShaderBytecodeWithInputSignature,SIZE_T BytecodeLength,ID3D11InputLayout **ppInputLayout) {
2101     return This->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout);
2102 }
2103 static FORCEINLINE HRESULT ID3D11Device2_CreateVertexShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11VertexShader **ppVertexShader) {
2104     return This->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader);
2105 }
2106 static FORCEINLINE HRESULT ID3D11Device2_CreateGeometryShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11GeometryShader **ppGeometryShader) {
2107     return This->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader);
2108 }
2109 static FORCEINLINE HRESULT ID3D11Device2_CreateGeometryShaderWithStreamOutput(ID3D11Device2* 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) {
2110     return This->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader);
2111 }
2112 static FORCEINLINE HRESULT ID3D11Device2_CreatePixelShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11PixelShader **ppPixelShader) {
2113     return This->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader);
2114 }
2115 static FORCEINLINE HRESULT ID3D11Device2_CreateHullShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11HullShader **ppHullShader) {
2116     return This->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader);
2117 }
2118 static FORCEINLINE HRESULT ID3D11Device2_CreateDomainShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11DomainShader **ppDomainShader) {
2119     return This->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader);
2120 }
2121 static FORCEINLINE HRESULT ID3D11Device2_CreateComputeShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11ComputeShader **ppComputeShader) {
2122     return This->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader);
2123 }
2124 static FORCEINLINE HRESULT ID3D11Device2_CreateClassLinkage(ID3D11Device2* This,ID3D11ClassLinkage **ppLinkage) {
2125     return This->lpVtbl->CreateClassLinkage(This,ppLinkage);
2126 }
2127 static FORCEINLINE HRESULT ID3D11Device2_CreateBlendState(ID3D11Device2* This,const D3D11_BLEND_DESC *pBlendStateDesc,ID3D11BlendState **ppBlendState) {
2128     return This->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState);
2129 }
2130 static FORCEINLINE HRESULT ID3D11Device2_CreateDepthStencilState(ID3D11Device2* This,const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc,ID3D11DepthStencilState **ppDepthStencilState) {
2131     return This->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState);
2132 }
2133 static FORCEINLINE HRESULT ID3D11Device2_CreateRasterizerState(ID3D11Device2* This,const D3D11_RASTERIZER_DESC *pRasterizerDesc,ID3D11RasterizerState **ppRasterizerState) {
2134     return This->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState);
2135 }
2136 static FORCEINLINE HRESULT ID3D11Device2_CreateSamplerState(ID3D11Device2* This,const D3D11_SAMPLER_DESC *pSamplerDesc,ID3D11SamplerState **ppSamplerState) {
2137     return This->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState);
2138 }
2139 static FORCEINLINE HRESULT ID3D11Device2_CreateQuery(ID3D11Device2* This,const D3D11_QUERY_DESC *pQueryDesc,ID3D11Query **ppQuery) {
2140     return This->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery);
2141 }
2142 static FORCEINLINE HRESULT ID3D11Device2_CreatePredicate(ID3D11Device2* This,const D3D11_QUERY_DESC *pPredicateDesc,ID3D11Predicate **ppPredicate) {
2143     return This->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate);
2144 }
2145 static FORCEINLINE HRESULT ID3D11Device2_CreateCounter(ID3D11Device2* This,const D3D11_COUNTER_DESC *pCounterDesc,ID3D11Counter **ppCounter) {
2146     return This->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter);
2147 }
2148 static FORCEINLINE HRESULT ID3D11Device2_CreateDeferredContext(ID3D11Device2* This,UINT ContextFlags,ID3D11DeviceContext **ppDeferredContext) {
2149     return This->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext);
2150 }
2151 static FORCEINLINE HRESULT ID3D11Device2_OpenSharedResource(ID3D11Device2* This,HANDLE hResource,REFIID ReturnedInterface,void **ppResource) {
2152     return This->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource);
2153 }
2154 static FORCEINLINE HRESULT ID3D11Device2_CheckFormatSupport(ID3D11Device2* This,DXGI_FORMAT Format,UINT *pFormatSupport) {
2155     return This->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport);
2156 }
2157 static FORCEINLINE HRESULT ID3D11Device2_CheckMultisampleQualityLevels(ID3D11Device2* This,DXGI_FORMAT Format,UINT SampleCount,UINT *pNumQualityLevels) {
2158     return This->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels);
2159 }
2160 static FORCEINLINE void ID3D11Device2_CheckCounterInfo(ID3D11Device2* This,D3D11_COUNTER_INFO *pCounterInfo) {
2161     This->lpVtbl->CheckCounterInfo(This,pCounterInfo);
2162 }
2163 static FORCEINLINE HRESULT ID3D11Device2_CheckCounter(ID3D11Device2* This,const D3D11_COUNTER_DESC *pDesc,D3D11_COUNTER_TYPE *pType,UINT *pActiveCounters,LPSTR szName,UINT *pNameLength,LPSTR szUnits,UINT *pUnitsLength,LPSTR szDescription,UINT *pDescriptionLength) {
2164     return This->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength);
2165 }
2166 static FORCEINLINE HRESULT ID3D11Device2_CheckFeatureSupport(ID3D11Device2* This,D3D11_FEATURE Feature,void *pFeatureSupportData,UINT FeatureSupportDataSize) {
2167     return This->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize);
2168 }
2169 static FORCEINLINE HRESULT ID3D11Device2_GetPrivateData(ID3D11Device2* This,REFGUID guid,UINT *pDataSize,void *pData) {
2170     return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
2171 }
2172 static FORCEINLINE HRESULT ID3D11Device2_SetPrivateData(ID3D11Device2* This,REFGUID guid,UINT DataSize,const void *pData) {
2173     return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
2174 }
2175 static FORCEINLINE HRESULT ID3D11Device2_SetPrivateDataInterface(ID3D11Device2* This,REFGUID guid,const IUnknown *pData) {
2176     return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
2177 }
2178 static FORCEINLINE D3D_FEATURE_LEVEL ID3D11Device2_GetFeatureLevel(ID3D11Device2* This) {
2179     return This->lpVtbl->GetFeatureLevel(This);
2180 }
2181 static FORCEINLINE UINT ID3D11Device2_GetCreationFlags(ID3D11Device2* This) {
2182     return This->lpVtbl->GetCreationFlags(This);
2183 }
2184 static FORCEINLINE HRESULT ID3D11Device2_GetDeviceRemovedReason(ID3D11Device2* This) {
2185     return This->lpVtbl->GetDeviceRemovedReason(This);
2186 }
2187 static FORCEINLINE void ID3D11Device2_GetImmediateContext(ID3D11Device2* This,ID3D11DeviceContext **ppImmediateContext) {
2188     This->lpVtbl->GetImmediateContext(This,ppImmediateContext);
2189 }
2190 static FORCEINLINE HRESULT ID3D11Device2_SetExceptionMode(ID3D11Device2* This,UINT RaiseFlags) {
2191     return This->lpVtbl->SetExceptionMode(This,RaiseFlags);
2192 }
2193 static FORCEINLINE UINT ID3D11Device2_GetExceptionMode(ID3D11Device2* This) {
2194     return This->lpVtbl->GetExceptionMode(This);
2195 }
2196 /*** ID3D11Device1 methods ***/
2197 static FORCEINLINE void ID3D11Device2_GetImmediateContext1(ID3D11Device2* This,ID3D11DeviceContext1 **ppImmediateContext) {
2198     This->lpVtbl->GetImmediateContext1(This,ppImmediateContext);
2199 }
2200 static FORCEINLINE HRESULT ID3D11Device2_CreateDeferredContext1(ID3D11Device2* This,UINT ContextFlags,ID3D11DeviceContext1 **ppDeferredContext) {
2201     return This->lpVtbl->CreateDeferredContext1(This,ContextFlags,ppDeferredContext);
2202 }
2203 static FORCEINLINE HRESULT ID3D11Device2_CreateBlendState1(ID3D11Device2* This,const D3D11_BLEND_DESC1 *pBlendStateDesc,ID3D11BlendState1 **ppBlendState) {
2204     return This->lpVtbl->CreateBlendState1(This,pBlendStateDesc,ppBlendState);
2205 }
2206 static FORCEINLINE HRESULT ID3D11Device2_CreateRasterizerState1(ID3D11Device2* This,const D3D11_RASTERIZER_DESC1 *pRasterizerDesc,ID3D11RasterizerState1 **ppRasterizerState) {
2207     return This->lpVtbl->CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState);
2208 }
2209 static FORCEINLINE HRESULT ID3D11Device2_CreateDeviceContextState(ID3D11Device2* This,UINT Flags,const D3D_FEATURE_LEVEL *pFeatureLevels,UINT FeatureLevels,UINT SDKVersion,REFIID EmulatedInterface,D3D_FEATURE_LEVEL *pChosenFeatureLevel,ID3DDeviceContextState **ppContextState) {
2210     return This->lpVtbl->CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState);
2211 }
2212 static FORCEINLINE HRESULT ID3D11Device2_OpenSharedResource1(ID3D11Device2* This,HANDLE hResource,REFIID returnedInterface,void **ppResource) {
2213     return This->lpVtbl->OpenSharedResource1(This,hResource,returnedInterface,ppResource);
2214 }
2215 static FORCEINLINE HRESULT ID3D11Device2_OpenSharedResourceByName(ID3D11Device2* This,LPCWSTR lpName,DWORD dwDesiredAccess,REFIID returnedInterface,void **ppResource) {
2216     return This->lpVtbl->OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource);
2217 }
2218 /*** ID3D11Device2 methods ***/
2219 static FORCEINLINE void ID3D11Device2_GetImmediateContext2(ID3D11Device2* This,ID3D11DeviceContext2 **context) {
2220     This->lpVtbl->GetImmediateContext2(This,context);
2221 }
2222 static FORCEINLINE HRESULT ID3D11Device2_CreateDeferredContext2(ID3D11Device2* This,UINT flags,ID3D11DeviceContext2 **context) {
2223     return This->lpVtbl->CreateDeferredContext2(This,flags,context);
2224 }
2225 static FORCEINLINE void ID3D11Device2_GetResourceTiling(ID3D11Device2* This,ID3D11Resource *resource,UINT *tile_count,D3D11_PACKED_MIP_DESC *mip_desc,D3D11_TILE_SHAPE *tile_shape,UINT *subresource_tiling_count,UINT first_subresource_tiling,D3D11_SUBRESOURCE_TILING *subresource_tiling) {
2226     This->lpVtbl->GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling);
2227 }
2228 static FORCEINLINE HRESULT ID3D11Device2_CheckMultisampleQualityLevels1(ID3D11Device2* This,DXGI_FORMAT format,UINT sample_count,UINT flags,UINT *quality_level_count) {
2229     return This->lpVtbl->CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count);
2230 }
2231 #endif
2232 #endif
2233 
2234 #endif
2235 
2236 
2237 #endif  /* __ID3D11Device2_INTERFACE_DEFINED__ */
2238 
2239 /* Begin additional prototypes for all interfaces */
2240 
2241 
2242 /* End additional prototypes */
2243 
2244 #ifdef __cplusplus
2245 }
2246 #endif
2247 
2248 #endif /* __d3d11_2_h__ */
2249