1 // Licensed under the Apache License, Version 2.0
2 // <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
3 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
4 // All files in the project carrying such notice may not be copied, modified, or distributed
5 // except according to those terms.
6 use ctypes
::{c_float, c_int, c_long, c_void}
;
7 use shared
::basetsd
::{SIZE_T, UINT64, UINT8}
;
8 use shared
::dxgi
::{DXGI_SWAP_CHAIN_DESC, IDXGIAdapter, IDXGISwapChain}
;
9 use shared
::dxgiformat
::DXGI_FORMAT
;
10 use shared
::dxgitype
::{DXGI_RATIONAL, DXGI_SAMPLE_DESC}
;
11 use shared
::guiddef
::{GUID, REFGUID, REFIID}
;
12 use shared
::minwindef
::{BOOL, BYTE, DWORD, FLOAT, HMODULE, INT, UINT, USHORT}
;
13 use shared
::windef
::{RECT, SIZE}
;
15 D3D_DRIVER_TYPE
, D3D_FEATURE_LEVEL
, D3D_PRIMITIVE
, D3D_PRIMITIVE_TOPOLOGY
, D3D_SRV_DIMENSION
,
17 use um
::unknwnbase
::{IUnknown, IUnknownVtbl}
;
18 use um
::winnt
::{HANDLE, HRESULT, LPCSTR, LPSTR, ULONGLONG}
;
19 pub const D3D11_16BIT_INDEX_STRIP_CUT_VALUE
: DWORD
= 0xffff;
20 pub const D3D11_32BIT_INDEX_STRIP_CUT_VALUE
: DWORD
= 0xffffffff;
21 pub const D3D11_8BIT_INDEX_STRIP_CUT_VALUE
: DWORD
= 0xff;
22 pub const D3D11_ARRAY_AXIS_ADDRESS_RANGE_BIT_COUNT
: DWORD
= 9;
23 pub const D3D11_CLIP_OR_CULL_DISTANCE_COUNT
: DWORD
= 8;
24 pub const D3D11_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT
: DWORD
= 2;
25 pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT
: DWORD
= 14;
26 pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENTS
: DWORD
= 4;
27 pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT
: DWORD
= 32;
28 pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT
: DWORD
= 15;
29 pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_PARTIAL_UPDATE_EXTENTS_BYTE_ALIGNMENT
: DWORD
= 16;
30 pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS
: DWORD
= 4;
31 pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT
: DWORD
= 15;
32 pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST
: DWORD
= 1;
33 pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS
: DWORD
= 1;
34 pub const D3D11_COMMONSHADER_FLOWCONTROL_NESTING_LIMIT
: DWORD
= 64;
35 pub const D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS
: DWORD
= 4;
36 pub const D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT
: DWORD
= 1;
37 pub const D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST
: DWORD
= 1;
38 pub const D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS
: DWORD
= 1;
39 pub const D3D11_COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT
: DWORD
= 32;
40 pub const D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS
: DWORD
= 1;
41 pub const D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT
: DWORD
= 128;
42 pub const D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST
: DWORD
= 1;
43 pub const D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS
: DWORD
= 1;
44 pub const D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT
: DWORD
= 128;
45 pub const D3D11_COMMONSHADER_SAMPLER_REGISTER_COMPONENTS
: DWORD
= 1;
46 pub const D3D11_COMMONSHADER_SAMPLER_REGISTER_COUNT
: DWORD
= 16;
47 pub const D3D11_COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST
: DWORD
= 1;
48 pub const D3D11_COMMONSHADER_SAMPLER_REGISTER_READ_PORTS
: DWORD
= 1;
49 pub const D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT
: DWORD
= 16;
50 pub const D3D11_COMMONSHADER_SUBROUTINE_NESTING_LIMIT
: DWORD
= 32;
51 pub const D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENTS
: DWORD
= 4;
52 pub const D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
53 pub const D3D11_COMMONSHADER_TEMP_REGISTER_COUNT
: DWORD
= 4096;
54 pub const D3D11_COMMONSHADER_TEMP_REGISTER_READS_PER_INST
: DWORD
= 3;
55 pub const D3D11_COMMONSHADER_TEMP_REGISTER_READ_PORTS
: DWORD
= 3;
56 pub const D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX
: DWORD
= 10;
57 pub const D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN
: c_long
= -10;
58 pub const D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE
: c_long
= -8;
59 pub const D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE
: DWORD
= 7;
60 pub const D3D11_CS_4_X_BUCKET00_MAX_BYTES_TGSM_WRITABLE_PER_THREAD
: DWORD
= 256;
61 pub const D3D11_CS_4_X_BUCKET00_MAX_NUM_THREADS_PER_GROUP
: DWORD
= 64;
62 pub const D3D11_CS_4_X_BUCKET01_MAX_BYTES_TGSM_WRITABLE_PER_THREAD
: DWORD
= 240;
63 pub const D3D11_CS_4_X_BUCKET01_MAX_NUM_THREADS_PER_GROUP
: DWORD
= 68;
64 pub const D3D11_CS_4_X_BUCKET02_MAX_BYTES_TGSM_WRITABLE_PER_THREAD
: DWORD
= 224;
65 pub const D3D11_CS_4_X_BUCKET02_MAX_NUM_THREADS_PER_GROUP
: DWORD
= 72;
66 pub const D3D11_CS_4_X_BUCKET03_MAX_BYTES_TGSM_WRITABLE_PER_THREAD
: DWORD
= 208;
67 pub const D3D11_CS_4_X_BUCKET03_MAX_NUM_THREADS_PER_GROUP
: DWORD
= 76;
68 pub const D3D11_CS_4_X_BUCKET04_MAX_BYTES_TGSM_WRITABLE_PER_THREAD
: DWORD
= 192;
69 pub const D3D11_CS_4_X_BUCKET04_MAX_NUM_THREADS_PER_GROUP
: DWORD
= 84;
70 pub const D3D11_CS_4_X_BUCKET05_MAX_BYTES_TGSM_WRITABLE_PER_THREAD
: DWORD
= 176;
71 pub const D3D11_CS_4_X_BUCKET05_MAX_NUM_THREADS_PER_GROUP
: DWORD
= 92;
72 pub const D3D11_CS_4_X_BUCKET06_MAX_BYTES_TGSM_WRITABLE_PER_THREAD
: DWORD
= 160;
73 pub const D3D11_CS_4_X_BUCKET06_MAX_NUM_THREADS_PER_GROUP
: DWORD
= 100;
74 pub const D3D11_CS_4_X_BUCKET07_MAX_BYTES_TGSM_WRITABLE_PER_THREAD
: DWORD
= 144;
75 pub const D3D11_CS_4_X_BUCKET07_MAX_NUM_THREADS_PER_GROUP
: DWORD
= 112;
76 pub const D3D11_CS_4_X_BUCKET08_MAX_BYTES_TGSM_WRITABLE_PER_THREAD
: DWORD
= 128;
77 pub const D3D11_CS_4_X_BUCKET08_MAX_NUM_THREADS_PER_GROUP
: DWORD
= 128;
78 pub const D3D11_CS_4_X_BUCKET09_MAX_BYTES_TGSM_WRITABLE_PER_THREAD
: DWORD
= 112;
79 pub const D3D11_CS_4_X_BUCKET09_MAX_NUM_THREADS_PER_GROUP
: DWORD
= 144;
80 pub const D3D11_CS_4_X_BUCKET10_MAX_BYTES_TGSM_WRITABLE_PER_THREAD
: DWORD
= 96;
81 pub const D3D11_CS_4_X_BUCKET10_MAX_NUM_THREADS_PER_GROUP
: DWORD
= 168;
82 pub const D3D11_CS_4_X_BUCKET11_MAX_BYTES_TGSM_WRITABLE_PER_THREAD
: DWORD
= 80;
83 pub const D3D11_CS_4_X_BUCKET11_MAX_NUM_THREADS_PER_GROUP
: DWORD
= 204;
84 pub const D3D11_CS_4_X_BUCKET12_MAX_BYTES_TGSM_WRITABLE_PER_THREAD
: DWORD
= 64;
85 pub const D3D11_CS_4_X_BUCKET12_MAX_NUM_THREADS_PER_GROUP
: DWORD
= 256;
86 pub const D3D11_CS_4_X_BUCKET13_MAX_BYTES_TGSM_WRITABLE_PER_THREAD
: DWORD
= 48;
87 pub const D3D11_CS_4_X_BUCKET13_MAX_NUM_THREADS_PER_GROUP
: DWORD
= 340;
88 pub const D3D11_CS_4_X_BUCKET14_MAX_BYTES_TGSM_WRITABLE_PER_THREAD
: DWORD
= 32;
89 pub const D3D11_CS_4_X_BUCKET14_MAX_NUM_THREADS_PER_GROUP
: DWORD
= 512;
90 pub const D3D11_CS_4_X_BUCKET15_MAX_BYTES_TGSM_WRITABLE_PER_THREAD
: DWORD
= 16;
91 pub const D3D11_CS_4_X_BUCKET15_MAX_NUM_THREADS_PER_GROUP
: DWORD
= 768;
92 pub const D3D11_CS_4_X_DISPATCH_MAX_THREAD_GROUPS_IN_Z_DIMENSION
: DWORD
= 1;
93 pub const D3D11_CS_4_X_RAW_UAV_BYTE_ALIGNMENT
: DWORD
= 256;
94 pub const D3D11_CS_4_X_THREAD_GROUP_MAX_THREADS_PER_GROUP
: DWORD
= 768;
95 pub const D3D11_CS_4_X_THREAD_GROUP_MAX_X
: DWORD
= 768;
96 pub const D3D11_CS_4_X_THREAD_GROUP_MAX_Y
: DWORD
= 768;
97 pub const D3D11_CS_4_X_UAV_REGISTER_COUNT
: DWORD
= 1;
98 pub const D3D11_CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION
: DWORD
= 65535;
99 pub const D3D11_CS_TGSM_REGISTER_COUNT
: DWORD
= 8192;
100 pub const D3D11_CS_TGSM_REGISTER_READS_PER_INST
: DWORD
= 1;
101 pub const D3D11_CS_TGSM_RESOURCE_REGISTER_COMPONENTS
: DWORD
= 1;
102 pub const D3D11_CS_TGSM_RESOURCE_REGISTER_READ_PORTS
: DWORD
= 1;
103 pub const D3D11_CS_THREADGROUPID_REGISTER_COMPONENTS
: DWORD
= 3;
104 pub const D3D11_CS_THREADGROUPID_REGISTER_COUNT
: DWORD
= 1;
105 pub const D3D11_CS_THREADIDINGROUPFLATTENED_REGISTER_COMPONENTS
: DWORD
= 1;
106 pub const D3D11_CS_THREADIDINGROUPFLATTENED_REGISTER_COUNT
: DWORD
= 1;
107 pub const D3D11_CS_THREADIDINGROUP_REGISTER_COMPONENTS
: DWORD
= 3;
108 pub const D3D11_CS_THREADIDINGROUP_REGISTER_COUNT
: DWORD
= 1;
109 pub const D3D11_CS_THREADID_REGISTER_COMPONENTS
: DWORD
= 3;
110 pub const D3D11_CS_THREADID_REGISTER_COUNT
: DWORD
= 1;
111 pub const D3D11_CS_THREAD_GROUP_MAX_THREADS_PER_GROUP
: DWORD
= 1024;
112 pub const D3D11_CS_THREAD_GROUP_MAX_X
: DWORD
= 1024;
113 pub const D3D11_CS_THREAD_GROUP_MAX_Y
: DWORD
= 1024;
114 pub const D3D11_CS_THREAD_GROUP_MAX_Z
: DWORD
= 64;
115 pub const D3D11_CS_THREAD_GROUP_MIN_X
: DWORD
= 1;
116 pub const D3D11_CS_THREAD_GROUP_MIN_Y
: DWORD
= 1;
117 pub const D3D11_CS_THREAD_GROUP_MIN_Z
: DWORD
= 1;
118 pub const D3D11_CS_THREAD_LOCAL_TEMP_REGISTER_POOL
: DWORD
= 16384;
119 pub const D3D11_DEFAULT_BLEND_FACTOR_ALPHA
: FLOAT
= 1.0;
120 pub const D3D11_DEFAULT_BLEND_FACTOR_BLUE
: FLOAT
= 1.0;
121 pub const D3D11_DEFAULT_BLEND_FACTOR_GREEN
: FLOAT
= 1.0;
122 pub const D3D11_DEFAULT_BLEND_FACTOR_RED
: FLOAT
= 1.0;
123 pub const D3D11_DEFAULT_BORDER_COLOR_COMPONENT
: FLOAT
= 0.0;
124 pub const D3D11_DEFAULT_DEPTH_BIAS
: DWORD
= 0;
125 pub const D3D11_DEFAULT_DEPTH_BIAS_CLAMP
: FLOAT
= 0.0;
126 pub const D3D11_DEFAULT_MAX_ANISOTROPY
: DWORD
= 16;
127 pub const D3D11_DEFAULT_MIP_LOD_BIAS
: FLOAT
= 0.0;
128 pub const D3D11_DEFAULT_RENDER_TARGET_ARRAY_INDEX
: DWORD
= 0;
129 pub const D3D11_DEFAULT_SAMPLE_MASK
: DWORD
= 0xffffffff;
130 pub const D3D11_DEFAULT_SCISSOR_ENDX
: DWORD
= 0;
131 pub const D3D11_DEFAULT_SCISSOR_ENDY
: DWORD
= 0;
132 pub const D3D11_DEFAULT_SCISSOR_STARTX
: DWORD
= 0;
133 pub const D3D11_DEFAULT_SCISSOR_STARTY
: DWORD
= 0;
134 pub const D3D11_DEFAULT_SLOPE_SCALED_DEPTH_BIAS
: FLOAT
= 0.0;
135 pub const D3D11_DEFAULT_STENCIL_READ_MASK
: DWORD
= 0xff;
136 pub const D3D11_DEFAULT_STENCIL_REFERENCE
: DWORD
= 0;
137 pub const D3D11_DEFAULT_STENCIL_WRITE_MASK
: DWORD
= 0xff;
138 pub const D3D11_DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX
: DWORD
= 0;
139 pub const D3D11_DEFAULT_VIEWPORT_HEIGHT
: DWORD
= 0;
140 pub const D3D11_DEFAULT_VIEWPORT_MAX_DEPTH
: FLOAT
= 0.0;
141 pub const D3D11_DEFAULT_VIEWPORT_MIN_DEPTH
: FLOAT
= 0.0;
142 pub const D3D11_DEFAULT_VIEWPORT_TOPLEFTX
: DWORD
= 0;
143 pub const D3D11_DEFAULT_VIEWPORT_TOPLEFTY
: DWORD
= 0;
144 pub const D3D11_DEFAULT_VIEWPORT_WIDTH
: DWORD
= 0;
145 pub const D3D11_DS_INPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS
: DWORD
= 3968;
146 pub const D3D11_DS_INPUT_CONTROL_POINT_REGISTER_COMPONENTS
: DWORD
= 4;
147 pub const D3D11_DS_INPUT_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
148 pub const D3D11_DS_INPUT_CONTROL_POINT_REGISTER_COUNT
: DWORD
= 32;
149 pub const D3D11_DS_INPUT_CONTROL_POINT_REGISTER_READS_PER_INST
: DWORD
= 2;
150 pub const D3D11_DS_INPUT_CONTROL_POINT_REGISTER_READ_PORTS
: DWORD
= 1;
151 pub const D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENTS
: DWORD
= 3;
152 pub const D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
153 pub const D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_COUNT
: DWORD
= 1;
154 pub const D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_READS_PER_INST
: DWORD
= 2;
155 pub const D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_READ_PORTS
: DWORD
= 1;
156 pub const D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENTS
: DWORD
= 4;
157 pub const D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
158 pub const D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_COUNT
: DWORD
= 32;
159 pub const D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST
: DWORD
= 2;
160 pub const D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_READ_PORTS
: DWORD
= 1;
161 pub const D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS
: DWORD
= 1;
162 pub const D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
163 pub const D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_COUNT
: DWORD
= 1;
164 pub const D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST
: DWORD
= 2;
165 pub const D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS
: DWORD
= 1;
166 pub const D3D11_DS_OUTPUT_REGISTER_COMPONENTS
: DWORD
= 4;
167 pub const D3D11_DS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
168 pub const D3D11_DS_OUTPUT_REGISTER_COUNT
: DWORD
= 32;
169 pub const D3D11_FLOAT16_FUSED_TOLERANCE_IN_ULP
: FLOAT
= 0.6;
170 pub const D3D11_FLOAT32_MAX
: FLOAT
= 3.402823466E+38;
171 pub const D3D11_FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP
: FLOAT
= 0.6;
172 pub const D3D11_FLOAT_TO_SRGB_EXPONENT_DENOMINATOR
: FLOAT
= 2.4;
173 pub const D3D11_FLOAT_TO_SRGB_EXPONENT_NUMERATOR
: FLOAT
= 1.0;
174 pub const D3D11_FLOAT_TO_SRGB_OFFSET
: FLOAT
= 0.055;
175 pub const D3D11_FLOAT_TO_SRGB_SCALE_1
: FLOAT
= 12.92;
176 pub const D3D11_FLOAT_TO_SRGB_SCALE_2
: FLOAT
= 1.055;
177 pub const D3D11_FLOAT_TO_SRGB_THRESHOLD
: FLOAT
= 0.0031308;
178 pub const D3D11_FTOI_INSTRUCTION_MAX_INPUT
: FLOAT
= 2147483647.999;
179 pub const D3D11_FTOI_INSTRUCTION_MIN_INPUT
: FLOAT
= -2147483648.999;
180 pub const D3D11_FTOU_INSTRUCTION_MAX_INPUT
: FLOAT
= 4294967295.999;
181 pub const D3D11_FTOU_INSTRUCTION_MIN_INPUT
: FLOAT
= 0.0;
182 pub const D3D11_GS_INPUT_INSTANCE_ID_READS_PER_INST
: DWORD
= 2;
183 pub const D3D11_GS_INPUT_INSTANCE_ID_READ_PORTS
: DWORD
= 1;
184 pub const D3D11_GS_INPUT_INSTANCE_ID_REGISTER_COMPONENTS
: DWORD
= 1;
185 pub const D3D11_GS_INPUT_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
186 pub const D3D11_GS_INPUT_INSTANCE_ID_REGISTER_COUNT
: DWORD
= 1;
187 pub const D3D11_GS_INPUT_PRIM_CONST_REGISTER_COMPONENTS
: DWORD
= 1;
188 pub const D3D11_GS_INPUT_PRIM_CONST_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
189 pub const D3D11_GS_INPUT_PRIM_CONST_REGISTER_COUNT
: DWORD
= 1;
190 pub const D3D11_GS_INPUT_PRIM_CONST_REGISTER_READS_PER_INST
: DWORD
= 2;
191 pub const D3D11_GS_INPUT_PRIM_CONST_REGISTER_READ_PORTS
: DWORD
= 1;
192 pub const D3D11_GS_INPUT_REGISTER_COMPONENTS
: DWORD
= 4;
193 pub const D3D11_GS_INPUT_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
194 pub const D3D11_GS_INPUT_REGISTER_COUNT
: DWORD
= 32;
195 pub const D3D11_GS_INPUT_REGISTER_READS_PER_INST
: DWORD
= 2;
196 pub const D3D11_GS_INPUT_REGISTER_READ_PORTS
: DWORD
= 1;
197 pub const D3D11_GS_INPUT_REGISTER_VERTICES
: DWORD
= 32;
198 pub const D3D11_GS_MAX_INSTANCE_COUNT
: DWORD
= 32;
199 pub const D3D11_GS_MAX_OUTPUT_VERTEX_COUNT_ACROSS_INSTANCES
: DWORD
= 1024;
200 pub const D3D11_GS_OUTPUT_ELEMENTS
: DWORD
= 32;
201 pub const D3D11_GS_OUTPUT_REGISTER_COMPONENTS
: DWORD
= 4;
202 pub const D3D11_GS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
203 pub const D3D11_GS_OUTPUT_REGISTER_COUNT
: DWORD
= 32;
204 pub const D3D11_HS_CONTROL_POINT_PHASE_INPUT_REGISTER_COUNT
: DWORD
= 32;
205 pub const D3D11_HS_CONTROL_POINT_PHASE_OUTPUT_REGISTER_COUNT
: DWORD
= 32;
206 pub const D3D11_HS_CONTROL_POINT_REGISTER_COMPONENTS
: DWORD
= 4;
207 pub const D3D11_HS_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
208 pub const D3D11_HS_CONTROL_POINT_REGISTER_READS_PER_INST
: DWORD
= 2;
209 pub const D3D11_HS_CONTROL_POINT_REGISTER_READ_PORTS
: DWORD
= 1;
210 pub const D3D11_HS_FORK_PHASE_INSTANCE_COUNT_UPPER_BOUND
: DWORD
= 0xffffffff;
211 pub const D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENTS
: DWORD
= 1;
212 pub const D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
213 pub const D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COUNT
: DWORD
= 1;
214 pub const D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_READS_PER_INST
: DWORD
= 2;
215 pub const D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_READ_PORTS
: DWORD
= 1;
216 pub const D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENTS
: DWORD
= 1;
217 pub const D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
218 pub const D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COUNT
: DWORD
= 1;
219 pub const D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READS_PER_INST
: DWORD
= 2;
220 pub const D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READ_PORTS
: DWORD
= 1;
221 pub const D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS
: DWORD
= 1;
222 pub const D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
223 pub const D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_COUNT
: DWORD
= 1;
224 pub const D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST
: DWORD
= 2;
225 pub const D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS
: DWORD
= 1;
226 pub const D3D11_HS_JOIN_PHASE_INSTANCE_COUNT_UPPER_BOUND
: DWORD
= 0xffffffff;
227 pub const D3D11_HS_MAXTESSFACTOR_LOWER_BOUND
: FLOAT
= 1.0;
228 pub const D3D11_HS_MAXTESSFACTOR_UPPER_BOUND
: FLOAT
= 64.0;
229 pub const D3D11_HS_OUTPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS
: DWORD
= 3968;
230 pub const D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENTS
: DWORD
= 1;
231 pub const D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
232 pub const D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COUNT
: DWORD
= 1;
233 pub const D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READS_PER_INST
: DWORD
= 2;
234 pub const D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READ_PORTS
: DWORD
= 1;
235 pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENTS
: DWORD
= 4;
236 pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
237 pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COUNT
: DWORD
= 32;
238 pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST
: DWORD
= 2;
239 pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_READ_PORTS
: DWORD
= 1;
240 pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_SCALAR_COMPONENTS
: DWORD
= 128;
241 pub const D3D11_IA_DEFAULT_INDEX_BUFFER_OFFSET_IN_BYTES
: DWORD
= 0;
242 pub const D3D11_IA_DEFAULT_PRIMITIVE_TOPOLOGY
: DWORD
= 0;
243 pub const D3D11_IA_DEFAULT_VERTEX_BUFFER_OFFSET_IN_BYTES
: DWORD
= 0;
244 pub const D3D11_IA_INDEX_INPUT_RESOURCE_SLOT_COUNT
: DWORD
= 1;
245 pub const D3D11_IA_INSTANCE_ID_BIT_COUNT
: DWORD
= 32;
246 pub const D3D11_IA_INTEGER_ARITHMETIC_BIT_COUNT
: DWORD
= 32;
247 pub const D3D11_IA_PATCH_MAX_CONTROL_POINT_COUNT
: DWORD
= 32;
248 pub const D3D11_IA_PRIMITIVE_ID_BIT_COUNT
: DWORD
= 32;
249 pub const D3D11_IA_VERTEX_ID_BIT_COUNT
: DWORD
= 32;
250 pub const D3D11_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT
: DWORD
= 32;
251 pub const D3D11_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS
: DWORD
= 128;
252 pub const D3D11_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT
: DWORD
= 32;
253 pub const D3D11_INTEGER_DIVIDE_BY_ZERO_QUOTIENT
: DWORD
= 0xffffffff;
254 pub const D3D11_INTEGER_DIVIDE_BY_ZERO_REMAINDER
: DWORD
= 0xffffffff;
255 pub const D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL
: DWORD
= 0xffffffff;
256 pub const D3D11_KEEP_UNORDERED_ACCESS_VIEWS
: DWORD
= 0xffffffff;
257 pub const D3D11_LINEAR_GAMMA
: FLOAT
= 1.0;
258 pub const D3D11_MAJOR_VERSION
: DWORD
= 11;
259 pub const D3D11_MAX_BORDER_COLOR_COMPONENT
: FLOAT
= 1.0;
260 pub const D3D11_MAX_DEPTH
: FLOAT
= 1.0;
261 pub const D3D11_MAX_MAXANISOTROPY
: DWORD
= 16;
262 pub const D3D11_MAX_MULTISAMPLE_SAMPLE_COUNT
: DWORD
= 32;
263 pub const D3D11_MAX_POSITION_VALUE
: FLOAT
= 3.402823466E+34;
264 pub const D3D11_MAX_TEXTURE_DIMENSION_2_TO_EXP
: DWORD
= 17;
265 pub const D3D11_MINOR_VERSION
: DWORD
= 0;
266 pub const D3D11_MIN_BORDER_COLOR_COMPONENT
: FLOAT
= 0.0;
267 pub const D3D11_MIN_DEPTH
: FLOAT
= 0.0;
268 pub const D3D11_MIN_MAXANISOTROPY
: DWORD
= 0;
269 pub const D3D11_MIP_LOD_BIAS_MAX
: FLOAT
= 15.99;
270 pub const D3D11_MIP_LOD_BIAS_MIN
: FLOAT
= -16.0;
271 pub const D3D11_MIP_LOD_FRACTIONAL_BIT_COUNT
: DWORD
= 8;
272 pub const D3D11_MIP_LOD_RANGE_BIT_COUNT
: DWORD
= 8;
273 pub const D3D11_MULTISAMPLE_ANTIALIAS_LINE_WIDTH
: FLOAT
= 1.4;
274 pub const D3D11_NONSAMPLE_FETCH_OUT_OF_RANGE_ACCESS_RESULT
: DWORD
= 0;
275 pub const D3D11_PIXEL_ADDRESS_RANGE_BIT_COUNT
: DWORD
= 15;
276 pub const D3D11_PRE_SCISSOR_PIXEL_ADDRESS_RANGE_BIT_COUNT
: DWORD
= 16;
277 pub const D3D11_PS_CS_UAV_REGISTER_COMPONENTS
: DWORD
= 1;
278 pub const D3D11_PS_CS_UAV_REGISTER_COUNT
: DWORD
= 8;
279 pub const D3D11_PS_CS_UAV_REGISTER_READS_PER_INST
: DWORD
= 1;
280 pub const D3D11_PS_CS_UAV_REGISTER_READ_PORTS
: DWORD
= 1;
281 pub const D3D11_PS_FRONTFACING_DEFAULT_VALUE
: DWORD
= 0xffffffff;
282 pub const D3D11_PS_FRONTFACING_FALSE_VALUE
: DWORD
= 0;
283 pub const D3D11_PS_FRONTFACING_TRUE_VALUE
: DWORD
= 0xffffffff;
284 pub const D3D11_PS_INPUT_REGISTER_COMPONENTS
: DWORD
= 4;
285 pub const D3D11_PS_INPUT_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
286 pub const D3D11_PS_INPUT_REGISTER_COUNT
: DWORD
= 32;
287 pub const D3D11_PS_INPUT_REGISTER_READS_PER_INST
: DWORD
= 2;
288 pub const D3D11_PS_INPUT_REGISTER_READ_PORTS
: DWORD
= 1;
289 pub const D3D11_PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT
: FLOAT
= 0.0;
290 pub const D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENTS
: DWORD
= 1;
291 pub const D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
292 pub const D3D11_PS_OUTPUT_DEPTH_REGISTER_COUNT
: DWORD
= 1;
293 pub const D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENTS
: DWORD
= 1;
294 pub const D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
295 pub const D3D11_PS_OUTPUT_MASK_REGISTER_COUNT
: DWORD
= 1;
296 pub const D3D11_PS_OUTPUT_REGISTER_COMPONENTS
: DWORD
= 4;
297 pub const D3D11_PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
298 pub const D3D11_PS_OUTPUT_REGISTER_COUNT
: DWORD
= 8;
299 pub const D3D11_PS_PIXEL_CENTER_FRACTIONAL_COMPONENT
: FLOAT
= 0.5;
300 pub const D3D11_RAW_UAV_SRV_BYTE_ALIGNMENT
: DWORD
= 16;
301 pub const D3D11_REQ_BLEND_OBJECT_COUNT_PER_DEVICE
: DWORD
= 4096;
302 pub const D3D11_REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP
: DWORD
= 27;
303 pub const D3D11_REQ_CONSTANT_BUFFER_ELEMENT_COUNT
: DWORD
= 4096;
304 pub const D3D11_REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_DEVICE
: DWORD
= 4096;
305 pub const D3D11_REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP
: DWORD
= 32;
306 pub const D3D11_REQ_DRAW_VERTEX_COUNT_2_TO_EXP
: DWORD
= 32;
307 pub const D3D11_REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION
: DWORD
= 16384;
308 pub const D3D11_REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT
: DWORD
= 1024;
309 pub const D3D11_REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT
: DWORD
= 4096;
310 pub const D3D11_REQ_MAXANISOTROPY
: DWORD
= 16;
311 pub const D3D11_REQ_MIP_LEVELS
: DWORD
= 15;
312 pub const D3D11_REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES
: DWORD
= 2048;
313 pub const D3D11_REQ_RASTERIZER_OBJECT_COUNT_PER_DEVICE
: DWORD
= 4096;
314 pub const D3D11_REQ_RENDER_TO_BUFFER_WINDOW_WIDTH
: DWORD
= 16384;
315 pub const D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM
: DWORD
= 128;
316 pub const D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_B_TERM
: FLOAT
= 0.25;
317 pub const D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_C_TERM
: DWORD
= 2048;
318 pub const D3D11_REQ_RESOURCE_VIEW_COUNT_PER_DEVICE_2_TO_EXP
: DWORD
= 20;
319 pub const D3D11_REQ_SAMPLER_OBJECT_COUNT_PER_DEVICE
: DWORD
= 4096;
320 pub const D3D11_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION
: DWORD
= 2048;
321 pub const D3D11_REQ_TEXTURE1D_U_DIMENSION
: DWORD
= 16384;
322 pub const D3D11_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION
: DWORD
= 2048;
323 pub const D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION
: DWORD
= 16384;
324 pub const D3D11_REQ_TEXTURE3D_U_V_OR_W_DIMENSION
: DWORD
= 2048;
325 pub const D3D11_REQ_TEXTURECUBE_DIMENSION
: DWORD
= 16384;
326 pub const D3D11_RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL
: DWORD
= 0;
327 pub const D3D11_SHADER_MAJOR_VERSION
: DWORD
= 5;
328 pub const D3D11_SHADER_MAX_INSTANCES
: DWORD
= 65535;
329 pub const D3D11_SHADER_MAX_INTERFACES
: DWORD
= 253;
330 pub const D3D11_SHADER_MAX_INTERFACE_CALL_SITES
: DWORD
= 4096;
331 pub const D3D11_SHADER_MAX_TYPES
: DWORD
= 65535;
332 pub const D3D11_SHADER_MINOR_VERSION
: DWORD
= 0;
333 pub const D3D11_SHIFT_INSTRUCTION_PAD_VALUE
: DWORD
= 0;
334 pub const D3D11_SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT
: DWORD
= 5;
335 pub const D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT
: DWORD
= 8;
336 pub const D3D11_SO_BUFFER_MAX_STRIDE_IN_BYTES
: DWORD
= 2048;
337 pub const D3D11_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES
: DWORD
= 512;
338 pub const D3D11_SO_BUFFER_SLOT_COUNT
: DWORD
= 4;
339 pub const D3D11_SO_DDI_REGISTER_INDEX_DENOTING_GAP
: DWORD
= 0xffffffff;
340 pub const D3D11_SO_NO_RASTERIZED_STREAM
: DWORD
= 0xffffffff;
341 pub const D3D11_SO_OUTPUT_COMPONENT_COUNT
: DWORD
= 128;
342 pub const D3D11_SO_STREAM_COUNT
: DWORD
= 4;
343 pub const D3D11_SPEC_DATE_DAY
: DWORD
= 16;
344 pub const D3D11_SPEC_DATE_MONTH
: DWORD
= 0o5;
345 pub const D3D11_SPEC_DATE_YEAR
: DWORD
= 2011;
346 pub const D3D11_SPEC_VERSION
: FLOAT
= 1.07;
347 pub const D3D11_SRGB_GAMMA
: FLOAT
= 2.2;
348 pub const D3D11_SRGB_TO_FLOAT_DENOMINATOR_1
: FLOAT
= 12.92;
349 pub const D3D11_SRGB_TO_FLOAT_DENOMINATOR_2
: FLOAT
= 1.055;
350 pub const D3D11_SRGB_TO_FLOAT_EXPONENT
: FLOAT
= 2.4;
351 pub const D3D11_SRGB_TO_FLOAT_OFFSET
: FLOAT
= 0.055;
352 pub const D3D11_SRGB_TO_FLOAT_THRESHOLD
: FLOAT
= 0.04045;
353 pub const D3D11_SRGB_TO_FLOAT_TOLERANCE_IN_ULP
: FLOAT
= 0.5;
354 pub const D3D11_STANDARD_COMPONENT_BIT_COUNT
: DWORD
= 32;
355 pub const D3D11_STANDARD_COMPONENT_BIT_COUNT_DOUBLED
: DWORD
= 64;
356 pub const D3D11_STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE
: DWORD
= 4;
357 pub const D3D11_STANDARD_PIXEL_COMPONENT_COUNT
: DWORD
= 128;
358 pub const D3D11_STANDARD_PIXEL_ELEMENT_COUNT
: DWORD
= 32;
359 pub const D3D11_STANDARD_VECTOR_SIZE
: DWORD
= 4;
360 pub const D3D11_STANDARD_VERTEX_ELEMENT_COUNT
: DWORD
= 32;
361 pub const D3D11_STANDARD_VERTEX_TOTAL_COMPONENT_COUNT
: DWORD
= 64;
362 pub const D3D11_SUBPIXEL_FRACTIONAL_BIT_COUNT
: DWORD
= 8;
363 pub const D3D11_SUBTEXEL_FRACTIONAL_BIT_COUNT
: DWORD
= 8;
364 pub const D3D11_TESSELLATOR_MAX_EVEN_TESSELLATION_FACTOR
: DWORD
= 64;
365 pub const D3D11_TESSELLATOR_MAX_ISOLINE_DENSITY_TESSELLATION_FACTOR
: DWORD
= 64;
366 pub const D3D11_TESSELLATOR_MAX_ODD_TESSELLATION_FACTOR
: DWORD
= 63;
367 pub const D3D11_TESSELLATOR_MAX_TESSELLATION_FACTOR
: DWORD
= 64;
368 pub const D3D11_TESSELLATOR_MIN_EVEN_TESSELLATION_FACTOR
: DWORD
= 2;
369 pub const D3D11_TESSELLATOR_MIN_ISOLINE_DENSITY_TESSELLATION_FACTOR
: DWORD
= 1;
370 pub const D3D11_TESSELLATOR_MIN_ODD_TESSELLATION_FACTOR
: DWORD
= 1;
371 pub const D3D11_TEXEL_ADDRESS_RANGE_BIT_COUNT
: DWORD
= 16;
372 pub const D3D11_UNBOUND_MEMORY_ACCESS_RESULT
: DWORD
= 0;
373 pub const D3D11_VIEWPORT_AND_SCISSORRECT_MAX_INDEX
: DWORD
= 15;
374 pub const D3D11_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE
: DWORD
= 16;
375 pub const D3D11_VIEWPORT_BOUNDS_MAX
: DWORD
= 32767;
376 pub const D3D11_VIEWPORT_BOUNDS_MIN
: c_long
= -32768;
377 pub const D3D11_VS_INPUT_REGISTER_COMPONENTS
: DWORD
= 4;
378 pub const D3D11_VS_INPUT_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
379 pub const D3D11_VS_INPUT_REGISTER_COUNT
: DWORD
= 32;
380 pub const D3D11_VS_INPUT_REGISTER_READS_PER_INST
: DWORD
= 2;
381 pub const D3D11_VS_INPUT_REGISTER_READ_PORTS
: DWORD
= 1;
382 pub const D3D11_VS_OUTPUT_REGISTER_COMPONENTS
: DWORD
= 4;
383 pub const D3D11_VS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT
: DWORD
= 32;
384 pub const D3D11_VS_OUTPUT_REGISTER_COUNT
: DWORD
= 32;
385 pub const D3D11_WHQL_CONTEXT_COUNT_FOR_RESOURCE_LIMIT
: DWORD
= 10;
386 pub const D3D11_WHQL_DRAWINDEXED_INDEX_COUNT_2_TO_EXP
: DWORD
= 25;
387 pub const D3D11_WHQL_DRAW_VERTEX_COUNT_2_TO_EXP
: DWORD
= 25;
388 pub const D3D11_1_UAV_SLOT_COUNT
: DWORD
= 64;
389 pub const D3D11_2_TILED_RESOURCE_TILE_SIZE_IN_BYTES
: DWORD
= 65536;
390 ENUM
!{enum D3D11_INPUT_CLASSIFICATION
{
391 D3D11_INPUT_PER_VERTEX_DATA
= 0,
392 D3D11_INPUT_PER_INSTANCE_DATA
= 1,
394 pub const D3D11_APPEND_ALIGNED_ELEMENT
: DWORD
= 0xffffffff;
395 STRUCT
!{struct D3D11_INPUT_ELEMENT_DESC
{
396 SemanticName
: LPCSTR
,
400 AlignedByteOffset
: UINT
,
401 InputSlotClass
: D3D11_INPUT_CLASSIFICATION
,
402 InstanceDataStepRate
: UINT
,
404 ENUM
!{enum D3D11_FILL_MODE
{
405 D3D11_FILL_WIREFRAME
= 2,
406 D3D11_FILL_SOLID
= 3,
408 pub type D3D11_PRIMITIVE_TOPOLOGY
= D3D_PRIMITIVE_TOPOLOGY
;
409 pub type D3D11_PRIMITIVE
= D3D_PRIMITIVE
;
410 ENUM
!{enum D3D11_CULL_MODE
{
412 D3D11_CULL_FRONT
= 2,
415 STRUCT
!{struct D3D11_SO_DECLARATION_ENTRY
{
417 SemanticName
: LPCSTR
,
419 StartComponent
: BYTE
,
420 ComponentCount
: BYTE
,
423 STRUCT
!{struct D3D11_VIEWPORT
{
431 STRUCT
!{struct D3D11_DRAW_INSTANCED_INDIRECT_ARGS
{
432 VertexCountPerInstance
: UINT
,
434 StartVertexLocation
: UINT
,
435 StartInstanceLocation
: UINT
,
437 STRUCT
!{struct D3D11_DRAW_INDEXED_INSTANCED_INDIRECT_ARGS
{
438 IndexCountPerInstance
: UINT
,
440 StartIndexLocation
: UINT
,
441 BaseVertexLocation
: INT
,
442 StartInstanceLocation
: UINT
,
444 ENUM
!{enum D3D11_RESOURCE_DIMENSION
{
445 D3D11_RESOURCE_DIMENSION_UNKNOWN
= 0,
446 D3D11_RESOURCE_DIMENSION_BUFFER
= 1,
447 D3D11_RESOURCE_DIMENSION_TEXTURE1D
= 2,
448 D3D11_RESOURCE_DIMENSION_TEXTURE2D
= 3,
449 D3D11_RESOURCE_DIMENSION_TEXTURE3D
= 4,
451 pub type D3D11_SRV_DIMENSION
= D3D_SRV_DIMENSION
;
452 ENUM
!{enum D3D11_DSV_DIMENSION
{
453 D3D11_DSV_DIMENSION_UNKNOWN
= 0,
454 D3D11_DSV_DIMENSION_TEXTURE1D
= 1,
455 D3D11_DSV_DIMENSION_TEXTURE1DARRAY
= 2,
456 D3D11_DSV_DIMENSION_TEXTURE2D
= 3,
457 D3D11_DSV_DIMENSION_TEXTURE2DARRAY
= 4,
458 D3D11_DSV_DIMENSION_TEXTURE2DMS
= 5,
459 D3D11_DSV_DIMENSION_TEXTURE2DMSARRAY
= 6,
461 ENUM
!{enum D3D11_RTV_DIMENSION
{
462 D3D11_RTV_DIMENSION_UNKNOWN
= 0,
463 D3D11_RTV_DIMENSION_BUFFER
= 1,
464 D3D11_RTV_DIMENSION_TEXTURE1D
= 2,
465 D3D11_RTV_DIMENSION_TEXTURE1DARRAY
= 3,
466 D3D11_RTV_DIMENSION_TEXTURE2D
= 4,
467 D3D11_RTV_DIMENSION_TEXTURE2DARRAY
= 5,
468 D3D11_RTV_DIMENSION_TEXTURE2DMS
= 6,
469 D3D11_RTV_DIMENSION_TEXTURE2DMSARRAY
= 7,
470 D3D11_RTV_DIMENSION_TEXTURE3D
= 8,
472 ENUM
!{enum D3D11_UAV_DIMENSION
{
473 D3D11_UAV_DIMENSION_UNKNOWN
= 0,
474 D3D11_UAV_DIMENSION_BUFFER
= 1,
475 D3D11_UAV_DIMENSION_TEXTURE1D
= 2,
476 D3D11_UAV_DIMENSION_TEXTURE1DARRAY
= 3,
477 D3D11_UAV_DIMENSION_TEXTURE2D
= 4,
478 D3D11_UAV_DIMENSION_TEXTURE2DARRAY
= 5,
479 D3D11_UAV_DIMENSION_TEXTURE3D
= 8,
481 ENUM
!{enum D3D11_USAGE
{
482 D3D11_USAGE_DEFAULT
= 0,
483 D3D11_USAGE_IMMUTABLE
= 1,
484 D3D11_USAGE_DYNAMIC
= 2,
485 D3D11_USAGE_STAGING
= 3,
487 ENUM
!{enum D3D11_BIND_FLAG
{
488 D3D11_BIND_VERTEX_BUFFER
= 0x1,
489 D3D11_BIND_INDEX_BUFFER
= 0x2,
490 D3D11_BIND_CONSTANT_BUFFER
= 0x4,
491 D3D11_BIND_SHADER_RESOURCE
= 0x8,
492 D3D11_BIND_STREAM_OUTPUT
= 0x10,
493 D3D11_BIND_RENDER_TARGET
= 0x20,
494 D3D11_BIND_DEPTH_STENCIL
= 0x40,
495 D3D11_BIND_UNORDERED_ACCESS
= 0x80,
496 D3D11_BIND_DECODER
= 0x200,
497 D3D11_BIND_VIDEO_ENCODER
= 0x400,
499 ENUM
!{enum D3D11_CPU_ACCESS_FLAG
{
500 D3D11_CPU_ACCESS_WRITE
= 0x10000,
501 D3D11_CPU_ACCESS_READ
= 0x20000,
503 ENUM
!{enum D3D11_RESOURCE_MISC_FLAG
{
504 D3D11_RESOURCE_MISC_GENERATE_MIPS
= 0x1,
505 D3D11_RESOURCE_MISC_SHARED
= 0x2,
506 D3D11_RESOURCE_MISC_TEXTURECUBE
= 0x4,
507 D3D11_RESOURCE_MISC_DRAWINDIRECT_ARGS
= 0x10,
508 D3D11_RESOURCE_MISC_BUFFER_ALLOW_RAW_VIEWS
= 0x20,
509 D3D11_RESOURCE_MISC_BUFFER_STRUCTURED
= 0x40,
510 D3D11_RESOURCE_MISC_RESOURCE_CLAMP
= 0x80,
511 D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX
= 0x100,
512 D3D11_RESOURCE_MISC_GDI_COMPATIBLE
= 0x200,
513 D3D11_RESOURCE_MISC_SHARED_NTHANDLE
= 0x800,
514 D3D11_RESOURCE_MISC_RESTRICTED_CONTENT
= 0x1000,
515 D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE
= 0x2000,
516 D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE_DRIVER
= 0x4000,
517 D3D11_RESOURCE_MISC_GUARDED
= 0x8000,
518 D3D11_RESOURCE_MISC_TILE_POOL
= 0x20000,
519 D3D11_RESOURCE_MISC_TILED
= 0x40000,
520 D3D11_RESOURCE_MISC_HW_PROTECTED
= 0x80000,
522 ENUM
!{enum D3D11_MAP
{
525 D3D11_MAP_READ_WRITE
= 3,
526 D3D11_MAP_WRITE_DISCARD
= 4,
527 D3D11_MAP_WRITE_NO_OVERWRITE
= 5,
529 ENUM
!{enum D3D11_MAP_FLAG
{
530 D3D11_MAP_FLAG_DO_NOT_WAIT
= 0x100000,
532 ENUM
!{enum D3D11_RAISE_FLAG
{
533 D3D11_RAISE_FLAG_DRIVER_INTERNAL_ERROR
= 0x1,
535 ENUM
!{enum D3D11_CLEAR_FLAG
{
536 D3D11_CLEAR_DEPTH
= 0x1,
537 D3D11_CLEAR_STENCIL
= 0x2,
539 pub type D3D11_RECT
= RECT
;
540 STRUCT
!{struct D3D11_BOX
{
548 RIDL
!{#[uuid(0x1841e5c8, 0x16b0, 0x489b, 0xbc, 0xc8, 0x44, 0xcf, 0xb0, 0xd5, 0xde, 0xae)]
549 interface
ID3D11DeviceChild(ID3D11DeviceChildVtbl
): IUnknown(IUnknownVtbl
) {
551 ppDevice
: *mut *mut ID3D11Device
,
555 pDataSize
: *mut UINT
,
561 pData
: *const c_void
,
563 fn SetPrivateDataInterface(
565 pData
: *const IUnknown
,
568 ENUM
!{enum D3D11_COMPARISON_FUNC
{
569 D3D11_COMPARISON_NEVER
= 1,
570 D3D11_COMPARISON_LESS
= 2,
571 D3D11_COMPARISON_EQUAL
= 3,
572 D3D11_COMPARISON_LESS_EQUAL
= 4,
573 D3D11_COMPARISON_GREATER
= 5,
574 D3D11_COMPARISON_NOT_EQUAL
= 6,
575 D3D11_COMPARISON_GREATER_EQUAL
= 7,
576 D3D11_COMPARISON_ALWAYS
= 8,
578 ENUM
!{enum D3D11_DEPTH_WRITE_MASK
{
579 D3D11_DEPTH_WRITE_MASK_ZERO
= 0,
580 D3D11_DEPTH_WRITE_MASK_ALL
= 1,
582 ENUM
!{enum D3D11_STENCIL_OP
{
583 D3D11_STENCIL_OP_KEEP
= 1,
584 D3D11_STENCIL_OP_ZERO
= 2,
585 D3D11_STENCIL_OP_REPLACE
= 3,
586 D3D11_STENCIL_OP_INCR_SAT
= 4,
587 D3D11_STENCIL_OP_DECR_SAT
= 5,
588 D3D11_STENCIL_OP_INVERT
= 6,
589 D3D11_STENCIL_OP_INCR
= 7,
590 D3D11_STENCIL_OP_DECR
= 8,
592 STRUCT
!{struct D3D11_DEPTH_STENCILOP_DESC
{
593 StencilFailOp
: D3D11_STENCIL_OP
,
594 StencilDepthFailOp
: D3D11_STENCIL_OP
,
595 StencilPassOp
: D3D11_STENCIL_OP
,
596 StencilFunc
: D3D11_COMPARISON_FUNC
,
598 STRUCT
!{struct D3D11_DEPTH_STENCIL_DESC
{
600 DepthWriteMask
: D3D11_DEPTH_WRITE_MASK
,
601 DepthFunc
: D3D11_COMPARISON_FUNC
,
603 StencilReadMask
: UINT8
,
604 StencilWriteMask
: UINT8
,
605 FrontFace
: D3D11_DEPTH_STENCILOP_DESC
,
606 BackFace
: D3D11_DEPTH_STENCILOP_DESC
,
608 RIDL
!{#[uuid(0x03823efb, 0x8d8f, 0x4e1c, 0x9a, 0xa2, 0xf6, 0x4b, 0xb2, 0xcb, 0xfd, 0xf1)]
609 interface
ID3D11DepthStencilState(ID3D11DepthStencilStateVtbl
):
610 ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {
612 pDesc
: *mut D3D11_DEPTH_STENCIL_DESC
,
615 ENUM
!{enum D3D11_BLEND
{
616 D3D11_BLEND_ZERO
= 1,
618 D3D11_BLEND_SRC_COLOR
= 3,
619 D3D11_BLEND_INV_SRC_COLOR
= 4,
620 D3D11_BLEND_SRC_ALPHA
= 5,
621 D3D11_BLEND_INV_SRC_ALPHA
= 6,
622 D3D11_BLEND_DEST_ALPHA
= 7,
623 D3D11_BLEND_INV_DEST_ALPHA
= 8,
624 D3D11_BLEND_DEST_COLOR
= 9,
625 D3D11_BLEND_INV_DEST_COLOR
= 10,
626 D3D11_BLEND_SRC_ALPHA_SAT
= 11,
627 D3D11_BLEND_BLEND_FACTOR
= 14,
628 D3D11_BLEND_INV_BLEND_FACTOR
= 15,
629 D3D11_BLEND_SRC1_COLOR
= 16,
630 D3D11_BLEND_INV_SRC1_COLOR
= 17,
631 D3D11_BLEND_SRC1_ALPHA
= 18,
632 D3D11_BLEND_INV_SRC1_ALPHA
= 19,
634 ENUM
!{enum D3D11_BLEND_OP
{
635 D3D11_BLEND_OP_ADD
= 1,
636 D3D11_BLEND_OP_SUBTRACT
= 2,
637 D3D11_BLEND_OP_REV_SUBTRACT
= 3,
638 D3D11_BLEND_OP_MIN
= 4,
639 D3D11_BLEND_OP_MAX
= 5,
641 ENUM
!{enum D3D11_COLOR_WRITE_ENABLE
{
642 D3D11_COLOR_WRITE_ENABLE_RED
= 1,
643 D3D11_COLOR_WRITE_ENABLE_GREEN
= 2,
644 D3D11_COLOR_WRITE_ENABLE_BLUE
= 4,
645 D3D11_COLOR_WRITE_ENABLE_ALPHA
= 8,
646 D3D11_COLOR_WRITE_ENABLE_ALL
= D3D11_COLOR_WRITE_ENABLE_RED
| D3D11_COLOR_WRITE_ENABLE_GREEN
647 | D3D11_COLOR_WRITE_ENABLE_BLUE
| D3D11_COLOR_WRITE_ENABLE_ALPHA
,
649 STRUCT
!{struct D3D11_RENDER_TARGET_BLEND_DESC
{
651 SrcBlend
: D3D11_BLEND
,
652 DestBlend
: D3D11_BLEND
,
653 BlendOp
: D3D11_BLEND_OP
,
654 SrcBlendAlpha
: D3D11_BLEND
,
655 DestBlendAlpha
: D3D11_BLEND
,
656 BlendOpAlpha
: D3D11_BLEND_OP
,
657 RenderTargetWriteMask
: UINT8
,
659 STRUCT
!{struct D3D11_BLEND_DESC
{
660 AlphaToCoverageEnable
: BOOL
,
661 IndependentBlendEnable
: BOOL
,
662 RenderTarget
: [D3D11_RENDER_TARGET_BLEND_DESC
; 8],
664 RIDL
!{#[uuid(0x75b68faa, 0x347d, 0x4159, 0x8f, 0x45, 0xa0, 0x64, 0x0f, 0x01, 0xcd, 0x9a)]
665 interface
ID3D11BlendState(ID3D11BlendStateVtbl
): ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {
667 pDesc
: *mut D3D11_BLEND_DESC
,
670 STRUCT
!{struct D3D11_RASTERIZER_DESC
{
671 FillMode
: D3D11_FILL_MODE
,
672 CullMode
: D3D11_CULL_MODE
,
673 FrontCounterClockwise
: BOOL
,
675 DepthBiasClamp
: FLOAT
,
676 SlopeScaledDepthBias
: FLOAT
,
677 DepthClipEnable
: BOOL
,
679 MultisampleEnable
: BOOL
,
680 AntialiasedLineEnable
: BOOL
,
682 RIDL
!{#[uuid(0x9bb4ab81, 0xab1a, 0x4d8f, 0xb5, 0x06, 0xfc, 0x04, 0x20, 0x0b, 0x6e, 0xe7)]
683 interface
ID3D11RasterizerState(ID3D11RasterizerStateVtbl
):
684 ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {
686 pDesc
: *mut D3D11_RASTERIZER_DESC
,
689 STRUCT
!{struct D3D11_SUBRESOURCE_DATA
{
690 pSysMem
: *const c_void
,
692 SysMemSlicePitch
: UINT
,
694 STRUCT
!{struct D3D11_MAPPED_SUBRESOURCE
{
699 RIDL
!{#[uuid(0xdc8e63f3, 0xd12b, 0x4952, 0xb4, 0x7b, 0x5e, 0x45, 0x02, 0x6a, 0x86, 0x2d)]
700 interface
ID3D11Resource(ID3D11ResourceVtbl
): ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {
702 pResourceDimension
: *mut D3D11_RESOURCE_DIMENSION
,
704 fn SetEvictionPriority(
705 EvictionPriority
: UINT
,
707 fn GetEvictionPriority() -> UINT
,
709 STRUCT
!{struct D3D11_BUFFER_DESC
{
713 CPUAccessFlags
: UINT
,
715 StructureByteStride
: UINT
,
717 RIDL
!{#[uuid(0x48570b85, 0xd1ee, 0x4fcd, 0xa2, 0x50, 0xeb, 0x35, 0x07, 0x22, 0xb0, 0x37)]
718 interface
ID3D11Buffer(ID3D11BufferVtbl
): ID3D11Resource(ID3D11ResourceVtbl
) {
720 pDesc
: *mut D3D11_BUFFER_DESC
,
723 STRUCT
!{struct D3D11_TEXTURE1D_DESC
{
730 CPUAccessFlags
: UINT
,
733 RIDL
!{#[uuid(0xf8fb5c27, 0xc6b3, 0x4f75, 0xa4, 0xc8, 0x43, 0x9a, 0xf2, 0xef, 0x56, 0x4c)]
734 interface
ID3D11Texture1D(ID3D11Texture1DVtbl
): ID3D11Resource(ID3D11ResourceVtbl
) {
736 pDesc
: *mut D3D11_TEXTURE1D_DESC
,
739 STRUCT
!{struct D3D11_TEXTURE2D_DESC
{
745 SampleDesc
: DXGI_SAMPLE_DESC
,
748 CPUAccessFlags
: UINT
,
751 RIDL
!{#[uuid(0x6f15aaf2, 0xd208, 0x4e89, 0x9a, 0xb4, 0x48, 0x95, 0x35, 0xd3, 0x4f, 0x9c)]
752 interface
ID3D11Texture2D(ID3D11Texture2DVtbl
): ID3D11Resource(ID3D11ResourceVtbl
) {
754 pDesc
: *mut D3D11_TEXTURE2D_DESC
,
757 STRUCT
!{struct D3D11_TEXTURE3D_DESC
{
765 CPUAccessFlags
: UINT
,
768 RIDL
!{#[uuid(0x037e866e, 0xf56d, 0x4357, 0xa8, 0xaf, 0x9d, 0xab, 0xbe, 0x6e, 0x25, 0x0e)]
769 interface
ID3D11Texture3D(ID3D11Texture3DVtbl
): ID3D11Resource(ID3D11ResourceVtbl
) {
771 pDesc
: *mut D3D11_TEXTURE3D_DESC
,
774 ENUM
!{enum D3D11_TEXTURECUBE_FACE
{
775 D3D11_TEXTURECUBE_FACE_POSITIVE_X
= 0,
776 D3D11_TEXTURECUBE_FACE_NEGATIVE_X
= 1,
777 D3D11_TEXTURECUBE_FACE_POSITIVE_Y
= 2,
778 D3D11_TEXTURECUBE_FACE_NEGATIVE_Y
= 3,
779 D3D11_TEXTURECUBE_FACE_POSITIVE_Z
= 4,
780 D3D11_TEXTURECUBE_FACE_NEGATIVE_Z
= 5,
782 RIDL
!{#[uuid(0x839d1216, 0xbb2e, 0x412b, 0xb7, 0xf4, 0xa9, 0xdb, 0xeb, 0xe0, 0x8e, 0xd1)]
783 interface
ID3D11View(ID3D11ViewVtbl
): ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {
785 ppResource
: *mut *mut ID3D11Resource
,
788 UNION
!{union D3D11_BUFFER_SRV_u1
{
790 FirstElement FirstElement_mut
: UINT
,
791 ElementOffset ElementOffset_mut
: UINT
,
793 UNION
!{union D3D11_BUFFER_SRV_u2
{
795 NumElements NumElements_mut
: UINT
,
796 ElementWidth ElementWidth_mut
: UINT
,
798 STRUCT
!{struct D3D11_BUFFER_SRV
{
799 u1
: D3D11_BUFFER_SRV_u1
,
800 u2
: D3D11_BUFFER_SRV_u2
,
802 ENUM
!{enum D3D11_BUFFEREX_SRV_FLAG
{
803 D3D11_BUFFEREX_SRV_FLAG_RAW
= 0x1,
805 STRUCT
!{struct D3D11_BUFFEREX_SRV
{
810 STRUCT
!{struct D3D11_TEX1D_SRV
{
811 MostDetailedMip
: UINT
,
814 STRUCT
!{struct D3D11_TEX1D_ARRAY_SRV
{
815 MostDetailedMip
: UINT
,
817 FirstArraySlice
: UINT
,
820 STRUCT
!{struct D3D11_TEX2D_SRV
{
821 MostDetailedMip
: UINT
,
824 STRUCT
!{struct D3D11_TEX2D_ARRAY_SRV
{
825 MostDetailedMip
: UINT
,
827 FirstArraySlice
: UINT
,
830 STRUCT
!{struct D3D11_TEX3D_SRV
{
831 MostDetailedMip
: UINT
,
834 STRUCT
!{struct D3D11_TEXCUBE_SRV
{
835 MostDetailedMip
: UINT
,
838 STRUCT
!{struct D3D11_TEXCUBE_ARRAY_SRV
{
839 MostDetailedMip
: UINT
,
841 First2DArrayFace
: UINT
,
844 STRUCT
!{struct D3D11_TEX2DMS_SRV
{
845 UnusedField_NothingToDefine
: UINT
,
847 STRUCT
!{struct D3D11_TEX2DMS_ARRAY_SRV
{
848 FirstArraySlice
: UINT
,
851 UNION
!{union D3D11_SHADER_RESOURCE_VIEW_DESC_u
{
853 Buffer Buffer_mut
: D3D11_BUFFER_SRV
,
854 Texture1D Texture1D_mut
: D3D11_TEX1D_SRV
,
855 Texture1DArray Texture1DArray_mut
: D3D11_TEX1D_ARRAY_SRV
,
856 Texture2D Texture2D_mut
: D3D11_TEX2D_SRV
,
857 Texture2DArray Texture2DArray_mut
: D3D11_TEX2D_ARRAY_SRV
,
858 Texture2DMS Texture2DMS_mut
: D3D11_TEX2DMS_SRV
,
859 Texture2DMSArray Texture2DMSArray_mut
: D3D11_TEX2DMS_ARRAY_SRV
,
860 Texture3D Texture3D_mut
: D3D11_TEX3D_SRV
,
861 TextureCube TextureCube_mut
: D3D11_TEXCUBE_SRV
,
862 TextureCubeArray TextureCubeArray_mut
: D3D11_TEXCUBE_ARRAY_SRV
,
863 BufferEx BufferEx_mut
: D3D11_BUFFEREX_SRV
,
865 STRUCT
!{struct D3D11_SHADER_RESOURCE_VIEW_DESC
{
867 ViewDimension
: D3D11_SRV_DIMENSION
,
868 u
: D3D11_SHADER_RESOURCE_VIEW_DESC_u
,
870 RIDL
!{#[uuid(0xb0e06fe0, 0x8192, 0x4e1a, 0xb1, 0xca, 0x36, 0xd7, 0x41, 0x47, 0x10, 0xb2)]
871 interface
ID3D11ShaderResourceView(ID3D11ShaderResourceViewVtbl
): ID3D11View(ID3D11ViewVtbl
) {
873 pDesc
: *mut D3D11_SHADER_RESOURCE_VIEW_DESC
,
876 UNION
!{union D3D11_BUFFER_RTV_u1
{
878 FirstElement FirstElement_mut
: UINT
,
879 ElementOffset ElementOffset_mut
: UINT
,
881 UNION
!{union D3D11_BUFFER_RTV_u2
{
883 NumElements NumElements_mut
: UINT
,
884 ElementWidth ElementWidth_mut
: UINT
,
886 STRUCT
!{struct D3D11_BUFFER_RTV
{
887 u1
: D3D11_BUFFER_RTV_u1
,
888 u2
: D3D11_BUFFER_RTV_u2
,
890 STRUCT
!{struct D3D11_TEX1D_RTV
{
893 STRUCT
!{struct D3D11_TEX1D_ARRAY_RTV
{
895 FirstArraySlice
: UINT
,
898 STRUCT
!{struct D3D11_TEX2D_RTV
{
901 STRUCT
!{struct D3D11_TEX2DMS_RTV
{
902 UnusedField_NothingToDefine
: UINT
,
904 STRUCT
!{struct D3D11_TEX2D_ARRAY_RTV
{
906 FirstArraySlice
: UINT
,
909 STRUCT
!{struct D3D11_TEX2DMS_ARRAY_RTV
{
910 FirstArraySlice
: UINT
,
913 STRUCT
!{struct D3D11_TEX3D_RTV
{
918 UNION
!{union D3D11_RENDER_TARGET_VIEW_DESC_u
{
920 Buffer Buffer_mut
: D3D11_BUFFER_RTV
,
921 Texture1D Texture1D_mut
: D3D11_TEX1D_RTV
,
922 Texture1DArray Texture1DArray_mut
: D3D11_TEX1D_ARRAY_RTV
,
923 Texture2D Texture2D_mut
: D3D11_TEX2D_RTV
,
924 Texture2DArray Texture2DArray_mut
: D3D11_TEX2D_ARRAY_RTV
,
925 Texture2DMS Texture2DMS_mut
: D3D11_TEX2DMS_RTV
,
926 Texture2DMSArray Texture2DMSArray_mut
: D3D11_TEX2DMS_ARRAY_RTV
,
927 Texture3D Texture3D_mut
: D3D11_TEX3D_RTV
,
929 STRUCT
!{struct D3D11_RENDER_TARGET_VIEW_DESC
{
931 ViewDimension
: D3D11_RTV_DIMENSION
,
932 u
: D3D11_RENDER_TARGET_VIEW_DESC_u
,
934 RIDL
!{#[uuid(0xdfdba067, 0x0b8d, 0x4865, 0x87, 0x5b, 0xd7, 0xb4, 0x51, 0x6c, 0xc1, 0x64)]
935 interface
ID3D11RenderTargetView(ID3D11RenderTargetViewVtbl
): ID3D11View(ID3D11ViewVtbl
) {
937 pDesc
: *mut D3D11_RENDER_TARGET_VIEW_DESC
,
940 STRUCT
!{struct D3D11_TEX1D_DSV
{
943 STRUCT
!{struct D3D11_TEX1D_ARRAY_DSV
{
945 FirstArraySlice
: UINT
,
948 STRUCT
!{struct D3D11_TEX2D_DSV
{
951 STRUCT
!{struct D3D11_TEX2D_ARRAY_DSV
{
953 FirstArraySlice
: UINT
,
956 STRUCT
!{struct D3D11_TEX2DMS_DSV
{
957 UnusedField_NothingToDefine
: UINT
,
959 STRUCT
!{struct D3D11_TEX2DMS_ARRAY_DSV
{
960 FirstArraySlice
: UINT
,
963 ENUM
!{enum D3D11_DSV_FLAG
{
964 D3D11_DSV_READ_ONLY_DEPTH
= 0x1,
965 D3D11_DSV_READ_ONLY_STENCIL
= 0x2,
967 UNION
!{union D3D11_DEPTH_STENCIL_VIEW_DESC_u
{
969 Texture1D Texture1D_mut
: D3D11_TEX1D_DSV
,
970 Texture1DArray Texture1DArray_mut
: D3D11_TEX1D_ARRAY_DSV
,
971 Texture2D Texture2D_mut
: D3D11_TEX2D_DSV
,
972 Texture2DArray Texture2DArray_mut
: D3D11_TEX2D_ARRAY_DSV
,
973 Texture2DMS Texture2DMS_mut
: D3D11_TEX2DMS_DSV
,
974 Texture2DMSArray Texture2DMSArray_mut
: D3D11_TEX2DMS_ARRAY_DSV
,
976 STRUCT
!{struct D3D11_DEPTH_STENCIL_VIEW_DESC
{
978 ViewDimension
: D3D11_DSV_DIMENSION
,
980 u
: D3D11_DEPTH_STENCIL_VIEW_DESC_u
,
982 RIDL
!{#[uuid(0x9fdac92a, 0x1876, 0x48c3, 0xaf, 0xad, 0x25, 0xb9, 0x4f, 0x84, 0xa9, 0xb6)]
983 interface
ID3D11DepthStencilView(ID3D11DepthStencilViewVtbl
): ID3D11View(ID3D11ViewVtbl
) {
985 pDesc
: *mut D3D11_DEPTH_STENCIL_VIEW_DESC
,
988 ENUM
!{enum D3D11_BUFFER_UAV_FLAG
{
989 D3D11_BUFFER_UAV_FLAG_RAW
= 0x1,
990 D3D11_BUFFER_UAV_FLAG_APPEND
= 0x2,
991 D3D11_BUFFER_UAV_FLAG_COUNTER
= 0x4,
993 STRUCT
!{struct D3D11_BUFFER_UAV
{
998 STRUCT
!{struct D3D11_TEX1D_UAV
{
1001 STRUCT
!{struct D3D11_TEX1D_ARRAY_UAV
{
1003 FirstArraySlice
: UINT
,
1006 STRUCT
!{struct D3D11_TEX2D_UAV
{
1009 STRUCT
!{struct D3D11_TEX2D_ARRAY_UAV
{
1011 FirstArraySlice
: UINT
,
1014 STRUCT
!{struct D3D11_TEX3D_UAV
{
1019 UNION
!{union D3D11_UNORDERED_ACCESS_VIEW_DESC_u
{
1021 Buffer Buffer_mut
: D3D11_BUFFER_UAV
,
1022 Texture1D Texture1D_mut
: D3D11_TEX1D_UAV
,
1023 Texture1DArray Texture1DArray_mut
: D3D11_TEX1D_ARRAY_UAV
,
1024 Texture2D Texture2D_mut
: D3D11_TEX2D_UAV
,
1025 Texture2DArray Texture2DArray_mut
: D3D11_TEX2D_ARRAY_UAV
,
1026 Texture3D Texture3D_mut
: D3D11_TEX3D_UAV
,
1028 STRUCT
!{struct D3D11_UNORDERED_ACCESS_VIEW_DESC
{
1029 Format
: DXGI_FORMAT
,
1030 ViewDimension
: D3D11_UAV_DIMENSION
,
1031 u
: D3D11_UNORDERED_ACCESS_VIEW_DESC_u
,
1033 RIDL
!{#[uuid(0x28acf509, 0x7f5c, 0x48f6, 0x86, 0x11, 0xf3, 0x16, 0x01, 0x0a, 0x63, 0x80)]
1034 interface
ID3D11UnorderedAccessView(ID3D11UnorderedAccessViewVtbl
): ID3D11View(ID3D11ViewVtbl
) {
1036 pDesc
: *mut D3D11_UNORDERED_ACCESS_VIEW_DESC
,
1039 RIDL
!{#[uuid(0x3b301d64, 0xd678, 0x4289, 0x88, 0x97, 0x22, 0xf8, 0x92, 0x8b, 0x72, 0xf3)]
1040 interface
ID3D11VertexShader(ID3D11VertexShaderVtbl
):
1041 ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {}
}
1042 RIDL
!{#[uuid(0x8e5c6061, 0x628a, 0x4c8e, 0x82, 0x64, 0xbb, 0xe4, 0x5c, 0xb3, 0xd5, 0xdd)]
1043 interface
ID3D11HullShader(ID3D11HullShaderVtbl
):
1044 ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {}
}
1045 RIDL
!{#[uuid(0xf582c508, 0x0f36, 0x490c, 0x99, 0x77, 0x31, 0xee, 0xce, 0x26, 0x8c, 0xfa)]
1046 interface
ID3D11DomainShader(ID3D11DomainShaderVtbl
):
1047 ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {}
}
1048 RIDL
!{#[uuid(0x38325b96, 0xeffb, 0x4022, 0xba, 0x02, 0x2e, 0x79, 0x5b, 0x70, 0x27, 0x5c)]
1049 interface
ID3D11GeometryShader(ID3D11GeometryShaderVtbl
):
1050 ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {}
}
1051 RIDL
!{#[uuid(0xea82e40d, 0x51dc, 0x4f33, 0x93, 0xd4, 0xdb, 0x7c, 0x91, 0x25, 0xae, 0x8c)]
1052 interface
ID3D11PixelShader(ID3D11PixelShaderVtbl
):
1053 ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {}
}
1054 RIDL
!{#[uuid(0x4f5b196e, 0xc2bd, 0x495e, 0xbd, 0x01, 0x1f, 0xde, 0xd3, 0x8e, 0x49, 0x69)]
1055 interface
ID3D11ComputeShader(ID3D11ComputeShaderVtbl
):
1056 ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {}
}
1057 RIDL
!{#[uuid(0xe4819ddc, 0x4cf0, 0x4025, 0xbd, 0x26, 0x5d, 0xe8, 0x2a, 0x3e, 0x07, 0xb7)]
1058 interface
ID3D11InputLayout(ID3D11InputLayoutVtbl
):
1059 ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {}
}
1060 ENUM
!{enum D3D11_FILTER
{
1061 D3D11_FILTER_MIN_MAG_MIP_POINT
= 0,
1062 D3D11_FILTER_MIN_MAG_POINT_MIP_LINEAR
= 0x1,
1063 D3D11_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT
= 0x4,
1064 D3D11_FILTER_MIN_POINT_MAG_MIP_LINEAR
= 0x5,
1065 D3D11_FILTER_MIN_LINEAR_MAG_MIP_POINT
= 0x10,
1066 D3D11_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR
= 0x11,
1067 D3D11_FILTER_MIN_MAG_LINEAR_MIP_POINT
= 0x14,
1068 D3D11_FILTER_MIN_MAG_MIP_LINEAR
= 0x15,
1069 D3D11_FILTER_ANISOTROPIC
= 0x55,
1070 D3D11_FILTER_COMPARISON_MIN_MAG_MIP_POINT
= 0x80,
1071 D3D11_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR
= 0x81,
1072 D3D11_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT
= 0x84,
1073 D3D11_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR
= 0x85,
1074 D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT
= 0x90,
1075 D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR
= 0x91,
1076 D3D11_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT
= 0x94,
1077 D3D11_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR
= 0x95,
1078 D3D11_FILTER_COMPARISON_ANISOTROPIC
= 0xd5,
1079 D3D11_FILTER_MINIMUM_MIN_MAG_MIP_POINT
= 0x100,
1080 D3D11_FILTER_MINIMUM_MIN_MAG_POINT_MIP_LINEAR
= 0x101,
1081 D3D11_FILTER_MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT
= 0x104,
1082 D3D11_FILTER_MINIMUM_MIN_POINT_MAG_MIP_LINEAR
= 0x105,
1083 D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_MIP_POINT
= 0x110,
1084 D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR
= 0x111,
1085 D3D11_FILTER_MINIMUM_MIN_MAG_LINEAR_MIP_POINT
= 0x114,
1086 D3D11_FILTER_MINIMUM_MIN_MAG_MIP_LINEAR
= 0x115,
1087 D3D11_FILTER_MINIMUM_ANISOTROPIC
= 0x155,
1088 D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_POINT
= 0x180,
1089 D3D11_FILTER_MAXIMUM_MIN_MAG_POINT_MIP_LINEAR
= 0x181,
1090 D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT
= 0x184,
1091 D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_MIP_LINEAR
= 0x185,
1092 D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_MIP_POINT
= 0x190,
1093 D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR
= 0x191,
1094 D3D11_FILTER_MAXIMUM_MIN_MAG_LINEAR_MIP_POINT
= 0x194,
1095 D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_LINEAR
= 0x195,
1096 D3D11_FILTER_MAXIMUM_ANISOTROPIC
= 0x1d5,
1098 ENUM
!{enum D3D11_FILTER_TYPE
{
1099 D3D11_FILTER_TYPE_POINT
= 0,
1100 D3D11_FILTER_TYPE_LINEAR
= 1,
1102 ENUM
!{enum D3D11_FILTER_REDUCTION_TYPE
{
1103 D3D11_FILTER_REDUCTION_TYPE_STANDARD
= 0,
1104 D3D11_FILTER_REDUCTION_TYPE_COMPARISON
= 1,
1105 D3D11_FILTER_REDUCTION_TYPE_MINIMUM
= 2,
1106 D3D11_FILTER_REDUCTION_TYPE_MAXIMUM
= 3,
1108 pub const D3D11_FILTER_REDUCTION_TYPE_MASK
: DWORD
= 0x3;
1109 pub const D3D11_FILTER_REDUCTION_TYPE_SHIFT
: DWORD
= 7;
1110 pub const D3D11_FILTER_TYPE_MASK
: DWORD
= 0x3;
1111 pub const D3D11_MIN_FILTER_SHIFT
: DWORD
= 4;
1112 pub const D3D11_MAG_FILTER_SHIFT
: DWORD
= 2;
1113 pub const D3D11_MIP_FILTER_SHIFT
: DWORD
= 0;
1114 pub const D3D11_COMPARISON_FILTERING_BIT
: DWORD
= 0x80;
1115 pub const D3D11_ANISOTROPIC_FILTERING_BIT
: DWORD
= 0x40;
1116 ENUM
!{enum D3D11_TEXTURE_ADDRESS_MODE
{
1117 D3D11_TEXTURE_ADDRESS_WRAP
= 1,
1118 D3D11_TEXTURE_ADDRESS_MIRROR
= 2,
1119 D3D11_TEXTURE_ADDRESS_CLAMP
= 3,
1120 D3D11_TEXTURE_ADDRESS_BORDER
= 4,
1121 D3D11_TEXTURE_ADDRESS_MIRROR_ONCE
= 5,
1123 STRUCT
!{struct D3D11_SAMPLER_DESC
{
1124 Filter
: D3D11_FILTER
,
1125 AddressU
: D3D11_TEXTURE_ADDRESS_MODE
,
1126 AddressV
: D3D11_TEXTURE_ADDRESS_MODE
,
1127 AddressW
: D3D11_TEXTURE_ADDRESS_MODE
,
1129 MaxAnisotropy
: UINT
,
1130 ComparisonFunc
: D3D11_COMPARISON_FUNC
,
1131 BorderColor
: [FLOAT
; 4],
1135 RIDL
!{#[uuid(0xda6fea51, 0x564c, 0x4487, 0x98, 0x10, 0xf0, 0xd0, 0xf9, 0xb4, 0xe3, 0xa5)]
1136 interface
ID3D11SamplerState(ID3D11SamplerStateVtbl
): ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {
1138 pDesc
: *mut D3D11_SAMPLER_DESC
,
1141 ENUM
!{enum D3D11_FORMAT_SUPPORT
{
1142 D3D11_FORMAT_SUPPORT_BUFFER
= 0x1,
1143 D3D11_FORMAT_SUPPORT_IA_VERTEX_BUFFER
= 0x2,
1144 D3D11_FORMAT_SUPPORT_IA_INDEX_BUFFER
= 0x4,
1145 D3D11_FORMAT_SUPPORT_SO_BUFFER
= 0x8,
1146 D3D11_FORMAT_SUPPORT_TEXTURE1D
= 0x10,
1147 D3D11_FORMAT_SUPPORT_TEXTURE2D
= 0x20,
1148 D3D11_FORMAT_SUPPORT_TEXTURE3D
= 0x40,
1149 D3D11_FORMAT_SUPPORT_TEXTURECUBE
= 0x80,
1150 D3D11_FORMAT_SUPPORT_SHADER_LOAD
= 0x100,
1151 D3D11_FORMAT_SUPPORT_SHADER_SAMPLE
= 0x200,
1152 D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_COMPARISON
= 0x400,
1153 D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_MONO_TEXT
= 0x800,
1154 D3D11_FORMAT_SUPPORT_MIP
= 0x1000,
1155 D3D11_FORMAT_SUPPORT_MIP_AUTOGEN
= 0x2000,
1156 D3D11_FORMAT_SUPPORT_RENDER_TARGET
= 0x4000,
1157 D3D11_FORMAT_SUPPORT_BLENDABLE
= 0x8000,
1158 D3D11_FORMAT_SUPPORT_DEPTH_STENCIL
= 0x10000,
1159 D3D11_FORMAT_SUPPORT_CPU_LOCKABLE
= 0x20000,
1160 D3D11_FORMAT_SUPPORT_MULTISAMPLE_RESOLVE
= 0x40000,
1161 D3D11_FORMAT_SUPPORT_DISPLAY
= 0x80000,
1162 D3D11_FORMAT_SUPPORT_CAST_WITHIN_BIT_LAYOUT
= 0x100000,
1163 D3D11_FORMAT_SUPPORT_MULTISAMPLE_RENDERTARGET
= 0x200000,
1164 D3D11_FORMAT_SUPPORT_MULTISAMPLE_LOAD
= 0x400000,
1165 D3D11_FORMAT_SUPPORT_SHADER_GATHER
= 0x800000,
1166 D3D11_FORMAT_SUPPORT_BACK_BUFFER_CAST
= 0x1000000,
1167 D3D11_FORMAT_SUPPORT_TYPED_UNORDERED_ACCESS_VIEW
= 0x2000000,
1168 D3D11_FORMAT_SUPPORT_SHADER_GATHER_COMPARISON
= 0x4000000,
1169 D3D11_FORMAT_SUPPORT_DECODER_OUTPUT
= 0x8000000,
1170 D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_OUTPUT
= 0x10000000,
1171 D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_INPUT
= 0x20000000,
1172 D3D11_FORMAT_SUPPORT_VIDEO_ENCODER
= 0x40000000,
1174 ENUM
!{enum D3D11_FORMAT_SUPPORT2
{
1175 D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_ADD
= 0x1,
1176 D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_BITWISE_OPS
= 0x2,
1177 D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_COMPARE_STORE_OR_COMPARE_EXCHANGE
= 0x4,
1178 D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_EXCHANGE
= 0x8,
1179 D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_SIGNED_MIN_OR_MAX
= 0x10,
1180 D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_UNSIGNED_MIN_OR_MAX
= 0x20,
1181 D3D11_FORMAT_SUPPORT2_UAV_TYPED_LOAD
= 0x40,
1182 D3D11_FORMAT_SUPPORT2_UAV_TYPED_STORE
= 0x80,
1183 D3D11_FORMAT_SUPPORT2_OUTPUT_MERGER_LOGIC_OP
= 0x100,
1184 D3D11_FORMAT_SUPPORT2_TILED
= 0x200,
1185 D3D11_FORMAT_SUPPORT2_SHAREABLE
= 0x400,
1186 D3D11_FORMAT_SUPPORT2_MULTIPLANE_OVERLAY
= 0x4000,
1188 RIDL
!{#[uuid(0x4b35d0cd, 0x1e15, 0x4258, 0x9c, 0x98, 0x1b, 0x13, 0x33, 0xf6, 0xdd, 0x3b)]
1189 interface
ID3D11Asynchronous(ID3D11AsynchronousVtbl
): ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {
1190 fn GetDataSize() -> UINT
,
1192 ENUM
!{enum D3D11_ASYNC_GETDATA_FLAG
{
1193 D3D11_ASYNC_GETDATA_DONOTFLUSH
= 0x1,
1195 ENUM
!{enum D3D11_QUERY
{
1196 D3D11_QUERY_EVENT
= 0,
1197 D3D11_QUERY_OCCLUSION
= D3D11_QUERY_EVENT
+ 1u32,
1198 D3D11_QUERY_TIMESTAMP
= D3D11_QUERY_OCCLUSION
+ 1u32,
1199 D3D11_QUERY_TIMESTAMP_DISJOINT
= D3D11_QUERY_TIMESTAMP
+ 1u32,
1200 D3D11_QUERY_PIPELINE_STATISTICS
= D3D11_QUERY_TIMESTAMP_DISJOINT
+ 1u32,
1201 D3D11_QUERY_OCCLUSION_PREDICATE
= D3D11_QUERY_PIPELINE_STATISTICS
+ 1u32,
1202 D3D11_QUERY_SO_STATISTICS
= D3D11_QUERY_OCCLUSION_PREDICATE
+ 1u32,
1203 D3D11_QUERY_SO_OVERFLOW_PREDICATE
= D3D11_QUERY_SO_STATISTICS
+ 1u32,
1204 D3D11_QUERY_SO_STATISTICS_STREAM0
= D3D11_QUERY_SO_OVERFLOW_PREDICATE
+ 1u32,
1205 D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM0
= D3D11_QUERY_SO_STATISTICS_STREAM0
+ 1u32,
1206 D3D11_QUERY_SO_STATISTICS_STREAM1
= D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM0
+ 1u32,
1207 D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM1
= D3D11_QUERY_SO_STATISTICS_STREAM1
+ 1u32,
1208 D3D11_QUERY_SO_STATISTICS_STREAM2
= D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM1
+ 1u32,
1209 D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM2
= D3D11_QUERY_SO_STATISTICS_STREAM2
+ 1u32,
1210 D3D11_QUERY_SO_STATISTICS_STREAM3
= D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM2
+ 1u32,
1211 D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM3
= D3D11_QUERY_SO_STATISTICS_STREAM3
+ 1u32,
1213 ENUM
!{enum D3D11_QUERY_MISC_FLAG
{
1214 D3D11_QUERY_MISC_PREDICATEHINT
= 0x1,
1216 STRUCT
!{struct D3D11_QUERY_DESC
{
1220 RIDL
!{#[uuid(0xd6c00747, 0x87b7, 0x425e, 0xb8, 0x4d, 0x44, 0xd1, 0x08, 0x56, 0x0a, 0xfd)]
1221 interface
ID3D11Query(ID3D11QueryVtbl
): ID3D11Asynchronous(ID3D11AsynchronousVtbl
) {
1223 pDesc
: *mut D3D11_QUERY_DESC
,
1226 RIDL
!{#[uuid(0x9eb576dd, 0x9f77, 0x4d86, 0x81, 0xaa, 0x8b, 0xab, 0x5f, 0xe4, 0x90, 0xe2)]
1227 interface
ID3D11Predicate(ID3D11PredicateVtbl
): ID3D11Query(ID3D11QueryVtbl
) {}
}
1228 STRUCT
!{struct D3D11_QUERY_DATA_TIMESTAMP_DISJOINT
{
1232 STRUCT
!{struct D3D11_QUERY_DATA_PIPELINE_STATISTICS
{
1234 IAPrimitives
: UINT64
,
1235 VSInvocations
: UINT64
,
1236 GSInvocations
: UINT64
,
1237 GSPrimitives
: UINT64
,
1238 CInvocations
: UINT64
,
1239 CPrimitives
: UINT64
,
1240 PSInvocations
: UINT64
,
1241 HSInvocations
: UINT64
,
1242 DSInvocations
: UINT64
,
1243 CSInvocations
: UINT64
,
1245 STRUCT
!{struct D3D11_QUERY_DATA_SO_STATISTICS
{
1246 NumPrimitivesWritten
: UINT64
,
1247 PrimitivesStorageNeeded
: UINT64
,
1249 ENUM
!{enum D3D11_COUNTER
{
1250 D3D11_COUNTER_DEVICE_DEPENDENT_0
= 0x40000000,
1252 ENUM
!{enum D3D11_COUNTER_TYPE
{
1253 D3D11_COUNTER_TYPE_FLOAT32
= 0,
1254 D3D11_COUNTER_TYPE_UINT16
= D3D11_COUNTER_TYPE_FLOAT32
+ 1u32,
1255 D3D11_COUNTER_TYPE_UINT32
= D3D11_COUNTER_TYPE_UINT16
+ 1u32,
1256 D3D11_COUNTER_TYPE_UINT64
= D3D11_COUNTER_TYPE_UINT32
+ 1u32,
1258 STRUCT
!{struct D3D11_COUNTER_DESC
{
1259 Counter
: D3D11_COUNTER
,
1262 STRUCT
!{struct D3D11_COUNTER_INFO
{
1263 LastDeviceDependentCounter
: D3D11_COUNTER
,
1264 NumSimultaneousCounters
: UINT
,
1265 NumDetectableParallelUnits
: UINT8
,
1267 RIDL
!{#[uuid(0x6e8c49fb, 0xa371, 0x4770, 0xb4, 0x40, 0x29, 0x08, 0x60, 0x22, 0xb7, 0x41)]
1268 interface
ID3D11Counter(ID3D11CounterVtbl
): ID3D11Asynchronous(ID3D11AsynchronousVtbl
) {
1270 pDesc
: *mut D3D11_COUNTER_DESC
,
1273 ENUM
!{enum D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS
{
1274 D3D11_STANDARD_MULTISAMPLE_PATTERN
= 0xffffffff,
1275 D3D11_CENTER_MULTISAMPLE_PATTERN
= 0xfffffffe,
1277 ENUM
!{enum D3D11_DEVICE_CONTEXT_TYPE
{
1278 D3D11_DEVICE_CONTEXT_IMMEDIATE
= 0,
1279 D3D11_DEVICE_CONTEXT_DEFERRED
= D3D11_DEVICE_CONTEXT_IMMEDIATE
+ 1u32,
1281 STRUCT
!{struct D3D11_CLASS_INSTANCE_DESC
{
1283 InstanceIndex
: UINT
,
1285 ConstantBuffer
: UINT
,
1286 BaseConstantBufferOffset
: UINT
,
1291 RIDL
!{#[uuid(0xa6cd7faa, 0xb0b7, 0x4a2f, 0x94, 0x36, 0x86, 0x62, 0xa6, 0x57, 0x97, 0xcb)]
1292 interface
ID3D11ClassInstance(ID3D11ClassInstanceVtbl
): ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {
1294 ppLinkage
: *mut *mut ID3D11ClassLinkage
,
1297 pDesc
: *mut D3D11_CLASS_INSTANCE_DESC
,
1300 pInstanceName
: LPSTR
,
1301 pBufferLength
: *mut SIZE_T
,
1305 pBufferLength
: *mut SIZE_T
,
1308 RIDL
!{#[uuid(0xddf57cba, 0x9543, 0x46e4, 0xa1, 0x2b, 0xf2, 0x07, 0xa0, 0xfe, 0x7f, 0xed)]
1309 interface
ID3D11ClassLinkage(ID3D11ClassLinkageVtbl
): ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {
1310 fn GetClassInstance(
1311 GetClassInstance
: LPCSTR
,
1312 InstanceIndex
: UINT
,
1313 ppInstance
: *mut *mut ID3D11ClassInstance
,
1315 fn CreateClassInstance(
1316 pClassTypeName
: LPCSTR
,
1317 ConstantBufferOffset
: UINT
,
1318 ConstantVectorOffset
: UINT
,
1319 TextureOffset
: UINT
,
1320 SamplerOffset
: UINT
,
1321 ppInstance
: *mut *mut ID3D11ClassInstance
,
1324 RIDL
!{#[uuid(0xa24bc4d1, 0x769e, 0x43f7, 0x80, 0x13, 0x98, 0xff, 0x56, 0x6c, 0x18, 0xe2)]
1325 interface
ID3D11CommandList(ID3D11CommandListVtbl
): ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {
1326 fn GetContextFlags() -> UINT
,
1328 ENUM
!{enum D3D11_FEATURE
{
1329 D3D11_FEATURE_THREADING
= 0,
1330 D3D11_FEATURE_DOUBLES
= D3D11_FEATURE_THREADING
+ 1u32,
1331 D3D11_FEATURE_FORMAT_SUPPORT
= D3D11_FEATURE_DOUBLES
+ 1u32,
1332 D3D11_FEATURE_FORMAT_SUPPORT2
= D3D11_FEATURE_FORMAT_SUPPORT
+ 1u32,
1333 D3D11_FEATURE_D3D10_X_HARDWARE_OPTIONS
= D3D11_FEATURE_FORMAT_SUPPORT2
+ 1u32,
1334 D3D11_FEATURE_D3D11_OPTIONS
= D3D11_FEATURE_D3D10_X_HARDWARE_OPTIONS
+ 1u32,
1335 D3D11_FEATURE_ARCHITECTURE_INFO
= D3D11_FEATURE_D3D11_OPTIONS
+ 1u32,
1336 D3D11_FEATURE_D3D9_OPTIONS
= D3D11_FEATURE_ARCHITECTURE_INFO
+ 1u32,
1337 D3D11_FEATURE_SHADER_MIN_PRECISION_SUPPORT
= D3D11_FEATURE_D3D9_OPTIONS
+ 1u32,
1338 D3D11_FEATURE_D3D9_SHADOW_SUPPORT
= D3D11_FEATURE_SHADER_MIN_PRECISION_SUPPORT
+ 1u32,
1339 D3D11_FEATURE_D3D11_OPTIONS1
= D3D11_FEATURE_D3D9_SHADOW_SUPPORT
+ 1u32,
1340 D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT
= D3D11_FEATURE_D3D11_OPTIONS1
+ 1u32,
1341 D3D11_FEATURE_MARKER_SUPPORT
= D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT
+ 1u32,
1342 D3D11_FEATURE_D3D9_OPTIONS1
= D3D11_FEATURE_MARKER_SUPPORT
+ 1u32,
1343 D3D11_FEATURE_D3D11_OPTIONS2
= D3D11_FEATURE_D3D9_OPTIONS1
+ 1u32,
1344 D3D11_FEATURE_D3D11_OPTIONS3
= D3D11_FEATURE_D3D11_OPTIONS2
+ 1u32,
1345 D3D11_FEATURE_GPU_VIRTUAL_ADDRESS_SUPPORT
= D3D11_FEATURE_D3D11_OPTIONS3
+ 1u32,
1347 STRUCT
!{struct D3D11_FEATURE_DATA_THREADING
{
1348 DriverConcurrentCreates
: BOOL
,
1349 DriverCommandLists
: BOOL
,
1351 STRUCT
!{struct D3D11_FEATURE_DATA_DOUBLES
{
1352 DoublePrecisionFloatShaderOps
: BOOL
,
1354 STRUCT
!{struct D3D11_FEATURE_DATA_FORMAT_SUPPORT
{
1355 InFormat
: DXGI_FORMAT
,
1356 OutFormatSupport
: UINT
,
1358 STRUCT
!{struct D3D11_FEATURE_DATA_FORMAT_SUPPORT2
{
1359 InFormat
: DXGI_FORMAT
,
1360 OutFormatSupport2
: UINT
,
1362 STRUCT
!{struct D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS
{
1363 ComputeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x
: BOOL
,
1365 STRUCT
!{struct D3D11_FEATURE_DATA_D3D11_OPTIONS
{
1366 OutputMergerLogicOp
: BOOL
,
1367 UAVOnlyRenderingForcedSampleCount
: BOOL
,
1368 DiscardAPIsSeenByDriver
: BOOL
,
1369 FlagsForUpdateAndCopySeenByDriver
: BOOL
,
1371 CopyWithOverlap
: BOOL
,
1372 ConstantBufferPartialUpdate
: BOOL
,
1373 ConstantBufferOffsetting
: BOOL
,
1374 MapNoOverwriteOnDynamicConstantBuffer
: BOOL
,
1375 MapNoOverwriteOnDynamicBufferSRV
: BOOL
,
1376 MultisampleRTVWithForcedSampleCountOne
: BOOL
,
1377 SAD4ShaderInstructions
: BOOL
,
1378 ExtendedDoublesShaderInstructions
: BOOL
,
1379 ExtendedResourceSharing
: BOOL
,
1381 STRUCT
!{struct D3D11_FEATURE_DATA_ARCHITECTURE_INFO
{
1382 TileBasedDeferredRenderer
: BOOL
,
1384 STRUCT
!{struct D3D11_FEATURE_DATA_D3D9_OPTIONS
{
1385 FullNonPow2TextureSupport
: BOOL
,
1387 STRUCT
!{struct D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT
{
1388 SupportsDepthAsTextureWithLessEqualComparisonFilter
: BOOL
,
1390 ENUM
!{enum D3D11_SHADER_MIN_PRECISION_SUPPORT
{
1391 D3D11_SHADER_MIN_PRECISION_10_BIT
= 0x1,
1392 D3D11_SHADER_MIN_PRECISION_16_BIT
= 0x2,
1394 STRUCT
!{struct D3D11_FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT
{
1395 PixelShaderMinPrecision
: UINT
,
1396 AllOtherShaderStagesMinPrecision
: UINT
,
1398 ENUM
!{enum D3D11_TILED_RESOURCES_TIER
{
1399 D3D11_TILED_RESOURCES_NOT_SUPPORTED
= 0,
1400 D3D11_TILED_RESOURCES_TIER_1
= 1,
1401 D3D11_TILED_RESOURCES_TIER_2
= 2,
1402 D3D11_TILED_RESOURCES_TIER_3
= 3,
1404 STRUCT
!{struct D3D11_FEATURE_DATA_D3D11_OPTIONS1
{
1405 TiledResourcesTier
: D3D11_TILED_RESOURCES_TIER
,
1406 MinMaxFiltering
: BOOL
,
1407 ClearViewAlsoSupportsDepthOnlyFormats
: BOOL
,
1408 MapOnDefaultBuffers
: BOOL
,
1410 STRUCT
!{struct D3D11_FEATURE_DATA_D3D9_SIMPLE_INSTANCING_SUPPORT
{
1411 SimpleInstancingSupported
: BOOL
,
1413 STRUCT
!{struct D3D11_FEATURE_DATA_MARKER_SUPPORT
{
1416 STRUCT
!{struct D3D11_FEATURE_DATA_D3D9_OPTIONS1
{
1417 FullNonPow2TextureSupported
: BOOL
,
1418 DepthAsTextureWithLessEqualComparisonFilterSupported
: BOOL
,
1419 SimpleInstancingSupported
: BOOL
,
1420 TextureCubeFaceRenderTargetWithNonCubeDepthStencilSupported
: BOOL
,
1422 ENUM
!{enum D3D11_CONSERVATIVE_RASTERIZATION_TIER
{
1423 D3D11_CONSERVATIVE_RASTERIZATION_NOT_SUPPORTED
= 0,
1424 D3D11_CONSERVATIVE_RASTERIZATION_TIER_1
= 1,
1425 D3D11_CONSERVATIVE_RASTERIZATION_TIER_2
= 2,
1426 D3D11_CONSERVATIVE_RASTERIZATION_TIER_3
= 3,
1428 STRUCT
!{struct D3D11_FEATURE_DATA_D3D11_OPTIONS2
{
1429 PSSpecifiedStencilRefSupported
: BOOL
,
1430 TypedUAVLoadAdditionalFormats
: BOOL
,
1431 ROVsSupported
: BOOL
,
1432 ConservativeRasterizationTier
: D3D11_CONSERVATIVE_RASTERIZATION_TIER
,
1433 TiledResourcesTier
: D3D11_TILED_RESOURCES_TIER
,
1434 MapOnDefaultTextures
: BOOL
,
1435 StandardSwizzle
: BOOL
,
1436 UnifiedMemoryArchitecture
: BOOL
,
1438 STRUCT
!{struct D3D11_FEATURE_DATA_D3D11_OPTIONS3
{
1439 VPAndRTArrayIndexFromAnyShaderFeedingRasterizer
: BOOL
,
1441 STRUCT
!{struct D3D11_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT
{
1442 MaxGPUVirtualAddressBitsPerResource
: UINT
,
1443 MaxGPUVirtualAddressBitsPerProcess
: UINT
,
1445 RIDL
!{#[uuid(0xc0bfa96c, 0xe089, 0x44fb, 0x8e, 0xaf, 0x26, 0xf8, 0x79, 0x61, 0x90, 0xda)]
1446 interface
ID3D11DeviceContext(ID3D11DeviceContextVtbl
): ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {
1447 fn VSSetConstantBuffers(
1450 ppConstantBuffers
: *const *mut ID3D11Buffer
,
1452 fn PSSetShaderResources(
1455 ppShaderResourceViews
: *const *mut ID3D11ShaderResourceView
,
1458 pPixelShader
: *mut ID3D11PixelShader
,
1459 ppClassInstances
: *const *mut ID3D11ClassInstance
,
1460 NumClassInstances
: UINT
,
1465 ppSamplers
: *const *mut ID3D11SamplerState
,
1468 pVertexShader
: *mut ID3D11VertexShader
,
1469 ppClassInstances
: *const *mut ID3D11ClassInstance
,
1470 NumClassInstances
: UINT
,
1474 StartIndexLocation
: UINT
,
1475 BaseVertexLocation
: INT
,
1479 StartVertexLocation
: UINT
,
1482 pResource
: *mut ID3D11Resource
,
1486 pMappedResource
: *mut D3D11_MAPPED_SUBRESOURCE
,
1489 pResource
: *mut ID3D11Resource
,
1492 fn PSSetConstantBuffers(
1495 ppConstantBuffers
: *const *mut ID3D11Buffer
,
1497 fn IASetInputLayout(
1498 pInputLayout
: *mut ID3D11InputLayout
,
1500 fn IASetVertexBuffers(
1503 ppVertexBuffers
: *const *mut ID3D11Buffer
,
1504 pStrides
: *const UINT
,
1505 pOffsets
: *const UINT
,
1507 fn IASetIndexBuffer(
1508 pIndexBuffer
: *mut ID3D11Buffer
,
1509 Format
: DXGI_FORMAT
,
1512 fn DrawIndexedInstanced(
1513 IndexCountPerInstance
: UINT
,
1514 InstanceCount
: UINT
,
1515 StartIndexLocation
: UINT
,
1516 BaseVertexLocation
: INT
,
1517 StartInstanceLocation
: UINT
,
1520 VertexCountPerInstance
: UINT
,
1521 InstanceCount
: UINT
,
1522 StartVertexLocation
: UINT
,
1523 StartInstanceLocation
: UINT
,
1525 fn GSSetConstantBuffers(
1528 ppConstantBuffers
: *const *mut ID3D11Buffer
,
1531 pShader
: *mut ID3D11GeometryShader
,
1532 ppClassInstances
: *const *mut ID3D11ClassInstance
,
1533 NumClassInstances
: UINT
,
1535 fn IASetPrimitiveTopology(
1536 Topology
: D3D11_PRIMITIVE_TOPOLOGY
,
1538 fn VSSetShaderResources(
1541 ppShaderResourceViews
: *const *mut ID3D11ShaderResourceView
,
1546 ppSamplers
: *const *mut ID3D11SamplerState
,
1549 pAsync
: *mut ID3D11Asynchronous
,
1552 pAsync
: *mut ID3D11Asynchronous
,
1555 pAsync
: *mut ID3D11Asynchronous
,
1561 pPredicate
: *mut ID3D11Predicate
,
1562 PredicateValue
: BOOL
,
1564 fn GSSetShaderResources(
1567 ppShaderResourceViews
: *const *mut ID3D11ShaderResourceView
,
1572 ppSamplers
: *const *mut ID3D11SamplerState
,
1574 fn OMSetRenderTargets(
1576 ppRenderTargetViews
: *const *mut ID3D11RenderTargetView
,
1577 pDepthStencilView
: *mut ID3D11DepthStencilView
,
1579 fn OMSetRenderTargetsAndUnorderedAccessViews(
1581 ppRenderTargetViews
: *const *mut ID3D11RenderTargetView
,
1582 pDepthStencilView
: *mut ID3D11DepthStencilView
,
1585 ppUnorderedAccessViews
: *const *mut ID3D11UnorderedAccessView
,
1586 pUAVInitialCounts
: *const UINT
,
1589 pBlendState
: *mut ID3D11BlendState
,
1590 BlendFactor
: &[FLOAT
; 4],
1593 fn OMSetDepthStencilState(
1594 pDepthStencilState
: *mut ID3D11DepthStencilState
,
1599 ppSOTargets
: *const *mut ID3D11Buffer
,
1600 pOffsets
: *const UINT
,
1602 fn DrawAuto() -> (),
1603 fn DrawIndexedInstancedIndirect(
1604 pBufferForArgs
: *mut ID3D11Buffer
,
1605 AlignedByteOffsetForArgs
: UINT
,
1607 fn DrawInstancedIndirect(
1608 pBufferForArgs
: *mut ID3D11Buffer
,
1609 AlignedByteOffsetForArgs
: UINT
,
1612 ThreadGroupCountX
: UINT
,
1613 ThreadGroupCountY
: UINT
,
1614 ThreadGroupCountZ
: UINT
,
1616 fn DispatchIndirect(
1617 pBufferForArgs
: *mut ID3D11Buffer
,
1618 AlignedByteOffsetForArgs
: UINT
,
1621 pRasterizerState
: *mut ID3D11RasterizerState
,
1625 pViewports
: *const D3D11_VIEWPORT
,
1627 fn RSSetScissorRects(
1629 pRects
: *const D3D11_RECT
,
1631 fn CopySubresourceRegion(
1632 pDstResource
: *mut ID3D11Resource
,
1633 DstSubresource
: UINT
,
1637 pSrcResource
: *mut ID3D11Resource
,
1638 SrcSubresource
: UINT
,
1639 pSrcBox
: *const D3D11_BOX
,
1642 pDstResource
: *mut ID3D11Resource
,
1643 pSrcResource
: *mut ID3D11Resource
,
1645 fn UpdateSubresource(
1646 pDstResource
: *mut ID3D11Resource
,
1647 DstSubresource
: UINT
,
1648 pDstBox
: *const D3D11_BOX
,
1649 pSrcData
: *const c_void
,
1651 SrcDepthPitch
: UINT
,
1653 fn CopyStructureCount(
1654 pDstBuffer
: *mut ID3D11Buffer
,
1655 DstAlignedByteOffset
: UINT
,
1656 pSrcView
: *mut ID3D11UnorderedAccessView
,
1658 fn ClearRenderTargetView(
1659 pRenderTargetView
: *mut ID3D11RenderTargetView
,
1660 ColorRGBA
: &[FLOAT
; 4],
1662 fn ClearUnorderedAccessViewUint(
1663 pUnorderedAccessView
: *mut ID3D11UnorderedAccessView
,
1666 fn ClearUnorderedAccessViewFloat(
1667 pUnorderedAccessView
: *mut ID3D11UnorderedAccessView
,
1668 Values
: &[FLOAT
; 4],
1670 fn ClearDepthStencilView(
1671 pDepthStencilView
: *mut ID3D11DepthStencilView
,
1677 pShaderResourceView
: *mut ID3D11ShaderResourceView
,
1679 fn SetResourceMinLOD(
1680 pResource
: *mut ID3D11Resource
,
1683 fn GetResourceMinLOD(
1684 pResource
: *mut ID3D11Resource
,
1686 fn ResolveSubresource(
1687 pDstResource
: *mut ID3D11Resource
,
1688 DstSubresource
: UINT
,
1689 pSrcResource
: *mut ID3D11Resource
,
1690 SrcSubresource
: UINT
,
1691 Format
: DXGI_FORMAT
,
1693 fn ExecuteCommandList(
1694 pCommandList
: *mut ID3D11CommandList
,
1695 RestoreContextState
: BOOL
,
1697 fn HSSetShaderResources(
1700 ppShaderResourceViews
: *const *mut ID3D11ShaderResourceView
,
1703 pHullShader
: *mut ID3D11HullShader
,
1704 ppClassInstances
: *const *mut ID3D11ClassInstance
,
1705 NumClassInstances
: UINT
,
1710 ppSamplers
: *const *mut ID3D11SamplerState
,
1712 fn HSSetConstantBuffers(
1715 ppConstantBuffers
: *const *mut ID3D11Buffer
,
1717 fn DSSetShaderResources(
1720 ppShaderResourceViews
: *const *mut ID3D11ShaderResourceView
,
1723 pDomainShader
: *mut ID3D11DomainShader
,
1724 ppClassInstances
: *const *mut ID3D11ClassInstance
,
1725 NumClassInstances
: UINT
,
1730 ppSamplers
: *const *mut ID3D11SamplerState
,
1732 fn DSSetConstantBuffers(
1735 ppConstantBuffers
: *const *mut ID3D11Buffer
,
1737 fn CSSetShaderResources(
1740 ppShaderResourceViews
: *const *mut ID3D11ShaderResourceView
,
1742 fn CSSetUnorderedAccessViews(
1745 ppUnorderedAccessViews
: *const *mut ID3D11UnorderedAccessView
,
1746 pUAVInitialCounts
: *const UINT
,
1749 pComputeShader
: *mut ID3D11ComputeShader
,
1750 ppClassInstances
: *const *mut ID3D11ClassInstance
,
1751 NumClassInstances
: UINT
,
1756 ppSamplers
: *const *mut ID3D11SamplerState
,
1758 fn CSSetConstantBuffers(
1761 ppConstantBuffers
: *const *mut ID3D11Buffer
,
1763 fn VSGetConstantBuffers(
1766 ppConstantBuffers
: *mut *mut ID3D11Buffer
,
1768 fn PSGetShaderResources(
1771 ppShaderResourceViews
: *mut *mut ID3D11ShaderResourceView
,
1774 ppPixelShader
: *mut *mut ID3D11PixelShader
,
1775 ppClassInstances
: *mut *mut ID3D11ClassInstance
,
1776 pNumClassInstances
: *mut UINT
,
1781 ppSamplers
: *mut *mut ID3D11SamplerState
,
1784 ppVertexShader
: *mut *mut ID3D11VertexShader
,
1785 ppClassInstances
: *mut *mut ID3D11ClassInstance
,
1786 pNumClassInstances
: *mut UINT
,
1788 fn PSGetConstantBuffers(
1791 ppConstantBuffers
: *mut *mut ID3D11Buffer
,
1793 fn IAGetInputLayout(
1794 ppInputLayout
: *mut *mut ID3D11InputLayout
,
1796 fn IAGetVertexBuffers(
1799 ppVertexBuffers
: *mut *mut ID3D11Buffer
,
1800 pStrides
: *mut UINT
,
1801 pOffsets
: *mut UINT
,
1803 fn IAGetIndexBuffer(
1804 pIndexBuffer
: *mut *mut ID3D11Buffer
,
1805 Format
: *mut DXGI_FORMAT
,
1808 fn GSGetConstantBuffers(
1811 ppConstantBuffers
: *mut *mut ID3D11Buffer
,
1814 ppGeometryShader
: *mut *mut ID3D11GeometryShader
,
1815 ppClassInstances
: *mut *mut ID3D11ClassInstance
,
1816 pNumClassInstances
: *mut UINT
,
1818 fn IAGetPrimitiveTopology(
1819 pTopology
: *mut D3D11_PRIMITIVE_TOPOLOGY
,
1821 fn VSGetShaderResources(
1824 ppShaderResourceViews
: *mut *mut ID3D11ShaderResourceView
,
1829 ppSamplers
: *mut *mut ID3D11SamplerState
,
1832 ppPredicate
: *mut *mut ID3D11Predicate
,
1833 pPredicateValue
: *mut BOOL
,
1835 fn GSGetShaderResources(
1838 ppShaderResourceViews
: *mut *mut ID3D11ShaderResourceView
,
1843 ppSamplers
: *mut *mut ID3D11SamplerState
,
1845 fn OMGetRenderTargets(
1847 ppRenderTargetViews
: *mut *mut ID3D11RenderTargetView
,
1848 ppDepthStencilView
: *mut *mut ID3D11DepthStencilView
,
1850 fn OMGetRenderTargetsAndUnorderedAccessViews(
1852 ppRenderTargetViews
: *mut *mut ID3D11RenderTargetView
,
1853 ppDepthStencilView
: *mut *mut ID3D11DepthStencilView
,
1855 ppUnorderedAccessViews
: *mut *mut ID3D11UnorderedAccessView
,
1858 ppBlendState
: *mut *mut ID3D11BlendState
,
1859 BlendFactor
: &mut [FLOAT
; 4],
1860 pSampleMask
: *mut UINT
,
1862 fn OMGetDepthStencilState(
1863 ppDepthStencilState
: *mut *mut ID3D11DepthStencilState
,
1864 pStencilRef
: *mut UINT
,
1868 ppSOTargets
: *mut *mut ID3D11Buffer
,
1871 ppRasterizerState
: *mut *mut ID3D11RasterizerState
,
1874 pNumViewports
: *mut UINT
,
1875 pViewports
: *mut D3D11_VIEWPORT
,
1877 fn RSGetScissorRects(
1878 pNumRects
: *mut UINT
,
1879 pRects
: *mut D3D11_RECT
,
1881 fn HSGetShaderResources(
1884 ppShaderResourceViews
: *mut *mut ID3D11ShaderResourceView
,
1887 ppHullShader
: *mut *mut ID3D11HullShader
,
1888 ppClassInstances
: *mut *mut ID3D11ClassInstance
,
1889 pNumClassInstances
: *mut UINT
,
1894 ppSamplers
: *mut *mut ID3D11SamplerState
,
1896 fn HSGetConstantBuffers(
1899 ppConstantBuffers
: *mut *mut ID3D11Buffer
,
1901 fn DSGetShaderResources(
1904 ppShaderResourceViews
: *mut *mut ID3D11ShaderResourceView
,
1907 ppDomainShader
: *mut *mut ID3D11DomainShader
,
1908 ppClassInstances
: *mut *mut ID3D11ClassInstance
,
1909 pNumClassInstances
: *mut UINT
,
1914 ppSamplers
: *mut *mut ID3D11SamplerState
,
1916 fn DSGetConstantBuffers(
1919 ppConstantBuffers
: *mut *mut ID3D11Buffer
,
1921 fn CSGetShaderResources(
1924 ppShaderResourceViews
: *mut *mut ID3D11ShaderResourceView
,
1926 fn CSGetUnorderedAccessViews(
1929 ppUnorderedAccessViews
: *mut *mut ID3D11UnorderedAccessView
,
1932 ppComputeShader
: *mut *mut ID3D11ComputeShader
,
1933 ppClassInstances
: *mut *mut ID3D11ClassInstance
,
1934 pNumClassInstances
: *mut UINT
,
1939 ppSamplers
: *mut *mut ID3D11SamplerState
,
1941 fn CSGetConstantBuffers(
1944 ppConstantBuffers
: *mut *mut ID3D11Buffer
,
1946 fn ClearState() -> (),
1948 fn GetType() -> D3D11_DEVICE_CONTEXT_TYPE
,
1949 fn GetContextFlags() -> UINT
,
1950 fn FinishCommandList(
1951 RestoreDeferredContextState
: BOOL
,
1952 ppCommandList
: *mut *mut ID3D11CommandList
,
1955 DEFINE_GUID
!{D3D11_DECODER_PROFILE_MPEG2_MOCOMP
,
1956 0xe6a9f44b, 0x61b0, 0x4563, 0x9e, 0xa4, 0x63, 0xd2, 0xa3, 0xc6, 0xfe, 0x66}
1957 DEFINE_GUID
!{D3D11_DECODER_PROFILE_MPEG2_IDCT
,
1958 0xbf22ad00, 0x03ea, 0x4690, 0x80, 0x77, 0x47, 0x33, 0x46, 0x20, 0x9b, 0x7e}
1959 DEFINE_GUID
!{D3D11_DECODER_PROFILE_MPEG2_VLD
,
1960 0xee27417f, 0x5e28, 0x4e65, 0xbe, 0xea, 0x1d, 0x26, 0xb5, 0x08, 0xad, 0xc9}
1961 DEFINE_GUID
!{D3D11_DECODER_PROFILE_MPEG1_VLD
,
1962 0x6f3ec719, 0x3735, 0x42cc, 0x80, 0x63, 0x65, 0xcc, 0x3c, 0xb3, 0x66, 0x16}
1963 DEFINE_GUID
!{D3D11_DECODER_PROFILE_MPEG2and1_VLD
,
1964 0x86695f12, 0x340e, 0x4f04, 0x9f, 0xd3, 0x92, 0x53, 0xdd, 0x32, 0x74, 0x60}
1965 DEFINE_GUID
!{D3D11_DECODER_PROFILE_H264_MOCOMP_NOFGT
,
1966 0x1b81be64, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5}
1967 DEFINE_GUID
!{D3D11_DECODER_PROFILE_H264_MOCOMP_FGT
,
1968 0x1b81be65, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5}
1969 DEFINE_GUID
!{D3D11_DECODER_PROFILE_H264_IDCT_NOFGT
,
1970 0x1b81be66, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5}
1971 DEFINE_GUID
!{D3D11_DECODER_PROFILE_H264_IDCT_FGT
,
1972 0x1b81be67, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5}
1973 DEFINE_GUID
!{D3D11_DECODER_PROFILE_H264_VLD_NOFGT
,
1974 0x1b81be68, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5}
1975 DEFINE_GUID
!{D3D11_DECODER_PROFILE_H264_VLD_FGT
,
1976 0x1b81be69, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5}
1977 DEFINE_GUID
!{D3D11_DECODER_PROFILE_H264_VLD_WITHFMOASO_NOFGT
,
1978 0xd5f04ff9, 0x3418, 0x45d8, 0x95, 0x61, 0x32, 0xa7, 0x6a, 0xae, 0x2d, 0xdd}
1979 DEFINE_GUID
!{D3D11_DECODER_PROFILE_H264_VLD_STEREO_PROGRESSIVE_NOFGT
,
1980 0xd79be8da, 0x0cf1, 0x4c81, 0xb8, 0x2a, 0x69, 0xa4, 0xe2, 0x36, 0xf4, 0x3d}
1981 DEFINE_GUID
!{D3D11_DECODER_PROFILE_H264_VLD_STEREO_NOFGT
,
1982 0xf9aaccbb, 0xc2b6, 0x4cfc, 0x87, 0x79, 0x57, 0x07, 0xb1, 0x76, 0x05, 0x52}
1983 DEFINE_GUID
!{D3D11_DECODER_PROFILE_H264_VLD_MULTIVIEW_NOFGT
,
1984 0x705b9d82, 0x76cf, 0x49d6, 0xb7, 0xe6, 0xac, 0x88, 0x72, 0xdb, 0x01, 0x3c}
1985 DEFINE_GUID
!{D3D11_DECODER_PROFILE_WMV8_POSTPROC
,
1986 0x1b81be80, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5}
1987 DEFINE_GUID
!{D3D11_DECODER_PROFILE_WMV8_MOCOMP
,
1988 0x1b81be81, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5}
1989 DEFINE_GUID
!{D3D11_DECODER_PROFILE_WMV9_POSTPROC
,
1990 0x1b81be90, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5}
1991 DEFINE_GUID
!{D3D11_DECODER_PROFILE_WMV9_MOCOMP
,
1992 0x1b81be91, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5}
1993 DEFINE_GUID
!{D3D11_DECODER_PROFILE_WMV9_IDCT
,
1994 0x1b81be94, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5}
1995 DEFINE_GUID
!{D3D11_DECODER_PROFILE_VC1_POSTPROC
,
1996 0x1b81bea0, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5}
1997 DEFINE_GUID
!{D3D11_DECODER_PROFILE_VC1_MOCOMP
,
1998 0x1b81bea1, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5}
1999 DEFINE_GUID
!{D3D11_DECODER_PROFILE_VC1_IDCT
,
2000 0x1b81bea2, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5}
2001 DEFINE_GUID
!{D3D11_DECODER_PROFILE_VC1_VLD
,
2002 0x1b81bea3, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5}
2003 DEFINE_GUID
!{D3D11_DECODER_PROFILE_VC1_D2010
,
2004 0x1b81bea4, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5}
2005 DEFINE_GUID
!{D3D11_DECODER_PROFILE_MPEG4PT2_VLD_SIMPLE
,
2006 0xefd64d74, 0xc9e8, 0x41d7, 0xa5, 0xe9, 0xe9, 0xb0, 0xe3, 0x9f, 0xa3, 0x19}
2007 DEFINE_GUID
!{D3D11_DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_NOGMC
,
2008 0xed418a9f, 0x010d, 0x4eda, 0x9a, 0xe3, 0x9a, 0x65, 0x35, 0x8d, 0x8d, 0x2e}
2009 DEFINE_GUID
!{D3D11_DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_GMC
,
2010 0xab998b5b, 0x4258, 0x44a9, 0x9f, 0xeb, 0x94, 0xe5, 0x97, 0xa6, 0xba, 0xae}
2011 DEFINE_GUID
!{D3D11_DECODER_PROFILE_HEVC_VLD_MAIN
,
2012 0x5b11d51b, 0x2f4c, 0x4452, 0xbc, 0xc3, 0x09, 0xf2, 0xa1, 0x16, 0x0c, 0xc0}
2013 DEFINE_GUID
!{D3D11_DECODER_PROFILE_HEVC_VLD_MAIN10
,
2014 0x107af0e0, 0xef1a, 0x4d19, 0xab, 0xa8, 0x67, 0xa1, 0x63, 0x07, 0x3d, 0x13}
2015 DEFINE_GUID
!{D3D11_DECODER_PROFILE_VP9_VLD_PROFILE0
,
2016 0x463707f8, 0xa1d0, 0x4585, 0x87, 0x6d, 0x83, 0xaa, 0x6d, 0x60, 0xb8, 0x9e}
2017 DEFINE_GUID
!{D3D11_DECODER_PROFILE_VP8_VLD
,
2018 0x90b899ea, 0x3a62, 0x4705, 0x88, 0xb3, 0x8d, 0xf0, 0x4b, 0x27, 0x44, 0xe7}
2019 STRUCT
!{struct D3D11_VIDEO_DECODER_DESC
{
2023 OutputFormat
: DXGI_FORMAT
,
2025 STRUCT
!{struct D3D11_VIDEO_DECODER_CONFIG
{
2026 guidConfigBitstreamEncryption
: GUID
,
2027 guidConfigMBcontrolEncryption
: GUID
,
2028 guidConfigResidDiffEncryption
: GUID
,
2029 ConfigBitstreamRaw
: UINT
,
2030 ConfigMBcontrolRasterOrder
: UINT
,
2031 ConfigResidDiffHost
: UINT
,
2032 ConfigSpatialResid8
: UINT
,
2033 ConfigResid8Subtraction
: UINT
,
2034 ConfigSpatialHost8or9Clipping
: UINT
,
2035 ConfigSpatialResidInterleaved
: UINT
,
2036 ConfigIntraResidUnsigned
: UINT
,
2037 ConfigResidDiffAccelerator
: UINT
,
2038 ConfigHostInverseScan
: UINT
,
2039 ConfigSpecificIDCT
: UINT
,
2040 Config4GroupedCoefs
: UINT
,
2041 ConfigMinRenderTargetBuffCount
: USHORT
,
2042 ConfigDecoderSpecific
: USHORT
,
2044 ENUM
!{enum D3D11_VIDEO_DECODER_BUFFER_TYPE
{
2045 D3D11_VIDEO_DECODER_BUFFER_PICTURE_PARAMETERS
= 0,
2046 D3D11_VIDEO_DECODER_BUFFER_MACROBLOCK_CONTROL
= 1,
2047 D3D11_VIDEO_DECODER_BUFFER_RESIDUAL_DIFFERENCE
= 2,
2048 D3D11_VIDEO_DECODER_BUFFER_DEBLOCKING_CONTROL
= 3,
2049 D3D11_VIDEO_DECODER_BUFFER_INVERSE_QUANTIZATION_MATRIX
= 4,
2050 D3D11_VIDEO_DECODER_BUFFER_SLICE_CONTROL
= 5,
2051 D3D11_VIDEO_DECODER_BUFFER_BITSTREAM
= 6,
2052 D3D11_VIDEO_DECODER_BUFFER_MOTION_VECTOR
= 7,
2053 D3D11_VIDEO_DECODER_BUFFER_FILM_GRAIN
= 8,
2055 STRUCT
!{struct D3D11_AES_CTR_IV
{
2059 STRUCT
!{struct D3D11_ENCRYPTED_BLOCK_INFO
{
2060 NumEncryptedBytesAtBeginning
: UINT
,
2061 NumBytesInSkipPattern
: UINT
,
2062 NumBytesInEncryptPattern
: UINT
,
2064 STRUCT
!{struct D3D11_VIDEO_DECODER_BUFFER_DESC
{
2065 BufferType
: D3D11_VIDEO_DECODER_BUFFER_TYPE
,
2069 FirstMBaddress
: UINT
,
2070 NumMBsInBuffer
: UINT
,
2077 PartialEncryption
: BOOL
,
2078 EncryptedBlockInfo
: D3D11_ENCRYPTED_BLOCK_INFO
,
2080 STRUCT
!{struct D3D11_VIDEO_DECODER_EXTENSION
{
2082 pPrivateInputData
: *mut c_void
,
2083 PrivateInputDataSize
: UINT
,
2084 pPrivateOutputData
: *mut c_void
,
2085 PrivateOutputDataSize
: UINT
,
2086 ResourceCount
: UINT
,
2087 ppResourceList
: *mut *mut ID3D11Resource
,
2089 RIDL
!{#[uuid(0x3c9c5b51, 0x995d, 0x48d1, 0x9b, 0x8d, 0xfa, 0x5c, 0xae, 0xde, 0xd6, 0x5c)]
2090 interface
ID3D11VideoDecoder(ID3D11VideoDecoderVtbl
): ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {
2091 fn GetCreationParameters(
2092 pVideoDesc
: *mut D3D11_VIDEO_DECODER_DESC
,
2093 pConfig
: *mut D3D11_VIDEO_DECODER_CONFIG
,
2096 pDriverHandle
: *mut HANDLE
,
2099 ENUM
!{enum D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT
{
2100 D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_INPUT
= 0x1,
2101 D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_OUTPUT
= 0x2,
2103 ENUM
!{enum D3D11_VIDEO_PROCESSOR_DEVICE_CAPS
{
2104 D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_LINEAR_SPACE
= 0x1,
2105 D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_xvYCC
= 0x2,
2106 D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_RGB_RANGE_CONVERSION
= 0x4,
2107 D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_YCbCr_MATRIX_CONVERSION
= 0x8,
2108 D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_NOMINAL_RANGE
= 0x10,
2110 ENUM
!{enum D3D11_VIDEO_PROCESSOR_FEATURE_CAPS
{
2111 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_FILL
= 0x1,
2112 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_CONSTRICTION
= 0x2,
2113 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_LUMA_KEY
= 0x4,
2114 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_PALETTE
= 0x8,
2115 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_LEGACY
= 0x10,
2116 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_STEREO
= 0x20,
2117 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ROTATION
= 0x40,
2118 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_STREAM
= 0x80,
2119 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_PIXEL_ASPECT_RATIO
= 0x100,
2120 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_MIRROR
= 0x200,
2121 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_SHADER_USAGE
= 0x400,
2123 ENUM
!{enum D3D11_VIDEO_PROCESSOR_FILTER_CAPS
{
2124 D3D11_VIDEO_PROCESSOR_FILTER_CAPS_BRIGHTNESS
= 0x1,
2125 D3D11_VIDEO_PROCESSOR_FILTER_CAPS_CONTRAST
= 0x2,
2126 D3D11_VIDEO_PROCESSOR_FILTER_CAPS_HUE
= 0x4,
2127 D3D11_VIDEO_PROCESSOR_FILTER_CAPS_SATURATION
= 0x8,
2128 D3D11_VIDEO_PROCESSOR_FILTER_CAPS_NOISE_REDUCTION
= 0x10,
2129 D3D11_VIDEO_PROCESSOR_FILTER_CAPS_EDGE_ENHANCEMENT
= 0x20,
2130 D3D11_VIDEO_PROCESSOR_FILTER_CAPS_ANAMORPHIC_SCALING
= 0x40,
2131 D3D11_VIDEO_PROCESSOR_FILTER_CAPS_STEREO_ADJUSTMENT
= 0x80,
2133 ENUM
!{enum D3D11_VIDEO_PROCESSOR_FORMAT_CAPS
{
2134 D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_INTERLACED
= 0x1,
2135 D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_PROCAMP
= 0x2,
2136 D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_LUMA_KEY
= 0x4,
2137 D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_PALETTE_INTERLACED
= 0x8,
2139 ENUM
!{enum D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS
{
2140 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_DENOISE
= 0x1,
2141 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_DERINGING
= 0x2,
2142 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_EDGE_ENHANCEMENT
= 0x4,
2143 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_COLOR_CORRECTION
= 0x8,
2144 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_FLESH_TONE_MAPPING
= 0x10,
2145 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_IMAGE_STABILIZATION
= 0x20,
2146 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_SUPER_RESOLUTION
= 0x40,
2147 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_ANAMORPHIC_SCALING
= 0x80,
2149 ENUM
!{enum D3D11_VIDEO_PROCESSOR_STEREO_CAPS
{
2150 D3D11_VIDEO_PROCESSOR_STEREO_CAPS_MONO_OFFSET
= 0x1,
2151 D3D11_VIDEO_PROCESSOR_STEREO_CAPS_ROW_INTERLEAVED
= 0x2,
2152 D3D11_VIDEO_PROCESSOR_STEREO_CAPS_COLUMN_INTERLEAVED
= 0x4,
2153 D3D11_VIDEO_PROCESSOR_STEREO_CAPS_CHECKERBOARD
= 0x8,
2154 D3D11_VIDEO_PROCESSOR_STEREO_CAPS_FLIP_MODE
= 0x10,
2156 STRUCT
!{struct D3D11_VIDEO_PROCESSOR_CAPS
{
2160 InputFormatCaps
: UINT
,
2161 AutoStreamCaps
: UINT
,
2163 RateConversionCapsCount
: UINT
,
2164 MaxInputStreams
: UINT
,
2165 MaxStreamStates
: UINT
,
2167 ENUM
!{enum D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS
{
2168 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_BLEND
= 0x1,
2169 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_BOB
= 0x2,
2170 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_ADAPTIVE
= 0x4,
2171 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_MOTION_COMPENSATION
= 0x8,
2172 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_INVERSE_TELECINE
= 0x10,
2173 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_FRAME_RATE_CONVERSION
= 0x20,
2175 ENUM
!{enum D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS
{
2176 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_32
= 0x1,
2177 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_22
= 0x2,
2178 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_2224
= 0x4,
2179 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_2332
= 0x8,
2180 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_32322
= 0x10,
2181 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_55
= 0x20,
2182 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_64
= 0x40,
2183 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_87
= 0x80,
2184 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_222222222223
= 0x100,
2185 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_OTHER
= 0x80000000,
2187 STRUCT
!{struct D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS
{
2190 ProcessorCaps
: UINT
,
2191 ITelecineCaps
: UINT
,
2192 CustomRateCount
: UINT
,
2194 ENUM
!{enum D3D11_CONTENT_PROTECTION_CAPS
{
2195 D3D11_CONTENT_PROTECTION_CAPS_SOFTWARE
= 0x1,
2196 D3D11_CONTENT_PROTECTION_CAPS_HARDWARE
= 0x2,
2197 D3D11_CONTENT_PROTECTION_CAPS_PROTECTION_ALWAYS_ON
= 0x4,
2198 D3D11_CONTENT_PROTECTION_CAPS_PARTIAL_DECRYPTION
= 0x8,
2199 D3D11_CONTENT_PROTECTION_CAPS_CONTENT_KEY
= 0x10,
2200 D3D11_CONTENT_PROTECTION_CAPS_FRESHEN_SESSION_KEY
= 0x20,
2201 D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK
= 0x40,
2202 D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK_KEY
= 0x80,
2203 D3D11_CONTENT_PROTECTION_CAPS_SEQUENTIAL_CTR_IV
= 0x100,
2204 D3D11_CONTENT_PROTECTION_CAPS_ENCRYPT_SLICEDATA_ONLY
= 0x200,
2205 D3D11_CONTENT_PROTECTION_CAPS_DECRYPTION_BLT
= 0x400,
2206 D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_PROTECT_UNCOMPRESSED
= 0x800,
2207 D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_PROTECTED_MEMORY_PAGEABLE
= 0x1000,
2208 D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_TEARDOWN
= 0x2000,
2209 D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_DRM_COMMUNICATION
= 0x4000,
2211 DEFINE_GUID
!{D3D11_CRYPTO_TYPE_AES128_CTR
,
2212 0x9b6bd711, 0x4f74, 0x41c9, 0x9e, 0x7b, 0x0b, 0xe2, 0xd7, 0xd9, 0x3b, 0x4f}
2213 DEFINE_GUID
!{D3D11_DECODER_ENCRYPTION_HW_CENC
,
2214 0x89d6ac4f, 0x09f2, 0x4229, 0xb2, 0xcd, 0x37, 0x74, 0x0a, 0x6d, 0xfd, 0x81}
2215 DEFINE_GUID
!{D3D11_KEY_EXCHANGE_HW_PROTECTION
,
2216 0xb1170d8a, 0x628d, 0x4da3, 0xad, 0x3b, 0x82, 0xdd, 0xb0, 0x8b, 0x49, 0x70}
2217 STRUCT
!{struct D3D11_VIDEO_CONTENT_PROTECTION_CAPS
{
2219 KeyExchangeTypeCount
: UINT
,
2220 BlockAlignmentSize
: UINT
,
2221 ProtectedMemorySize
: ULONGLONG
,
2223 STRUCT
!{struct D3D11_VIDEO_PROCESSOR_CUSTOM_RATE
{
2224 CustomRate
: DXGI_RATIONAL
,
2226 InputInterlaced
: BOOL
,
2227 InputFramesOrFields
: UINT
,
2229 ENUM
!{enum D3D11_VIDEO_PROCESSOR_FILTER
{
2230 D3D11_VIDEO_PROCESSOR_FILTER_BRIGHTNESS
= 0,
2231 D3D11_VIDEO_PROCESSOR_FILTER_CONTRAST
= 1,
2232 D3D11_VIDEO_PROCESSOR_FILTER_HUE
= 2,
2233 D3D11_VIDEO_PROCESSOR_FILTER_SATURATION
= 3,
2234 D3D11_VIDEO_PROCESSOR_FILTER_NOISE_REDUCTION
= 4,
2235 D3D11_VIDEO_PROCESSOR_FILTER_EDGE_ENHANCEMENT
= 5,
2236 D3D11_VIDEO_PROCESSOR_FILTER_ANAMORPHIC_SCALING
= 6,
2237 D3D11_VIDEO_PROCESSOR_FILTER_STEREO_ADJUSTMENT
= 7,
2239 STRUCT
!{struct D3D11_VIDEO_PROCESSOR_FILTER_RANGE
{
2243 Multiplier
: c_float
,
2245 ENUM
!{enum D3D11_VIDEO_FRAME_FORMAT
{
2246 D3D11_VIDEO_FRAME_FORMAT_PROGRESSIVE
= 0,
2247 D3D11_VIDEO_FRAME_FORMAT_INTERLACED_TOP_FIELD_FIRST
= 1,
2248 D3D11_VIDEO_FRAME_FORMAT_INTERLACED_BOTTOM_FIELD_FIRST
= 2,
2250 ENUM
!{enum D3D11_VIDEO_USAGE
{
2251 D3D11_VIDEO_USAGE_PLAYBACK_NORMAL
= 0,
2252 D3D11_VIDEO_USAGE_OPTIMAL_SPEED
= 1,
2253 D3D11_VIDEO_USAGE_OPTIMAL_QUALITY
= 2,
2255 STRUCT
!{struct D3D11_VIDEO_PROCESSOR_CONTENT_DESC
{
2256 InputFrameFormat
: D3D11_VIDEO_FRAME_FORMAT
,
2257 InputFrameRate
: DXGI_RATIONAL
,
2260 OutputFrameRate
: DXGI_RATIONAL
,
2263 Usage
: D3D11_VIDEO_USAGE
,
2265 RIDL
!{#[uuid(0x31627037, 0x53ab, 0x4200, 0x90, 0x61, 0x05, 0xfa, 0xa9, 0xab, 0x45, 0xf9)]
2266 interface
ID3D11VideoProcessorEnumerator(ID3D11VideoProcessorEnumeratorVtbl
):
2267 ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {
2268 fn GetVideoProcessorContentDesc(
2269 pContentDesc
: *mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC
,
2271 fn CheckVideoProcessorFormat(
2272 Format
: DXGI_FORMAT
,
2275 fn GetVideoProcessorCaps(
2276 pCaps
: *mut D3D11_VIDEO_PROCESSOR_CAPS
,
2278 fn GetVideoProcessorRateConversionCaps(
2280 pCaps
: *mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS
,
2282 fn GetVideoProcessorCustomRate(
2284 CustomRateIndex
: UINT
,
2285 pRate
: *mut D3D11_VIDEO_PROCESSOR_CUSTOM_RATE
,
2287 fn GetVideoProcessorFilterRange(
2288 Filter
: D3D11_VIDEO_PROCESSOR_FILTER
,
2289 Range
: *mut D3D11_VIDEO_PROCESSOR_FILTER_RANGE
,
2292 STRUCT
!{struct D3D11_VIDEO_COLOR_RGBA
{
2298 STRUCT
!{struct D3D11_VIDEO_COLOR_YCbCrA
{
2304 UNION
!{union D3D11_VIDEO_COLOR
{
2306 YCbCr YCbCr_mut
: D3D11_VIDEO_COLOR_YCbCrA
,
2307 RGBA RGBA_mut
: D3D11_VIDEO_COLOR_RGBA
,
2309 ENUM
!{enum D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE
{
2310 D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_UNDEFINED
= 0,
2311 D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_16_235
= 1,
2312 D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_0_255
= 2,
2314 STRUCT
!{struct D3D11_VIDEO_PROCESSOR_COLOR_SPACE
{
2317 BITFIELD
!{D3D11_VIDEO_PROCESSOR_COLOR_SPACE bitfield
: UINT
[
2318 Usage set_Usage
[0..1],
2319 RGB_Range set_RGB_Range
[1..2],
2320 YCbCr_Matrix set_YCbCr_Matrix
[2..3],
2321 YCbCr_xvYCC set_YCbCr_xvYCC
[3..4],
2322 Nominal_Range set_Nominal_Range
[4..6],
2324 ENUM
!{enum D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE
{
2325 D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_OPAQUE
= 0,
2326 D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_BACKGROUND
= 1,
2327 D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_DESTINATION
= 2,
2328 D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_SOURCE_STREAM
= 3,
2330 ENUM
!{enum D3D11_VIDEO_PROCESSOR_OUTPUT_RATE
{
2331 D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_NORMAL
= 0,
2332 D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_HALF
= 1,
2333 D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_CUSTOM
= 2,
2335 ENUM
!{enum D3D11_VIDEO_PROCESSOR_STEREO_FORMAT
{
2336 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO
= 0,
2337 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_HORIZONTAL
= 1,
2338 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_VERTICAL
= 2,
2339 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_SEPARATE
= 3,
2340 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO_OFFSET
= 4,
2341 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_ROW_INTERLEAVED
= 5,
2342 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_COLUMN_INTERLEAVED
= 6,
2343 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_CHECKERBOARD
= 7,
2345 ENUM
!{enum D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE
{
2346 D3D11_VIDEO_PROCESSOR_STEREO_FLIP_NONE
= 0,
2347 D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME0
= 1,
2348 D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME1
= 2,
2350 ENUM
!{enum D3D11_VIDEO_PROCESSOR_ROTATION
{
2351 D3D11_VIDEO_PROCESSOR_ROTATION_IDENTITY
= 0,
2352 D3D11_VIDEO_PROCESSOR_ROTATION_90
= 1,
2353 D3D11_VIDEO_PROCESSOR_ROTATION_180
= 2,
2354 D3D11_VIDEO_PROCESSOR_ROTATION_270
= 3,
2356 STRUCT
!{struct D3D11_VIDEO_PROCESSOR_STREAM
{
2359 InputFrameOrField
: UINT
,
2362 ppPastSurfaces
: *mut *mut ID3D11VideoProcessorInputView
,
2363 pInputSurface
: *mut ID3D11VideoProcessorInputView
,
2364 ppFutureSurfaces
: *mut *mut ID3D11VideoProcessorInputView
,
2365 ppPastSurfacesRight
: *mut *mut ID3D11VideoProcessorInputView
,
2366 pInputSurfaceRight
: *mut ID3D11VideoProcessorInputView
,
2367 ppFutureSurfacesRight
: *mut *mut ID3D11VideoProcessorInputView
,
2369 RIDL
!{#[uuid(0x1d7b0652, 0x185f, 0x41c6, 0x85, 0xce, 0x0c, 0x5b, 0xe3, 0xd4, 0xae, 0x6c)]
2370 interface
ID3D11VideoProcessor(ID3D11VideoProcessorVtbl
):
2371 ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {
2373 pDesc
: *mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC
,
2375 fn GetRateConversionCaps(
2376 pCaps
: *mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS
,
2379 STRUCT
!{struct D3D11_OMAC
{
2382 ENUM
!{enum D3D11_AUTHENTICATED_CHANNEL_TYPE
{
2383 D3D11_AUTHENTICATED_CHANNEL_D3D11
= 1,
2384 D3D11_AUTHENTICATED_CHANNEL_DRIVER_SOFTWARE
= 2,
2385 D3D11_AUTHENTICATED_CHANNEL_DRIVER_HARDWARE
= 3,
2387 RIDL
!{#[uuid(0x3015a308, 0xdcbd, 0x47aa, 0xa7, 0x47, 0x19, 0x24, 0x86, 0xd1, 0x4d, 0x4a)]
2388 interface
ID3D11AuthenticatedChannel(ID3D11AuthenticatedChannelVtbl
):
2389 ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {
2390 fn GetCertificateSize(
2391 pCertificateSize
: *mut UINT
,
2394 CertificateSize
: UINT
,
2395 pCertificate
: *mut BYTE
,
2397 fn GetChannelHandle(
2398 pChannelHandle
: *mut HANDLE
,
2401 DEFINE_GUID
!{D3D11_AUTHENTICATED_QUERY_PROTECTION
,
2402 0xa84eb584, 0xc495, 0x48aa, 0xb9, 0x4d, 0x8b, 0xd2, 0xd6, 0xfb, 0xce, 0x05}
2403 DEFINE_GUID
!{D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE
,
2404 0xbc1b18a5, 0xb1fb, 0x42ab, 0xbd, 0x94, 0xb5, 0x82, 0x8b, 0x4b, 0xf7, 0xbe}
2405 DEFINE_GUID
!{D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE
,
2406 0xec1c539d, 0x8cff, 0x4e2a, 0xbc, 0xc4, 0xf5, 0x69, 0x2f, 0x99, 0xf4, 0x80}
2407 DEFINE_GUID
!{D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION
,
2408 0x2634499e, 0xd018, 0x4d74, 0xac, 0x17, 0x7f, 0x72, 0x40, 0x59, 0x52, 0x8d}
2409 DEFINE_GUID
!{D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT
,
2410 0x0db207b3, 0x9450, 0x46a6, 0x82, 0xde, 0x1b, 0x96, 0xd4, 0x4f, 0x9c, 0xf2}
2411 DEFINE_GUID
!{D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS
,
2412 0x649bbadb, 0xf0f4, 0x4639, 0xa1, 0x5b, 0x24, 0x39, 0x3f, 0xc3, 0xab, 0xac}
2413 DEFINE_GUID
!{D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT
,
2414 0x012f0bd6, 0xe662, 0x4474, 0xbe, 0xfd, 0xaa, 0x53, 0xe5, 0x14, 0x3c, 0x6d}
2415 DEFINE_GUID
!{D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT
,
2416 0x2c042b5e, 0x8c07, 0x46d5, 0xaa, 0xbe, 0x8f, 0x75, 0xcb, 0xad, 0x4c, 0x31}
2417 DEFINE_GUID
!{D3D11_AUTHENTICATED_QUERY_OUTPUT_ID
,
2418 0x839ddca3, 0x9b4e, 0x41e4, 0xb0, 0x53, 0x89, 0x2b, 0xd2, 0xa1, 0x1e, 0xe7}
2419 DEFINE_GUID
!{D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ATTRIBUTES
,
2420 0x6214d9d2, 0x432c, 0x4abb, 0x9f, 0xce, 0x21, 0x6e, 0xea, 0x26, 0x9e, 0x3b}
2421 DEFINE_GUID
!{D3D11_AUTHENTICATED_QUERY_ENCRYPTION_WHEN_ACCESSIBLE_GUID_COUNT
,
2422 0xb30f7066, 0x203c, 0x4b07, 0x93, 0xfc, 0xce, 0xaa, 0xfd, 0x61, 0x24, 0x1e}
2423 DEFINE_GUID
!{D3D11_AUTHENTICATED_QUERY_ENCRYPTION_WHEN_ACCESSIBLE_GUID
,
2424 0xf83a5958, 0xe986, 0x4bda, 0xbe, 0xb0, 0x41, 0x1f, 0x6a, 0x7a, 0x01, 0xb7}
2425 DEFINE_GUID
!{D3D11_AUTHENTICATED_QUERY_CURRENT_ENCRYPTION_WHEN_ACCESSIBLE
,
2426 0xec1791c7, 0xdad3, 0x4f15, 0x9e, 0xc3, 0xfa, 0xa9, 0x3d, 0x60, 0xd4, 0xf0}
2427 DEFINE_GUID
!{D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE
,
2428 0x06114bdb, 0x3523, 0x470a, 0x8d, 0xca, 0xfb, 0xc2, 0x84, 0x51, 0x54, 0xf0}
2429 DEFINE_GUID
!{D3D11_AUTHENTICATED_CONFIGURE_PROTECTION
,
2430 0x50455658, 0x3f47, 0x4362, 0xbf, 0x99, 0xbf, 0xdf, 0xcd, 0xe9, 0xed, 0x29}
2431 DEFINE_GUID
!{D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION
,
2432 0x6346cc54, 0x2cfc, 0x4ad4, 0x82, 0x24, 0xd1, 0x58, 0x37, 0xde, 0x77, 0x00}
2433 DEFINE_GUID
!{D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE
,
2434 0x0772d047, 0x1b40, 0x48e8, 0x9c, 0xa6, 0xb5, 0xf5, 0x10, 0xde, 0x9f, 0x01}
2435 DEFINE_GUID
!{D3D11_AUTHENTICATED_CONFIGURE_ENCRYPTION_WHEN_ACCESSIBLE
,
2436 0x41fff286, 0x6ae0, 0x4d43, 0x9d, 0x55, 0xa4, 0x6e, 0x9e, 0xfd, 0x15, 0x8a}
2437 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_INPUT
{
2440 SequenceNumber
: UINT
,
2442 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_OUTPUT
{
2446 SequenceNumber
: UINT
,
2447 ReturnCode
: HRESULT
,
2450 STRUCT
!{struct D3D11_AUTHENTICATED_PROTECTION_FLAGS
{
2453 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_PROTECTION_OUTPUT
{
2454 Output
: D3D11_AUTHENTICATED_QUERY_OUTPUT
,
2455 ProtectionFlags
: D3D11_AUTHENTICATED_PROTECTION_FLAGS
,
2457 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE_OUTPUT
{
2458 Output
: D3D11_AUTHENTICATED_QUERY_OUTPUT
,
2459 ChannelType
: D3D11_AUTHENTICATED_CHANNEL_TYPE
,
2461 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE_OUTPUT
{
2462 Output
: D3D11_AUTHENTICATED_QUERY_OUTPUT
,
2463 DeviceHandle
: HANDLE
,
2465 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_INPUT
{
2466 Input
: D3D11_AUTHENTICATED_QUERY_INPUT
,
2467 DecoderHandle
: HANDLE
,
2469 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_OUTPUT
{
2470 Output
: D3D11_AUTHENTICATED_QUERY_OUTPUT
,
2471 DecoderHandle
: HANDLE
,
2472 CryptoSessionHandle
: HANDLE
,
2473 DeviceHandle
: HANDLE
,
2475 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT_OUTPUT
{
2476 Output
: D3D11_AUTHENTICATED_QUERY_OUTPUT
,
2477 RestrictedSharedResourceProcessCount
: UINT
,
2479 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_INPUT
{
2480 Input
: D3D11_AUTHENTICATED_QUERY_INPUT
,
2483 ENUM
!{enum D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE
{
2484 DD3D11_PROCESSIDTYPE_UNKNOWN
= 0,
2485 DD3D11_PROCESSIDTYPE_DWM
= 1,
2486 DD3D11_PROCESSIDTYPE_HANDLE
= 2,
2488 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_OUTPUT
{
2489 Output
: D3D11_AUTHENTICATED_QUERY_OUTPUT
,
2491 ProcessIdentifier
: D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE
,
2492 ProcessHandle
: HANDLE
,
2494 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT_OUTPUT
{
2495 Output
: D3D11_AUTHENTICATED_QUERY_OUTPUT
,
2496 UnrestrictedProtectedSharedResourceCount
: UINT
,
2498 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_INPUT
{
2499 Input
: D3D11_AUTHENTICATED_QUERY_INPUT
,
2500 DeviceHandle
: HANDLE
,
2501 CryptoSessionHandle
: HANDLE
,
2503 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_OUTPUT
{
2504 Output
: D3D11_AUTHENTICATED_QUERY_OUTPUT
,
2505 DeviceHandle
: HANDLE
,
2506 CryptoSessionHandle
: HANDLE
,
2507 OutputIDCount
: UINT
,
2509 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_INPUT
{
2510 Input
: D3D11_AUTHENTICATED_QUERY_INPUT
,
2511 DeviceHandle
: HANDLE
,
2512 CryptoSessionHandle
: HANDLE
,
2513 OutputIDIndex
: UINT
,
2515 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_OUTPUT
{
2516 Output
: D3D11_AUTHENTICATED_QUERY_OUTPUT
,
2517 DeviceHandle
: HANDLE
,
2518 CryptoSessionHandle
: HANDLE
,
2519 OutputIDIndex
: UINT
,
2522 ENUM
!{enum D3D11_BUS_TYPE
{
2523 D3D11_BUS_TYPE_OTHER
= 0,
2524 D3D11_BUS_TYPE_PCI
= 0x1,
2525 D3D11_BUS_TYPE_PCIX
= 0x2,
2526 D3D11_BUS_TYPE_PCIEXPRESS
= 0x3,
2527 D3D11_BUS_TYPE_AGP
= 0x4,
2528 D3D11_BUS_IMPL_MODIFIER_INSIDE_OF_CHIPSET
= 0x10000,
2529 D3D11_BUS_IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_CHIP
= 0x20000,
2530 D3D11_BUS_IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_SOCKET
= 0x30000,
2531 D3D11_BUS_IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR
= 0x40000,
2532 D3D11_BUS_IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR_INSIDE_OF_NUAE
= 0x50000,
2533 D3D11_BUS_IMPL_MODIFIER_NON_STANDARD
= 0x80000000,
2535 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_ACESSIBILITY_OUTPUT
{
2536 Output
: D3D11_AUTHENTICATED_QUERY_OUTPUT
,
2537 BusType
: D3D11_BUS_TYPE
,
2538 AccessibleInContiguousBlocks
: BOOL
,
2539 AccessibleInNonContiguousBlocks
: BOOL
,
2541 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_COUNT_OUTPUT
{
2542 Output
: D3D11_AUTHENTICATED_QUERY_OUTPUT
,
2543 EncryptionGuidCount
: UINT
,
2545 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_INPUT
{
2546 Input
: D3D11_AUTHENTICATED_QUERY_INPUT
,
2547 EncryptionGuidIndex
: UINT
,
2549 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_OUTPUT
{
2550 Output
: D3D11_AUTHENTICATED_QUERY_OUTPUT
,
2551 EncryptionGuidIndex
: UINT
,
2552 EncryptionGuid
: GUID
,
2554 STRUCT
!{struct D3D11_AUTHENTICATED_QUERY_CURRENT_ACCESSIBILITY_ENCRYPTION_OUTPUT
{
2555 Output
: D3D11_AUTHENTICATED_QUERY_OUTPUT
,
2556 EncryptionGuid
: GUID
,
2558 STRUCT
!{struct D3D11_AUTHENTICATED_CONFIGURE_INPUT
{
2560 ConfigureType
: GUID
,
2562 SequenceNumber
: UINT
,
2564 STRUCT
!{struct D3D11_AUTHENTICATED_CONFIGURE_OUTPUT
{
2566 ConfigureType
: GUID
,
2568 SequenceNumber
: UINT
,
2569 ReturnCode
: HRESULT
,
2571 STRUCT
!{struct D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE_INPUT
{
2572 Parameters
: D3D11_AUTHENTICATED_CONFIGURE_INPUT
,
2573 StartSequenceQuery
: UINT
,
2574 StartSequenceConfigure
: UINT
,
2576 STRUCT
!{struct D3D11_AUTHENTICATED_CONFIGURE_PROTECTION_INPUT
{
2577 Parameters
: D3D11_AUTHENTICATED_CONFIGURE_INPUT
,
2578 Protections
: D3D11_AUTHENTICATED_PROTECTION_FLAGS
,
2580 STRUCT
!{struct D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_INPUT
{
2581 Parameters
: D3D11_AUTHENTICATED_CONFIGURE_INPUT
,
2582 DecoderHandle
: HANDLE
,
2583 CryptoSessionHandle
: HANDLE
,
2584 DeviceHandle
: HANDLE
,
2586 STRUCT
!{struct D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_INPUT
{
2587 Parameters
: D3D11_AUTHENTICATED_CONFIGURE_INPUT
,
2588 ProcessType
: D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE
,
2589 ProcessHandle
: HANDLE
,
2592 STRUCT
!{struct D3D11_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION_INPUT
{
2593 Parameters
: D3D11_AUTHENTICATED_CONFIGURE_INPUT
,
2594 EncryptionGuid
: GUID
,
2596 DEFINE_GUID
!{D3D11_KEY_EXCHANGE_RSAES_OAEP
,
2597 0xc1949895, 0xd72a, 0x4a1d, 0x8e, 0x5d, 0xed, 0x85, 0x7d, 0x17, 0x15, 0x20}
2598 RIDL
!{#[uuid(0x9b32f9ad, 0xbdcc, 0x40a6, 0xa3, 0x9d, 0xd5, 0xc8, 0x65, 0x84, 0x57, 0x20)]
2599 interface
ID3D11CryptoSession(ID3D11CryptoSessionVtbl
): ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {
2601 pCryptoType
: *mut GUID
,
2603 fn GetDecoderProfile(
2604 pDecoderProfile
: *mut GUID
,
2606 fn GetCertificateSize(
2607 pCertificateSize
: *mut UINT
,
2610 CertificateSize
: UINT
,
2611 pCertificate
: *mut BYTE
,
2613 fn GetCryptoSessionHandle(
2614 pCertificate
: *mut HANDLE
,
2617 ENUM
!{enum D3D11_VDOV_DIMENSION
{
2618 D3D11_VDOV_DIMENSION_UNKNOWN
= 0,
2619 D3D11_VDOV_DIMENSION_TEXTURE2D
= 1,
2621 STRUCT
!{struct D3D11_TEX2D_VDOV
{
2624 STRUCT
!{struct D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC
{
2625 DecodeProfile
: GUID
,
2626 ViewDimension
: D3D11_VDOV_DIMENSION
,
2627 Texture2D
: D3D11_TEX2D_VDOV
,
2629 RIDL
!{#[uuid(0xc2931aea, 0x2a85, 0x4f20, 0x86, 0x0f, 0xfb, 0xa1, 0xfd, 0x25, 0x6e, 0x18)]
2630 interface
ID3D11VideoDecoderOutputView(ID3D11VideoDecoderOutputViewVtbl
):
2631 ID3D11View(ID3D11ViewVtbl
) {
2633 pDesc
: *mut D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC
,
2636 ENUM
!{enum D3D11_VPIV_DIMENSION
{
2637 D3D11_VPIV_DIMENSION_UNKNOWN
= 0,
2638 D3D11_VPIV_DIMENSION_TEXTURE2D
= 1,
2640 STRUCT
!{struct D3D11_TEX2D_VPIV
{
2644 STRUCT
!{struct D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC
{
2646 ViewDimension
: D3D11_VPIV_DIMENSION
,
2647 Texture2D
: D3D11_TEX2D_VPIV
,
2649 RIDL
!{#[uuid(0x11ec5a5f, 0x51dc, 0x4945, 0xab, 0x34, 0x6e, 0x8c, 0x21, 0x30, 0x0e, 0xa5)]
2650 interface
ID3D11VideoProcessorInputView(ID3D11VideoProcessorInputViewVtbl
):
2651 ID3D11View(ID3D11ViewVtbl
) {
2653 pDesc
: *mut D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC
,
2656 ENUM
!{enum D3D11_VPOV_DIMENSION
{
2657 D3D11_VPOV_DIMENSION_UNKNOWN
= 0,
2658 D3D11_VPOV_DIMENSION_TEXTURE2D
= 1,
2659 D3D11_VPOV_DIMENSION_TEXTURE2DARRAY
= 2,
2661 STRUCT
!{struct D3D11_TEX2D_VPOV
{
2664 STRUCT
!{struct D3D11_TEX2D_ARRAY_VPOV
{
2666 FirstArraySlice
: UINT
,
2669 UNION
!{union D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC_u
{
2671 Texture2D Texture2D_mut
: D3D11_TEX2D_VPOV
,
2672 Texture2DArray Texture2DArray_mut
: D3D11_TEX2D_ARRAY_VPOV
,
2674 STRUCT
!{struct D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC
{
2675 ViewDimension
: D3D11_VPOV_DIMENSION
,
2676 u
: D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC_u
,
2678 RIDL
!{#[uuid(0xa048285e, 0x25a9, 0x4527, 0xbd, 0x93, 0xd6, 0x8b, 0x68, 0xc4, 0x42, 0x54)]
2679 interface
ID3D11VideoProcessorOutputView(ID3D11VideoProcessorOutputViewVtbl
):
2680 ID3D11View(ID3D11ViewVtbl
) {
2682 pDesc
: *mut D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC
,
2685 RIDL
!{#[uuid(0x61f21c45, 0x3c0e, 0x4a74, 0x9c, 0xea, 0x67, 0x10, 0x0d, 0x9a, 0xd5, 0xe4)]
2686 interface
ID3D11VideoContext(ID3D11VideoContextVtbl
): ID3D11DeviceChild(ID3D11DeviceChildVtbl
) {
2687 fn GetDecoderBuffer(
2688 pDecoder
: *mut ID3D11VideoDecoder
,
2689 Type
: D3D11_VIDEO_DECODER_BUFFER_TYPE
,
2690 pBufferSize
: *mut UINT
,
2691 ppBuffer
: *mut *mut c_void
,
2693 fn ReleaseDecoderBuffer(
2694 pDecoder
: *mut ID3D11VideoDecoder
,
2695 Type
: D3D11_VIDEO_DECODER_BUFFER_TYPE
,
2697 fn DecoderBeginFrame(
2698 pDecoder
: *mut ID3D11VideoDecoder
,
2699 pView
: *mut ID3D11VideoDecoderOutputView
,
2700 ContentKeySize
: UINT
,
2701 pContentKey
: *const c_void
,
2704 pDecoder
: *mut ID3D11VideoDecoder
,
2706 fn SubmitDecoderBuffers(
2707 pDecoder
: *mut ID3D11VideoDecoder
,
2709 pBufferDesc
: *const D3D11_VIDEO_DECODER_BUFFER_DESC
,
2711 fn DecoderExtension(
2712 pDecoder
: *mut ID3D11VideoDecoder
,
2713 pExtensionData
: *const D3D11_VIDEO_DECODER_EXTENSION
,
2715 fn VideoProcessorSetOutputTargetRect(
2716 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2720 fn VideoProcessorSetOutputBackgroundColor(
2721 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2725 fn VideoProcessorSetOutputColorSpace(
2726 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2727 pColorSpace
: *const D3D11_VIDEO_PROCESSOR_COLOR_SPACE
,
2729 fn VideoProcessorSetOutputAlphaFillMode(
2730 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2731 AlphaFillMode
: D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE
,
2734 fn VideoProcessorSetOutputConstriction(
2735 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2739 fn VideoProcessorSetOutputStereoMode(
2740 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2743 fn VideoProcessorSetOutputExtension(
2744 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2745 pExtensionGuid
: *const GUID
,
2749 fn VideoProcessorGetOutputTargetRect(
2750 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2754 fn VideoProcessorGetOutputBackgroundColor(
2755 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2757 pColor
: *mut D3D11_VIDEO_COLOR
,
2759 fn VideoProcessorGetOutputColorSpace(
2760 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2761 pColorSpace
: *mut D3D11_VIDEO_PROCESSOR_COLOR_SPACE
,
2763 fn VideoProcessorGetOutputAlphaFillMode(
2764 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2765 pAlphaFillMode
: *mut D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE
,
2766 pStreamIndex
: *mut UINT
,
2768 fn VideoProcessorGetOutputConstriction(
2769 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2770 pEnabled
: *mut BOOL
,
2773 fn VideoProcessorGetOutputStereoMode(
2774 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2775 pEnabled
: *mut BOOL
,
2777 fn VideoProcessorGetOutputExtension(
2778 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2779 pExtensionGuid
: *const GUID
,
2783 fn VideoProcessorSetStreamFrameFormat(
2784 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2786 FrameFormat
: D3D11_VIDEO_FRAME_FORMAT
,
2788 fn VideoProcessorSetStreamColorSpace(
2789 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2791 pColorSpace
: *const D3D11_VIDEO_PROCESSOR_COLOR_SPACE
,
2793 fn VideoProcessorSetStreamOutputRate(
2794 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2796 OutputRate
: D3D11_VIDEO_PROCESSOR_OUTPUT_RATE
,
2798 pCustomRate
: *const DXGI_RATIONAL
,
2800 fn VideoProcessorSetStreamSourceRect(
2801 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2806 fn VideoProcessorSetStreamDestRect(
2807 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2812 fn VideoProcessorSetStreamAlpha(
2813 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2818 fn VideoProcessorSetStreamPalette(
2819 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2822 pEntries
: *const UINT
,
2824 fn VideoProcessorSetStreamPixelAspectRatio(
2825 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2828 pSourceAspectRatio
: *const DXGI_RATIONAL
,
2829 pDestinationAspectRatio
: *const DXGI_RATIONAL
,
2831 fn VideoProcessorSetStreamLumaKey(
2832 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2838 fn VideoProcessorSetStreamStereoFormat(
2839 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2842 Format
: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT
,
2843 LeftViewFrame0
: BOOL
,
2844 BaseViewFrame0
: BOOL
,
2845 FlipMode
: D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE
,
2847 fn VideoProcessorSetStreamAutoProcessingMode(
2848 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2852 fn VideoProcessorSetStreamFilter(
2853 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2855 Filter
: D3D11_VIDEO_PROCESSOR_FILTER
,
2859 fn VideoProcessorSetStreamExtension(
2860 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2862 pExtensionGuid
: *const GUID
,
2866 fn VideoProcessorGetStreamFrameFormat(
2867 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2869 pFrameFormat
: *mut D3D11_VIDEO_FRAME_FORMAT
,
2871 fn VideoProcessorGetStreamColorSpace(
2872 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2874 pColorSpace
: *mut D3D11_VIDEO_PROCESSOR_COLOR_SPACE
,
2876 fn VideoProcessorGetStreamOutputRate(
2877 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2879 pOutputRate
: *mut D3D11_VIDEO_PROCESSOR_OUTPUT_RATE
,
2880 pRepeatFrame
: *mut BOOL
,
2881 pCustomRate
: *mut DXGI_RATIONAL
,
2883 fn VideoProcessorGetStreamSourceRect(
2884 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2886 pEnabled
: *mut BOOL
,
2889 fn VideoProcessorGetStreamDestRect(
2890 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2892 pEnabled
: *mut BOOL
,
2895 fn VideoProcessorGetStreamAlpha(
2896 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2898 pEnabled
: *mut BOOL
,
2901 fn VideoProcessorGetStreamPalette(
2902 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2905 pEntries
: *mut UINT
,
2907 fn VideoProcessorGetStreamPixelAspectRatio(
2908 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2910 pEnabled
: *mut BOOL
,
2911 pSourceAspectRatio
: *mut DXGI_RATIONAL
,
2912 pDestinationAspectRatio
: *mut DXGI_RATIONAL
,
2914 fn VideoProcessorGetStreamLumaKey(
2915 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2917 pEnabled
: *mut BOOL
,
2921 fn VideoProcessorGetStreamStereoFormat(
2922 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2924 pEnabled
: *mut BOOL
,
2925 pFormat
: *mut D3D11_VIDEO_PROCESSOR_STEREO_FORMAT
,
2926 pLeftViewFrame0
: *mut BOOL
,
2927 pBaseViewFrame0
: *mut BOOL
,
2928 pFlipMode
: *mut D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE
,
2929 MonoOffset
: *mut c_int
,
2931 fn VideoProcessorGetStreamAutoProcessingMode(
2932 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2934 pEnabled
: *mut BOOL
,
2936 fn VideoProcessorGetStreamFilter(
2937 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2939 Filter
: D3D11_VIDEO_PROCESSOR_FILTER
,
2940 pEnabled
: *mut BOOL
,
2943 fn VideoProcessorGetStreamExtension(
2944 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2946 pExtensionGuid
: *const GUID
,
2950 fn VideoProcessorBlt(
2951 pVideoProcessor
: *mut ID3D11VideoProcessor
,
2952 pView
: *mut ID3D11VideoProcessorOutputView
,
2955 pStreams
: *const D3D11_VIDEO_PROCESSOR_STREAM
,
2957 fn NegotiateCryptoSessionKeyExchange(
2958 pCryptoSession
: *mut ID3D11CryptoSession
,
2963 pCryptoSession
: *mut ID3D11CryptoSession
,
2964 pSrcSurface
: *mut ID3D11Texture2D
,
2965 pDstSurface
: *mut ID3D11Texture2D
,
2970 pCryptoSession
: *mut ID3D11CryptoSession
,
2971 pSrcSurface
: *mut ID3D11Texture2D
,
2972 pDstSurface
: *mut ID3D11Texture2D
,
2973 pEncryptedBlockInfo
: *mut D3D11_ENCRYPTED_BLOCK_INFO
,
2974 ContentKeySize
: UINT
,
2975 pContentKey
: *const c_void
,
2979 fn StartSessionKeyRefresh(
2980 pCryptoSession
: *mut ID3D11CryptoSession
,
2981 RandomNumberSize
: UINT
,
2982 pRandomNumber
: *mut c_void
,
2984 fn FinishSessionKeyRefresh(
2985 pCryptoSession
: *mut ID3D11CryptoSession
,
2987 fn GetEncryptionBltKey(
2988 pCryptoSession
: *mut ID3D11CryptoSession
,
2990 pReadbackKey
: *mut c_void
,
2992 fn NegotiateAuthenticatedChannelKeyExchange(
2993 pChannel
: *mut ID3D11AuthenticatedChannel
,
2997 fn QueryAuthenticatedChannel(
2998 pChannel
: *mut ID3D11AuthenticatedChannel
,
3000 pInput
: *const c_void
,
3002 pOutput
: *mut c_void
,
3004 fn ConfigureAuthenticatedChannel(
3005 pChannel
: *mut ID3D11AuthenticatedChannel
,
3007 pInput
: *const c_void
,
3008 pOutput
: *mut D3D11_AUTHENTICATED_CONFIGURE_OUTPUT
,
3010 fn VideoProcessorSetStreamRotation(
3011 pVideoProcessor
: *mut ID3D11VideoProcessor
,
3014 Rotation
: D3D11_VIDEO_PROCESSOR_ROTATION
,
3016 fn VideoProcessorGetStreamRotation(
3017 pVideoProcessor
: *mut ID3D11VideoProcessor
,
3020 pRotation
: *mut D3D11_VIDEO_PROCESSOR_ROTATION
,
3023 RIDL
!{#[uuid(0x10ec4d5b, 0x975a, 0x4689, 0xb9, 0xe4, 0xd0, 0xaa, 0xc3, 0x0f, 0xe3, 0x33)]
3024 interface
ID3D11VideoDevice(ID3D11VideoDeviceVtbl
): IUnknown(IUnknownVtbl
) {
3025 fn CreateVideoDecoder(
3026 pVideoDesc
: *const D3D11_VIDEO_DECODER_DESC
,
3027 pConfig
: *const D3D11_VIDEO_DECODER_CONFIG
,
3028 ppDecoder
: *mut *mut ID3D11VideoDecoder
,
3030 fn CreateVideoProcessor(
3031 pEnum
: *mut ID3D11VideoProcessorEnumerator
,
3032 RateConversionIndex
: UINT
,
3033 ppVideoProcessor
: *mut *mut ID3D11VideoProcessor
,
3035 fn CreateAuthenticatedChannel(
3036 ChannelType
: D3D11_AUTHENTICATED_CHANNEL_TYPE
,
3037 ppAuthenticatedChannel
: *mut *mut ID3D11AuthenticatedChannel
,
3039 fn CreateCryptoSession(
3040 pCryptoType
: *const GUID
,
3041 pDecoderProfile
: *const GUID
,
3042 pKeyExchangeType
: *const GUID
,
3043 ppCryptoSession
: *mut *mut ID3D11CryptoSession
,
3045 fn CreateVideoDecoderOutputView(
3046 pResource
: *mut ID3D11Resource
,
3047 pDesc
: *const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC
,
3048 ppVDOVView
: *mut *mut ID3D11VideoDecoderOutputView
,
3050 fn CreateVideoProcessorInputView(
3051 pResource
: *mut ID3D11Resource
,
3052 pEnum
: *mut ID3D11VideoProcessorEnumerator
,
3053 pDesc
: *const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC
,
3054 ppVPIView
: *mut *mut ID3D11VideoProcessorInputView
,
3056 fn CreateVideoProcessorOutputView(
3057 pResource
: *mut ID3D11Resource
,
3058 pEnum
: *mut ID3D11VideoProcessorEnumerator
,
3059 pDesc
: *const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC
,
3060 ppVPOView
: *mut *mut ID3D11VideoProcessorOutputView
,
3062 fn CreateVideoProcessorEnumerator(
3063 pDesc
: *const D3D11_VIDEO_PROCESSOR_CONTENT_DESC
,
3064 ppEnum
: *mut *mut ID3D11VideoProcessorEnumerator
,
3066 fn GetVideoDecoderProfileCount() -> UINT
,
3067 fn GetVideoDecoderProfile(
3069 pDecoderProfile
: *mut GUID
,
3071 fn CheckVideoDecoderFormat(
3072 pDecoderProfile
: *const GUID
,
3073 Format
: DXGI_FORMAT
,
3074 pSupported
: *mut BOOL
,
3076 fn GetVideoDecoderConfigCount(
3077 pDesc
: *const D3D11_VIDEO_DECODER_DESC
,
3080 fn GetVideoDecoderConfig(
3081 pDesc
: *const D3D11_VIDEO_DECODER_DESC
,
3083 pConfig
: *mut D3D11_VIDEO_DECODER_CONFIG
,
3085 fn GetContentProtectionCaps(
3086 pCryptoType
: *const GUID
,
3087 pDecoderProfile
: *const GUID
,
3088 pCaps
: *mut D3D11_VIDEO_CONTENT_PROTECTION_CAPS
,
3090 fn CheckCryptoKeyExchange(
3091 pCryptoType
: *const GUID
,
3092 pDecoderProfile
: *const GUID
,
3094 pKeyExchangeType
: *mut GUID
,
3099 pData
: *const c_void
,
3101 fn SetPrivateDataInterface(
3103 pData
: *const IUnknown
,
3106 RIDL
!{#[uuid(0xdb6f6ddb, 0xac77, 0x4e88, 0x82, 0x53, 0x81, 0x9d, 0xf9, 0xbb, 0xf1, 0x40)]
3107 interface
ID3D11Device(ID3D11DeviceVtbl
): IUnknown(IUnknownVtbl
) {
3109 pDesc
: *const D3D11_BUFFER_DESC
,
3110 pInitialData
: *const D3D11_SUBRESOURCE_DATA
,
3111 ppBuffer
: *mut *mut ID3D11Buffer
,
3114 pDesc
: *const D3D11_TEXTURE1D_DESC
,
3115 pInitialData
: *const D3D11_SUBRESOURCE_DATA
,
3116 ppTexture1D
: *mut *mut ID3D11Texture1D
,
3119 pDesc
: *const D3D11_TEXTURE2D_DESC
,
3120 pInitialData
: *const D3D11_SUBRESOURCE_DATA
,
3121 ppTexture2D
: *mut *mut ID3D11Texture2D
,
3124 pDesc
: *const D3D11_TEXTURE3D_DESC
,
3125 pInitialData
: *const D3D11_SUBRESOURCE_DATA
,
3126 ppTexture3D
: *mut *mut ID3D11Texture3D
,
3128 fn CreateShaderResourceView(
3129 pResource
: *mut ID3D11Resource
,
3130 pDesc
: *const D3D11_SHADER_RESOURCE_VIEW_DESC
,
3131 ppSRView
: *mut *mut ID3D11ShaderResourceView
,
3133 fn CreateUnorderedAccessView(
3134 pResource
: *mut ID3D11Resource
,
3135 pDesc
: *const D3D11_UNORDERED_ACCESS_VIEW_DESC
,
3136 ppUAView
: *mut *mut ID3D11UnorderedAccessView
,
3138 fn CreateRenderTargetView(
3139 pResource
: *mut ID3D11Resource
,
3140 pDesc
: *const D3D11_RENDER_TARGET_VIEW_DESC
,
3141 ppRTView
: *mut *mut ID3D11RenderTargetView
,
3143 fn CreateDepthStencilView(
3144 pResource
: *mut ID3D11Resource
,
3145 pDesc
: *const D3D11_DEPTH_STENCIL_VIEW_DESC
,
3146 ppDepthStencilView
: *mut *mut ID3D11DepthStencilView
,
3148 fn CreateInputLayout(
3149 pInputElementDescs
: *const D3D11_INPUT_ELEMENT_DESC
,
3151 pShaderBytecodeWithInputSignature
: *const c_void
,
3152 BytecodeLength
: SIZE_T
,
3153 ppInputLayout
: *mut *mut ID3D11InputLayout
,
3155 fn CreateVertexShader(
3156 pShaderBytecode
: *const c_void
,
3157 BytecodeLength
: SIZE_T
,
3158 pClassLinkage
: *mut ID3D11ClassLinkage
,
3159 ppVertexShader
: *mut *mut ID3D11VertexShader
,
3161 fn CreateGeometryShader(
3162 pShaderBytecode
: *const c_void
,
3163 BytecodeLength
: SIZE_T
,
3164 pClassLinkage
: *mut ID3D11ClassLinkage
,
3165 ppGeometryShader
: *mut *mut ID3D11GeometryShader
,
3167 fn CreateGeometryShaderWithStreamOutput(
3168 pShaderBytecode
: *const c_void
,
3169 BytecodeLength
: SIZE_T
,
3170 pSODeclaration
: *const D3D11_SO_DECLARATION_ENTRY
,
3172 pBufferStrides
: *const UINT
,
3174 RasterizedStream
: UINT
,
3175 pClassLinkage
: *mut ID3D11ClassLinkage
,
3176 ppGeometryShader
: *mut *mut ID3D11GeometryShader
,
3178 fn CreatePixelShader(
3179 pShaderBytecode
: *const c_void
,
3180 BytecodeLength
: SIZE_T
,
3181 pClassLinkage
: *mut ID3D11ClassLinkage
,
3182 ppPixelShader
: *mut *mut ID3D11PixelShader
,
3184 fn CreateHullShader(
3185 pShaderBytecode
: *const c_void
,
3186 BytecodeLength
: SIZE_T
,
3187 pClassLinkage
: *mut ID3D11ClassLinkage
,
3188 ppHullShader
: *mut *mut ID3D11HullShader
,
3190 fn CreateDomainShader(
3191 pShaderBytecode
: *const c_void
,
3192 BytecodeLength
: SIZE_T
,
3193 pClassLinkage
: *mut ID3D11ClassLinkage
,
3194 ppDomainShader
: *mut *mut ID3D11DomainShader
,
3196 fn CreateComputeShader(
3197 pShaderBytecode
: *const c_void
,
3198 BytecodeLength
: SIZE_T
,
3199 pClassLinkage
: *mut ID3D11ClassLinkage
,
3200 ppComputeShader
: *mut *mut ID3D11ComputeShader
,
3202 fn CreateClassLinkage(
3203 ppLinkage
: *mut *mut ID3D11ClassLinkage
,
3205 fn CreateBlendState(
3206 pBlendStateDesc
: *const D3D11_BLEND_DESC
,
3207 ppBlendState
: *mut *mut ID3D11BlendState
,
3209 fn CreateDepthStencilState(
3210 pDepthStencilDesc
: *const D3D11_DEPTH_STENCIL_DESC
,
3211 ppDepthStencilState
: *mut *mut ID3D11DepthStencilState
,
3213 fn CreateRasterizerState(
3214 pRasterizerDesc
: *const D3D11_RASTERIZER_DESC
,
3215 ppRasterizerState
: *mut *mut ID3D11RasterizerState
,
3217 fn CreateSamplerState(
3218 pSamplerDesc
: *const D3D11_SAMPLER_DESC
,
3219 ppSamplerState
: *mut *mut ID3D11SamplerState
,
3222 pQueryDesc
: *const D3D11_QUERY_DESC
,
3223 ppQuery
: *mut *mut ID3D11Query
,
3226 pPredicateDesc
: *const D3D11_QUERY_DESC
,
3227 ppPredicate
: *mut *mut ID3D11Predicate
,
3230 pCounterDesc
: *const D3D11_COUNTER_DESC
,
3231 ppCounter
: *mut *mut ID3D11Counter
,
3233 fn CreateDeferredContext(
3235 ppDeferredContext
: *mut *mut ID3D11DeviceContext
,
3237 fn OpenSharedResource(
3239 ReturnedInterface
: REFIID
,
3240 ppResource
: *mut *mut c_void
,
3242 fn CheckFormatSupport(
3243 Format
: DXGI_FORMAT
,
3244 pFormatSupport
: *mut UINT
,
3246 fn CheckMultisampleQualityLevels(
3247 Format
: DXGI_FORMAT
,
3249 pNumQualityLevels
: *mut UINT
,
3251 fn CheckCounterInfo(
3252 pCounterInfo
: *mut D3D11_COUNTER_INFO
,
3255 pDesc
: *const D3D11_COUNTER_DESC
,
3256 pType
: *mut D3D11_COUNTER_TYPE
,
3257 pActiveCounters
: *mut UINT
,
3259 pNameLength
: *mut UINT
,
3261 pUnitsLength
: *mut UINT
,
3262 szDescription
: LPSTR
,
3263 pDescriptionLength
: *mut UINT
,
3265 fn CheckFeatureSupport(
3266 Feature
: D3D11_FEATURE
,
3267 pFeatureSupportData
: *mut c_void
,
3268 FeatureSupportDataSize
: UINT
,
3272 pDataSize
: *mut UINT
,
3278 pData
: *const c_void
,
3280 fn SetPrivateDataInterface(
3282 pData
: *const IUnknown
,
3284 fn GetFeatureLevel() -> D3D_FEATURE_LEVEL
,
3285 fn GetCreationFlags() -> UINT
,
3286 fn GetDeviceRemovedReason() -> HRESULT
,
3287 fn GetImmediateContext(
3288 ppImmediateContext
: *mut *mut ID3D11DeviceContext
,
3290 fn SetExceptionMode(
3293 fn GetExceptionMode() -> UINT
,
3295 ENUM
!{enum D3D11_CREATE_DEVICE_FLAG
{
3296 D3D11_CREATE_DEVICE_SINGLETHREADED
= 0x1,
3297 D3D11_CREATE_DEVICE_DEBUG
= 0x2,
3298 D3D11_CREATE_DEVICE_SWITCH_TO_REF
= 0x4,
3299 D3D11_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS
= 0x8,
3300 D3D11_CREATE_DEVICE_BGRA_SUPPORT
= 0x20,
3301 D3D11_CREATE_DEVICE_DEBUGGABLE
= 0x40,
3302 D3D11_CREATE_DEVICE_PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY
= 0x80,
3303 D3D11_CREATE_DEVICE_DISABLE_GPU_TIMEOUT
= 0x100,
3304 D3D11_CREATE_DEVICE_VIDEO_SUPPORT
= 0x800,
3306 pub const D3D11_SDK_VERSION
: DWORD
= 7;
3308 pub fn D3D11CalcSubresource(MipSlice
: UINT
, ArraySlice
: UINT
, MipLevels
: UINT
) -> UINT
{
3309 MipSlice
+ ArraySlice
* MipLevels
3312 pub fn D3D11CreateDevice(
3313 pAdapter
: *mut IDXGIAdapter
,
3314 DriverType
: D3D_DRIVER_TYPE
,
3317 pFeatureLevels
: *const D3D_FEATURE_LEVEL
,
3318 FeatureLevels
: UINT
,
3320 ppDevice
: *mut *mut ID3D11Device
,
3321 pFeatureLevel
: *mut D3D_FEATURE_LEVEL
,
3322 ppImmediateContext
: *mut *mut ID3D11DeviceContext
,
3324 pub fn D3D11CreateDeviceAndSwapChain(
3325 pAdapter
: *mut IDXGIAdapter
,
3326 DriverType
: D3D_DRIVER_TYPE
,
3329 pFeatureLevels
: *const D3D_FEATURE_LEVEL
,
3330 FeatureLevels
: UINT
,
3332 pSwapChainDesc
: *const DXGI_SWAP_CHAIN_DESC
,
3333 ppSwapChain
: *mut *mut IDXGISwapChain
,
3334 ppDevice
: *mut *mut ID3D11Device
,
3335 pFeatureLevel
: *mut D3D_FEATURE_LEVEL
,
3336 ppImmediateContext
: *mut *mut ID3D11DeviceContext
,
3339 DEFINE_GUID
!{IID_ID3D11DeviceChild
,
3340 0x1841e5c8, 0x16b0, 0x489b, 0xbc, 0xc8, 0x44, 0xcf, 0xb0, 0xd5, 0xde, 0xae}
3341 DEFINE_GUID
!{IID_ID3D11DepthStencilState
,
3342 0x03823efb, 0x8d8f, 0x4e1c, 0x9a, 0xa2, 0xf6, 0x4b, 0xb2, 0xcb, 0xfd, 0xf1}
3343 DEFINE_GUID
!{IID_ID3D11BlendState
,
3344 0x75b68faa, 0x347d, 0x4159, 0x8f, 0x45, 0xa0, 0x64, 0x0f, 0x01, 0xcd, 0x9a}
3345 DEFINE_GUID
!{IID_ID3D11RasterizerState
,
3346 0x9bb4ab81, 0xab1a, 0x4d8f, 0xb5, 0x06, 0xfc, 0x04, 0x20, 0x0b, 0x6e, 0xe7}
3347 DEFINE_GUID
!{IID_ID3D11Resource
,
3348 0xdc8e63f3, 0xd12b, 0x4952, 0xb4, 0x7b, 0x5e, 0x45, 0x02, 0x6a, 0x86, 0x2d}
3349 DEFINE_GUID
!{IID_ID3D11Buffer
,
3350 0x48570b85, 0xd1ee, 0x4fcd, 0xa2, 0x50, 0xeb, 0x35, 0x07, 0x22, 0xb0, 0x37}
3351 DEFINE_GUID
!{IID_ID3D11Texture1D
,
3352 0xf8fb5c27, 0xc6b3, 0x4f75, 0xa4, 0xc8, 0x43, 0x9a, 0xf2, 0xef, 0x56, 0x4c}
3353 DEFINE_GUID
!{IID_ID3D11Texture2D
,
3354 0x6f15aaf2, 0xd208, 0x4e89, 0x9a, 0xb4, 0x48, 0x95, 0x35, 0xd3, 0x4f, 0x9c}
3355 DEFINE_GUID
!{IID_ID3D11Texture3D
,
3356 0x037e866e, 0xf56d, 0x4357, 0xa8, 0xaf, 0x9d, 0xab, 0xbe, 0x6e, 0x25, 0x0e}
3357 DEFINE_GUID
!{IID_ID3D11View
,
3358 0x839d1216, 0xbb2e, 0x412b, 0xb7, 0xf4, 0xa9, 0xdb, 0xeb, 0xe0, 0x8e, 0xd1}
3359 DEFINE_GUID
!{IID_ID3D11ShaderResourceView
,
3360 0xb0e06fe0, 0x8192, 0x4e1a, 0xb1, 0xca, 0x36, 0xd7, 0x41, 0x47, 0x10, 0xb2}
3361 DEFINE_GUID
!{IID_ID3D11RenderTargetView
,
3362 0xdfdba067, 0x0b8d, 0x4865, 0x87, 0x5b, 0xd7, 0xb4, 0x51, 0x6c, 0xc1, 0x64}
3363 DEFINE_GUID
!{IID_ID3D11DepthStencilView
,
3364 0x9fdac92a, 0x1876, 0x48c3, 0xaf, 0xad, 0x25, 0xb9, 0x4f, 0x84, 0xa9, 0xb6}
3365 DEFINE_GUID
!{IID_ID3D11UnorderedAccessView
,
3366 0x28acf509, 0x7f5c, 0x48f6, 0x86, 0x11, 0xf3, 0x16, 0x01, 0x0a, 0x63, 0x80}
3367 DEFINE_GUID
!{IID_ID3D11VertexShader
,
3368 0x3b301d64, 0xd678, 0x4289, 0x88, 0x97, 0x22, 0xf8, 0x92, 0x8b, 0x72, 0xf3}
3369 DEFINE_GUID
!{IID_ID3D11HullShader
,
3370 0x8e5c6061, 0x628a, 0x4c8e, 0x82, 0x64, 0xbb, 0xe4, 0x5c, 0xb3, 0xd5, 0xdd}
3371 DEFINE_GUID
!{IID_ID3D11DomainShader
,
3372 0xf582c508, 0x0f36, 0x490c, 0x99, 0x77, 0x31, 0xee, 0xce, 0x26, 0x8c, 0xfa}
3373 DEFINE_GUID
!{IID_ID3D11GeometryShader
,
3374 0x38325b96, 0xeffb, 0x4022, 0xba, 0x02, 0x2e, 0x79, 0x5b, 0x70, 0x27, 0x5c}
3375 DEFINE_GUID
!{IID_ID3D11PixelShader
,
3376 0xea82e40d, 0x51dc, 0x4f33, 0x93, 0xd4, 0xdb, 0x7c, 0x91, 0x25, 0xae, 0x8c}
3377 DEFINE_GUID
!{IID_ID3D11ComputeShader
,
3378 0x4f5b196e, 0xc2bd, 0x495e, 0xbd, 0x01, 0x1f, 0xde, 0xd3, 0x8e, 0x49, 0x69}
3379 DEFINE_GUID
!{IID_ID3D11InputLayout
,
3380 0xe4819ddc, 0x4cf0, 0x4025, 0xbd, 0x26, 0x5d, 0xe8, 0x2a, 0x3e, 0x07, 0xb7}
3381 DEFINE_GUID
!{IID_ID3D11SamplerState
,
3382 0xda6fea51, 0x564c, 0x4487, 0x98, 0x10, 0xf0, 0xd0, 0xf9, 0xb4, 0xe3, 0xa5}
3383 DEFINE_GUID
!{IID_ID3D11Asynchronous
,
3384 0x4b35d0cd, 0x1e15, 0x4258, 0x9c, 0x98, 0x1b, 0x13, 0x33, 0xf6, 0xdd, 0x3b}
3385 DEFINE_GUID
!{IID_ID3D11Query
,
3386 0xd6c00747, 0x87b7, 0x425e, 0xb8, 0x4d, 0x44, 0xd1, 0x08, 0x56, 0x0a, 0xfd}
3387 DEFINE_GUID
!{IID_ID3D11Predicate
,
3388 0x9eb576dd, 0x9f77, 0x4d86, 0x81, 0xaa, 0x8b, 0xab, 0x5f, 0xe4, 0x90, 0xe2}
3389 DEFINE_GUID
!{IID_ID3D11Counter
,
3390 0x6e8c49fb, 0xa371, 0x4770, 0xb4, 0x40, 0x29, 0x08, 0x60, 0x22, 0xb7, 0x41}
3391 DEFINE_GUID
!{IID_ID3D11ClassInstance
,
3392 0xa6cd7faa, 0xb0b7, 0x4a2f, 0x94, 0x36, 0x86, 0x62, 0xa6, 0x57, 0x97, 0xcb}
3393 DEFINE_GUID
!{IID_ID3D11ClassLinkage
,
3394 0xddf57cba, 0x9543, 0x46e4, 0xa1, 0x2b, 0xf2, 0x07, 0xa0, 0xfe, 0x7f, 0xed}
3395 DEFINE_GUID
!{IID_ID3D11CommandList
,
3396 0xa24bc4d1, 0x769e, 0x43f7, 0x80, 0x13, 0x98, 0xff, 0x56, 0x6c, 0x18, 0xe2}
3397 DEFINE_GUID
!{IID_ID3D11DeviceContext
,
3398 0xc0bfa96c, 0xe089, 0x44fb, 0x8e, 0xaf, 0x26, 0xf8, 0x79, 0x61, 0x90, 0xda}
3399 DEFINE_GUID
!{IID_ID3D11VideoDecoder
,
3400 0x3c9c5b51, 0x995d, 0x48d1, 0x9b, 0x8d, 0xfa, 0x5c, 0xae, 0xde, 0xd6, 0x5c}
3401 DEFINE_GUID
!{IID_ID3D11VideoProcessorEnumerator
,
3402 0x31627037, 0x53ab, 0x4200, 0x90, 0x61, 0x05, 0xfa, 0xa9, 0xab, 0x45, 0xf9}
3403 DEFINE_GUID
!{IID_ID3D11VideoProcessor
,
3404 0x1d7b0652, 0x185f, 0x41c6, 0x85, 0xce, 0x0c, 0x5b, 0xe3, 0xd4, 0xae, 0x6c}
3405 DEFINE_GUID
!{IID_ID3D11AuthenticatedChannel
,
3406 0x3015a308, 0xdcbd, 0x47aa, 0xa7, 0x47, 0x19, 0x24, 0x86, 0xd1, 0x4d, 0x4a}
3407 DEFINE_GUID
!{IID_ID3D11CryptoSession
,
3408 0x9b32f9ad, 0xbdcc, 0x40a6, 0xa3, 0x9d, 0xd5, 0xc8, 0x65, 0x84, 0x57, 0x20}
3409 DEFINE_GUID
!{IID_ID3D11VideoDecoderOutputView
,
3410 0xc2931aea, 0x2a85, 0x4f20, 0x86, 0x0f, 0xfb, 0xa1, 0xfd, 0x25, 0x6e, 0x18}
3411 DEFINE_GUID
!{IID_ID3D11VideoProcessorInputView
,
3412 0x11ec5a5f, 0x51dc, 0x4945, 0xab, 0x34, 0x6e, 0x8c, 0x21, 0x30, 0x0e, 0xa5}
3413 DEFINE_GUID
!{IID_ID3D11VideoProcessorOutputView
,
3414 0xa048285e, 0x25a9, 0x4527, 0xbd, 0x93, 0xd6, 0x8b, 0x68, 0xc4, 0x42, 0x54}
3415 DEFINE_GUID
!{IID_ID3D11VideoContext
,
3416 0x61f21c45, 0x3c0e, 0x4a74, 0x9c, 0xea, 0x67, 0x10, 0x0d, 0x9a, 0xd5, 0xe4}
3417 DEFINE_GUID
!{IID_ID3D11VideoDevice
,
3418 0x10ec4d5b, 0x975a, 0x4689, 0xb9, 0xe4, 0xd0, 0xaa, 0xc3, 0x0f, 0xe3, 0x33}
3419 DEFINE_GUID
!{IID_ID3D11Device
,
3420 0xdb6f6ddb, 0xac77, 0x4e88, 0x82, 0x53, 0x81, 0x9d, 0xf9, 0xbb, 0xf1, 0x40}