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