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