23import "d3dcommon.idl";
30interface ID3D11Device;
31interface ID3D11ClassLinkage;
32interface ID3D11Resource;
33interface ID3D11VideoProcessorInputView;
38const UINT D3D11_16BIT_INDEX_STRIP_CUT_VALUE = 0xffff;
39const UINT D3D11_32BIT_INDEX_STRIP_CUT_VALUE = 0xffffffff;
40const UINT D3D11_8BIT_INDEX_STRIP_CUT_VALUE = 0xff;
42const UINT D3D11_ARRAY_AXIS_ADDRESS_RANGE_BIT_COUNT = 9;
44const UINT D3D11_CLIP_OR_CULL_DISTANCE_COUNT = 8;
45const UINT D3D11_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT = 2;
47const UINT D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT = 14;
48const UINT D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENTS = 4;
49const UINT D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT = 32;
50const UINT D3D11_COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT = 15;
51const UINT D3D11_COMMONSHADER_CONSTANT_BUFFER_PARTIAL_UPDATE_EXTENTS_BYTE_ALIGNMENT = 16;
52const UINT D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS = 4;
53const UINT D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT = 15;
54const UINT D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST = 1;
55const UINT D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS = 1;
56const UINT D3D11_COMMONSHADER_FLOWCONTROL_NESTING_LIMIT = 64;
57const UINT D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS = 4;
58const UINT D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT = 1;
59const UINT D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST = 1;
60const UINT D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS = 1;
61const UINT D3D11_COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT = 32;
62const UINT D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS = 1;
63const UINT D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT = 128;
64const UINT D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST = 1;
65const UINT D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS = 1;
66const UINT D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT = 128;
67const UINT D3D11_COMMONSHADER_SAMPLER_REGISTER_COMPONENTS = 1;
68const UINT D3D11_COMMONSHADER_SAMPLER_REGISTER_COUNT = 16;
69const UINT D3D11_COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST = 1;
70const UINT D3D11_COMMONSHADER_SAMPLER_REGISTER_READ_PORTS = 1;
71const UINT D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT = 16;
72const UINT D3D11_COMMONSHADER_SUBROUTINE_NESTING_LIMIT = 32;
73const UINT D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENTS = 4;
74const UINT D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT = 32;
75const UINT D3D11_COMMONSHADER_TEMP_REGISTER_COUNT = 4096;
76const UINT D3D11_COMMONSHADER_TEMP_REGISTER_READS_PER_INST = 3;
77const UINT D3D11_COMMONSHADER_TEMP_REGISTER_READ_PORTS = 3;
78const UINT D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX = 10;
79const INT D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN = -10;
80const INT D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE = -8;
81const UINT D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE = 7;
83const UINT D3D11_CS_4_X_BUCKET00_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 256;
84const UINT D3D11_CS_4_X_BUCKET00_MAX_NUM_THREADS_PER_GROUP = 64;
85const UINT D3D11_CS_4_X_BUCKET01_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 240;
86const UINT D3D11_CS_4_X_BUCKET01_MAX_NUM_THREADS_PER_GROUP = 68;
87const UINT D3D11_CS_4_X_BUCKET02_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 224;
88const UINT D3D11_CS_4_X_BUCKET02_MAX_NUM_THREADS_PER_GROUP = 72;
89const UINT D3D11_CS_4_X_BUCKET03_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 208;
90const UINT D3D11_CS_4_X_BUCKET03_MAX_NUM_THREADS_PER_GROUP = 76;
91const UINT D3D11_CS_4_X_BUCKET04_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 192;
92const UINT D3D11_CS_4_X_BUCKET04_MAX_NUM_THREADS_PER_GROUP = 84;
93const UINT D3D11_CS_4_X_BUCKET05_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 176;
94const UINT D3D11_CS_4_X_BUCKET05_MAX_NUM_THREADS_PER_GROUP = 92;
95const UINT D3D11_CS_4_X_BUCKET06_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 160;
96const UINT D3D11_CS_4_X_BUCKET06_MAX_NUM_THREADS_PER_GROUP = 100;
97const UINT D3D11_CS_4_X_BUCKET07_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 144;
98const UINT D3D11_CS_4_X_BUCKET07_MAX_NUM_THREADS_PER_GROUP = 112;
99const UINT D3D11_CS_4_X_BUCKET08_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 128;
100const UINT D3D11_CS_4_X_BUCKET08_MAX_NUM_THREADS_PER_GROUP = 128;
101const UINT D3D11_CS_4_X_BUCKET09_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 112;
102const UINT D3D11_CS_4_X_BUCKET09_MAX_NUM_THREADS_PER_GROUP = 144;
103const UINT D3D11_CS_4_X_BUCKET10_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 96;
104const UINT D3D11_CS_4_X_BUCKET10_MAX_NUM_THREADS_PER_GROUP = 168;
105const UINT D3D11_CS_4_X_BUCKET11_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 80;
106const UINT D3D11_CS_4_X_BUCKET11_MAX_NUM_THREADS_PER_GROUP = 204;
107const UINT D3D11_CS_4_X_BUCKET12_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 64;
108const UINT D3D11_CS_4_X_BUCKET12_MAX_NUM_THREADS_PER_GROUP = 256;
109const UINT D3D11_CS_4_X_BUCKET13_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 48;
110const UINT D3D11_CS_4_X_BUCKET13_MAX_NUM_THREADS_PER_GROUP = 340;
111const UINT D3D11_CS_4_X_BUCKET14_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 32;
112const UINT D3D11_CS_4_X_BUCKET14_MAX_NUM_THREADS_PER_GROUP = 512;
113const UINT D3D11_CS_4_X_BUCKET15_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 16;
114const UINT D3D11_CS_4_X_BUCKET15_MAX_NUM_THREADS_PER_GROUP = 768;
115const UINT D3D11_CS_4_X_DISPATCH_MAX_THREAD_GROUPS_IN_Z_DIMENSION = 1;
116const UINT D3D11_CS_4_X_RAW_UAV_BYTE_ALIGNMENT = 256;
117const UINT D3D11_CS_4_X_THREAD_GROUP_MAX_THREADS_PER_GROUP = 768;
118const UINT D3D11_CS_4_X_THREAD_GROUP_MAX_X = 768;
119const UINT D3D11_CS_4_X_THREAD_GROUP_MAX_Y = 768;
120const UINT D3D11_CS_4_X_UAV_REGISTER_COUNT = 1;
121const UINT D3D11_CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION = 65535;
122const UINT D3D11_CS_TGSM_REGISTER_COUNT = 8192;
123const UINT D3D11_CS_TGSM_REGISTER_READS_PER_INST = 1;
124const UINT D3D11_CS_TGSM_RESOURCE_REGISTER_COMPONENTS = 1;
125const UINT D3D11_CS_TGSM_RESOURCE_REGISTER_READ_PORTS = 1;
126const UINT D3D11_CS_THREAD_GROUP_MAX_THREADS_PER_GROUP = 1024;
127const UINT D3D11_CS_THREAD_GROUP_MAX_X = 1024;
128const UINT D3D11_CS_THREAD_GROUP_MAX_Y = 1024;
129const UINT D3D11_CS_THREAD_GROUP_MAX_Z = 64;
130const UINT D3D11_CS_THREAD_GROUP_MIN_X = 1;
131const UINT D3D11_CS_THREAD_GROUP_MIN_Y = 1;
132const UINT D3D11_CS_THREAD_GROUP_MIN_Z = 1;
133const UINT D3D11_CS_THREAD_LOCAL_TEMP_REGISTER_POOL = 16384;
135const UINT D3D11_DEFAULT_DEPTH_BIAS = 0;
136cpp_quote("#define D3D11_DEFAULT_DEPTH_BIAS_CLAMP 0.0f")
137const UINT D3D11_DEFAULT_MAX_ANISOTROPY = 16;
138cpp_quote("#define D3D11_DEFAULT_MIP_LOD_BIAS 0.0f")
139const UINT D3D11_DEFAULT_RENDER_TARGET_ARRAY_INDEX = 0;
140const UINT D3D11_DEFAULT_SAMPLE_MASK = 0xffffffff;
141const UINT D3D11_DEFAULT_SCISSOR_ENDX = 0;
142const UINT D3D11_DEFAULT_SCISSOR_ENDY = 0;
143const UINT D3D11_DEFAULT_SCISSOR_STARTX = 0;
144const UINT D3D11_DEFAULT_SCISSOR_STARTY = 0;
145cpp_quote("#define D3D11_DEFAULT_SLOPE_SCALED_DEPTH_BIAS 0.0f")
146const UINT D3D11_DEFAULT_STENCIL_READ_MASK = 0xff;
147const UINT D3D11_DEFAULT_STENCIL_REFERENCE = 0;
148const UINT D3D11_DEFAULT_STENCIL_WRITE_MASK = 0xff;
149const UINT D3D11_DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX = 0;
150const UINT D3D11_DEFAULT_VIEWPORT_HEIGHT = 0;
151cpp_quote("#define D3D11_DEFAULT_VIEWPORT_MAX_DEPTH 0.0f")
152cpp_quote("#define D3D11_DEFAULT_VIEWPORT_MIN_DEPTH 0.0f")
153const UINT D3D11_DEFAULT_VIEWPORT_TOPLEFTX = 0;
154const UINT D3D11_DEFAULT_VIEWPORT_TOPLEFTY = 0;
155const UINT D3D11_DEFAULT_VIEWPORT_WIDTH = 0;
157cpp_quote("#define D3D11_FLOAT32_MAX (3.402823466e+38f)")
159const UINT D3D11_IA_DEFAULT_INDEX_BUFFER_OFFSET_IN_BYTES = 0;
160const UINT D3D11_IA_DEFAULT_PRIMITIVE_TOPOLOGY = 0;
161const UINT D3D11_IA_DEFAULT_VERTEX_BUFFER_OFFSET_IN_BYTES = 0;
162const UINT D3D11_IA_INDEX_INPUT_RESOURCE_SLOT_COUNT = 1;
163const UINT D3D11_IA_INSTANCE_ID_BIT_COUNT = 32;
164const UINT D3D11_IA_INTEGER_ARITHMETIC_BIT_COUNT = 32;
165const UINT D3D11_IA_PATCH_MAX_CONTROL_POINT_COUNT = 32;
166const UINT D3D11_IA_PRIMITIVE_ID_BIT_COUNT = 32;
167const UINT D3D11_IA_VERTEX_ID_BIT_COUNT = 32;
168const UINT D3D11_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT = 32;
169const UINT D3D11_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS = 128;
170const UINT D3D11_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT = 32;
172const unsigned int D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT = 8;
174const UINT D3D11_MAX_MAXANISOTROPY = 16;
175const UINT D3D11_MAX_MULTISAMPLE_SAMPLE_COUNT = 32;
176const UINT D3D11_VIEWPORT_BOUNDS_MAX = 32767;
177const INT D3D11_VIEWPORT_BOUNDS_MIN = -32768;
178const UINT D3D11_VIEWPORT_AND_SCISSORRECT_MAX_INDEX = 15;
179const UINT D3D11_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE = 16;
181const UINT D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL = 0xffffffff;
182const UINT D3D11_KEEP_UNORDERED_ACCESS_VIEWS = 0xffffffff;
184const UINT D3D11_SHADER_MAJOR_VERSION = 5;
185const UINT D3D11_SHADER_MAX_INSTANCES = 65535;
186const UINT D3D11_SHADER_MAX_INTERFACES = 253;
187const UINT D3D11_SHADER_MAX_INTERFACE_CALL_SITES = 4096;
188const UINT D3D11_SHADER_MAX_TYPES = 65535;
189const UINT D3D11_SHADER_MINOR_VERSION = 0;
190const UINT D3D11_VS_OUTPUT_REGISTER_COUNT = 32;
192const UINT D3D11_OMAC_SIZE = 16;
194const UINT D3D11_PS_CS_UAV_REGISTER_COMPONENTS = 1;
195const UINT D3D11_PS_CS_UAV_REGISTER_COUNT = 8;
196const UINT D3D11_PS_CS_UAV_REGISTER_READS_PER_INST = 1;
197const UINT D3D11_PS_CS_UAV_REGISTER_READ_PORTS = 1;
198const UINT D3D11_PS_FRONTFACING_DEFAULT_VALUE = 0xffffffff;
199const UINT D3D11_PS_FRONTFACING_FALSE_VALUE = 0;
200const UINT D3D11_PS_FRONTFACING_TRUE_VALUE = 0xffffffff;
201const UINT D3D11_PS_INPUT_REGISTER_COMPONENTS = 4;
202const UINT D3D11_PS_INPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
203const UINT D3D11_PS_INPUT_REGISTER_COUNT = 32;
204const UINT D3D11_PS_INPUT_REGISTER_READS_PER_INST = 2;
205const UINT D3D11_PS_INPUT_REGISTER_READ_PORTS = 1;
206cpp_quote("#define D3D11_PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT (0.0f)")
207const UINT D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENTS = 1;
208const UINT D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT = 32;
209const UINT D3D11_PS_OUTPUT_DEPTH_REGISTER_COUNT = 1;
210const UINT D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENTS = 1;
211const UINT D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENT_BIT_COUNT = 32;
212const UINT D3D11_PS_OUTPUT_MASK_REGISTER_COUNT = 1;
213const UINT D3D11_PS_OUTPUT_REGISTER_COMPONENTS = 4;
214const UINT D3D11_PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
215const UINT D3D11_PS_OUTPUT_REGISTER_COUNT = 8;
216cpp_quote("#define D3D11_PS_PIXEL_CENTER_FRACTIONAL_COMPONENT (0.5f)")
218const UINT D3D11_RAW_UAV_SRV_BYTE_ALIGNMENT = 16;
220const UINT D3D11_REQ_BLEND_OBJECT_COUNT_PER_DEVICE = 4096;
221const UINT D3D11_REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP = 27;
222const UINT D3D11_REQ_CONSTANT_BUFFER_ELEMENT_COUNT = 4096;
223const UINT D3D11_REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_DEVICE = 4096;
224const UINT D3D11_REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP = 32;
225const UINT D3D11_REQ_DRAW_VERTEX_COUNT_2_TO_EXP = 32;
226const UINT D3D11_REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION = 16384;
227const UINT D3D11_REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT = 1024;
228const UINT D3D11_REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT = 4096;
229const UINT D3D11_REQ_MAXANISOTROPY = 16;
230const UINT D3D11_REQ_MIP_LEVELS = 15;
231const UINT D3D11_REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES = 2048;
232const UINT D3D11_REQ_RASTERIZER_OBJECT_COUNT_PER_DEVICE = 4096;
233const UINT D3D11_REQ_RENDER_TO_BUFFER_WINDOW_WIDTH = 16384;
234const UINT D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM = 128;
235cpp_quote("#define D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_B_TERM (0.25f)")
236const UINT D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_C_TERM = 2048;
237const UINT D3D11_REQ_RESOURCE_VIEW_COUNT_PER_DEVICE_2_TO_EXP = 20;
238const UINT D3D11_REQ_SAMPLER_OBJECT_COUNT_PER_DEVICE = 4096;
239const UINT D3D11_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION = 2048;
240const UINT D3D11_REQ_TEXTURE1D_U_DIMENSION = 16384;
241const UINT D3D11_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION = 2048;
242const UINT D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION = 16384;
243const UINT D3D11_REQ_TEXTURE3D_U_V_OR_W_DIMENSION = 2048;
244const UINT D3D11_REQ_TEXTURECUBE_DIMENSION = 16384;
246const UINT D3D11_RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL = 0;
248const UINT D3D11_SHIFT_INSTRUCTION_PAD_VALUE = 0;
249const UINT D3D11_SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT = 5;
251const UINT D3D11_SO_BUFFER_MAX_STRIDE_IN_BYTES = 2048;
252const UINT D3D11_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES = 512;
253const UINT D3D11_SO_BUFFER_SLOT_COUNT = 4;
254const UINT D3D11_SO_DDI_REGISTER_INDEX_DENOTING_GAP = 0xffffffff;
255const UINT D3D11_SO_NO_RASTERIZED_STREAM = 0xffffffff;
256const UINT D3D11_SO_OUTPUT_COMPONENT_COUNT = 128;
257const UINT D3D11_SO_STREAM_COUNT = 4;
259const UINT D3D11_SPEC_DATE_DAY = 16;
260const UINT D3D11_SPEC_DATE_MONTH = 05;
261const UINT D3D11_SPEC_DATE_YEAR = 2011;
263cpp_quote("#define D3D11_SPEC_VERSION (1.07)")
264cpp_quote("#define D3D11_SRGB_GAMMA (2.2f)")
265cpp_quote("#define D3D11_SRGB_TO_FLOAT_DENOMINATOR_1 (12.92f)")
266cpp_quote("#define D3D11_SRGB_TO_FLOAT_DENOMINATOR_2 (1.055f)")
267cpp_quote("#define D3D11_SRGB_TO_FLOAT_EXPONENT (2.4f)")
268cpp_quote("#define D3D11_SRGB_TO_FLOAT_OFFSET (0.055f)")
269cpp_quote("#define D3D11_SRGB_TO_FLOAT_THRESHOLD (0.04045f)")
270cpp_quote("#define D3D11_SRGB_TO_FLOAT_TOLERANCE_IN_ULP (0.5f)")
272const UINT D3D11_STANDARD_COMPONENT_BIT_COUNT = 32;
273const UINT D3D11_STANDARD_COMPONENT_BIT_COUNT_DOUBLED = 64;
274const UINT D3D11_STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE = 4;
275const UINT D3D11_STANDARD_PIXEL_COMPONENT_COUNT = 128;
276const UINT D3D11_STANDARD_PIXEL_ELEMENT_COUNT = 32;
277const UINT D3D11_STANDARD_VECTOR_SIZE = 4;
278const UINT D3D11_STANDARD_VERTEX_ELEMENT_COUNT = 32;
279const UINT D3D11_STANDARD_VERTEX_TOTAL_COMPONENT_COUNT = 64;
283cpp_quote("#ifndef _D3D11_1_CONSTANTS")
284cpp_quote("#define _D3D11_1_CONSTANTS")
285const UINT D3D11_1_UAV_SLOT_COUNT = 64;
288cpp_quote("#ifndef _D3D11_2_CONSTANTS")
289cpp_quote("#define _D3D11_2_CONSTANTS")
290const UINT D3D11_2_TILED_RESOURCE_TILE_SIZE_IN_BYTES = 0x10000;
293cpp_quote("#if !defined(D3D11_NO_HELPERS) && defined(__cplusplus)")
294cpp_quote("struct CD3D11_DEFAULT {};")
295cpp_quote("extern const DECLSPEC_SELECTANY CD3D11_DEFAULT D3D11_DEFAULT;")
298typedef enum D3D11_BLEND
300 D3D11_BLEND_ZERO = 1,
302 D3D11_BLEND_SRC_COLOR = 3,
303 D3D11_BLEND_INV_SRC_COLOR = 4,
304 D3D11_BLEND_SRC_ALPHA = 5,
305 D3D11_BLEND_INV_SRC_ALPHA = 6,
306 D3D11_BLEND_DEST_ALPHA = 7,
307 D3D11_BLEND_INV_DEST_ALPHA = 8,
308 D3D11_BLEND_DEST_COLOR = 9,
309 D3D11_BLEND_INV_DEST_COLOR = 10,
310 D3D11_BLEND_SRC_ALPHA_SAT = 11,
311 D3D11_BLEND_BLEND_FACTOR = 14,
312 D3D11_BLEND_INV_BLEND_FACTOR = 15,
313 D3D11_BLEND_SRC1_COLOR = 16,
314 D3D11_BLEND_INV_SRC1_COLOR = 17,
315 D3D11_BLEND_SRC1_ALPHA = 18,
316 D3D11_BLEND_INV_SRC1_ALPHA = 19,
319typedef enum D3D11_BLEND_OP
321 D3D11_BLEND_OP_ADD = 1,
322 D3D11_BLEND_OP_SUBTRACT,
323 D3D11_BLEND_OP_REV_SUBTRACT,
328typedef enum D3D11_VIDEO_DECODER_BUFFER_TYPE
330 D3D11_VIDEO_DECODER_BUFFER_PICTURE_PARAMETERS = 0,
331 D3D11_VIDEO_DECODER_BUFFER_MACROBLOCK_CONTROL = 1,
332 D3D11_VIDEO_DECODER_BUFFER_RESIDUAL_DIFFERENCE = 2,
333 D3D11_VIDEO_DECODER_BUFFER_DEBLOCKING_CONTROL = 3,
334 D3D11_VIDEO_DECODER_BUFFER_INVERSE_QUANTIZATION_MATRIX = 4,
335 D3D11_VIDEO_DECODER_BUFFER_SLICE_CONTROL = 5,
336 D3D11_VIDEO_DECODER_BUFFER_BITSTREAM = 6,
337 D3D11_VIDEO_DECODER_BUFFER_MOTION_VECTOR = 7,
338 D3D11_VIDEO_DECODER_BUFFER_FILM_GRAIN = 8,
339} D3D11_VIDEO_DECODER_BUFFER_TYPE;
341typedef enum D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE
343 D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_OPAQUE = 0,
344 D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_BACKGROUND = 1,
345 D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_DESTINATION = 2,
346 D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_SOURCE_STREAM = 3,
347} D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE;
349typedef enum D3D11_VIDEO_PROCESSOR_OUTPUT_RATE
351 D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_NORMAL = 0,
352 D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_HALF = 1,
353 D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_CUSTOM = 2,
354} D3D11_VIDEO_PROCESSOR_OUTPUT_RATE;
356typedef enum D3D11_VIDEO_PROCESSOR_STEREO_FORMAT
358 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO = 0,
359 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_HORIZONTAL = 1,
360 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_VERTICAL = 2,
361 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_SEPARATE = 3,
362 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO_OFFSET = 4,
363 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_ROW_INTERLEAVED = 5,
364 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_COLUMN_INTERLEAVED = 6,
365 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_CHECKERBOARD = 7,
366} D3D11_VIDEO_PROCESSOR_STEREO_FORMAT;
368typedef enum D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE
370 D3D11_VIDEO_PROCESSOR_STEREO_FLIP_NONE = 0,
371 D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME0 = 1,
372 D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME1 = 2,
373} D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE;
375typedef enum D3D11_VIDEO_PROCESSOR_ROTATION
377 D3D11_VIDEO_PROCESSOR_ROTATION_IDENTITY = 0,
378 D3D11_VIDEO_PROCESSOR_ROTATION_90 = 1,
379 D3D11_VIDEO_PROCESSOR_ROTATION_180 = 2,
380 D3D11_VIDEO_PROCESSOR_ROTATION_270 = 3,
381} D3D11_VIDEO_PROCESSOR_ROTATION;
383typedef enum D3D11_VIDEO_PROCESSOR_DEVICE_CAPS
385 D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_LINEAR_SPACE = 0x00000001,
386 D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_xvYCC = 0x00000002,
387 D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_RGB_RANGE_CONVERSION = 0x00000004,
388 D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_YCbCr_MATRIX_CONVERSION = 0x00000008,
389 D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_NOMINAL_RANGE = 0x00000010,
390} D3D11_VIDEO_PROCESSOR_DEVICE_CAPS;
392typedef enum D3D11_VIDEO_PROCESSOR_FEATURE_CAPS
394 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_FILL = 0x00000001,
395 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_CONSTRICTION = 0x00000002,
396 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_LUMA_KEY = 0x00000004,
397 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_PALETTE = 0x00000008,
398 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_LEGACY = 0x00000010,
399 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_STEREO = 0x00000020,
400 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ROTATION = 0x00000040,
401 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_STREAM = 0x00000080,
402 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_PIXEL_ASPECT_RATIO = 0x00000100,
403 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_MIRROR = 0x00000200,
404 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_SHADER_USAGE = 0x00000400,
405 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_METADATA_HDR10 = 0x00000800,
406} D3D11_VIDEO_PROCESSOR_FEATURE_CAPS;
408typedef enum D3D11_VIDEO_PROCESSOR_FILTER_CAPS
410 D3D11_VIDEO_PROCESSOR_FILTER_CAPS_BRIGHTNESS = 0x00000001,
411 D3D11_VIDEO_PROCESSOR_FILTER_CAPS_CONTRAST = 0x00000002,
412 D3D11_VIDEO_PROCESSOR_FILTER_CAPS_HUE = 0x00000004,
413 D3D11_VIDEO_PROCESSOR_FILTER_CAPS_SATURATION = 0x00000008,
414 D3D11_VIDEO_PROCESSOR_FILTER_CAPS_NOISE_REDUCTION = 0x00000010,
415 D3D11_VIDEO_PROCESSOR_FILTER_CAPS_EDGE_ENHANCEMENT = 0x00000020,
416 D3D11_VIDEO_PROCESSOR_FILTER_CAPS_ANAMORPHIC_SCALING = 0x00000040,
417 D3D11_VIDEO_PROCESSOR_FILTER_CAPS_STEREO_ADJUSTMENT = 0x00000080,
418} D3D11_VIDEO_PROCESSOR_FILTER_CAPS;
420typedef enum D3D11_VIDEO_PROCESSOR_FORMAT_CAPS
422 D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_INTERLACED = 0x00000001,
423 D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_PROCAMP = 0x00000002,
424 D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_LUMA_KEY = 0x00000004,
425 D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_PALETTE_INTERLACED = 0x00000008,
426} D3D11_VIDEO_PROCESSOR_FORMAT_CAPS;
428typedef enum D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS
430 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_DENOISE = 0x00000001,
431 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_DERINGING = 0x00000002,
432 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_EDGE_ENHANCEMENT = 0x00000004,
433 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_COLOR_CORRECTION = 0x00000008,
434 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_FLESH_TONE_MAPPING = 0x00000010,
435 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_IMAGE_STABILIZATION = 0x00000020,
436 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_SUPER_RESOLUTION = 0x00000040,
437 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_ANAMORPHIC_SCALING = 0x00000080,
438} D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS;
440typedef enum D3D11_VIDEO_PROCESSOR_STEREO_CAPS
442 D3D11_VIDEO_PROCESSOR_STEREO_CAPS_MONO_OFFSET = 0x00000001,
443 D3D11_VIDEO_PROCESSOR_STEREO_CAPS_ROW_INTERLEAVED = 0x00000002,
444 D3D11_VIDEO_PROCESSOR_STEREO_CAPS_COLUMN_INTERLEAVED = 0x00000004,
445 D3D11_VIDEO_PROCESSOR_STEREO_CAPS_CHECKERBOARD = 0x00000008,
446 D3D11_VIDEO_PROCESSOR_STEREO_CAPS_FLIP_MODE = 0x00000010,
447} D3D11_VIDEO_PROCESSOR_STEREO_CAPS;
449typedef enum D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS
451 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_BLEND = 0x01,
452 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_BOB = 0x02,
453 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_ADAPTIVE = 0x04,
454 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_MOTION_COMPENSATION = 0x08,
455 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_INVERSE_TELECINE = 0x10,
456 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_FRAME_RATE_CONVERSION = 0x20,
457} D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS;
459typedef enum D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS
461 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_32 = 0x00000001,
462 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_22 = 0x00000002,
463 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_2224 = 0x00000004,
464 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_2332 = 0x00000008,
465 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_32322 = 0x00000010,
466 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_55 = 0x00000020,
467 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_64 = 0x00000040,
468 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_87 = 0x00000080,
469 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_222222222223 = 0x00000100,
470 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_OTHER = 0x80000000,
471} D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS;
473typedef enum D3D11_CONTENT_PROTECTION_CAPS
475 D3D11_CONTENT_PROTECTION_CAPS_SOFTWARE = 0x00000001,
476 D3D11_CONTENT_PROTECTION_CAPS_HARDWARE = 0x00000002,
477 D3D11_CONTENT_PROTECTION_CAPS_PROTECTION_ALWAYS_ON = 0x00000004,
478 D3D11_CONTENT_PROTECTION_CAPS_PARTIAL_DECRYPTION = 0x00000008,
479 D3D11_CONTENT_PROTECTION_CAPS_CONTENT_KEY = 0x00000010,
480 D3D11_CONTENT_PROTECTION_CAPS_FRESHEN_SESSION_KEY = 0x00000020,
481 D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK = 0x00000040,
482 D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK_KEY = 0x00000080,
483 D3D11_CONTENT_PROTECTION_CAPS_SEQUENTIAL_CTR_IV = 0x00000100,
484 D3D11_CONTENT_PROTECTION_CAPS_ENCRYPT_SLICEDATA_ONLY = 0x00000200,
485 D3D11_CONTENT_PROTECTION_CAPS_DECRYPTION_BLT = 0x00000400,
486 D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_PROTECT_UNCOMPRESSED = 0x00000800,
487 D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_PROTECTED_MEMORY_PAGEABLE = 0x00001000,
488 D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_TEARDOWN = 0x00002000,
489 D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_DRM_COMMUNICATION = 0x00004000,
490} D3D11_CONTENT_PROTECTION_CAPS;
492typedef enum D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE
494 D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_UNDEFINED = 0x00000000,
495 D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_16_235 = 0x00000001,
496 D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_0_255 = 0x00000002,
497} D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE;
499typedef enum D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE
501 D3D11_PROCESSIDTYPE_UNKNOWN = 0x00000000,
502 D3D11_PROCESSIDTYPE_DWM = 0x00000001,
503 D3D11_PROCESSIDTYPE_HANDLE = 0x00000002,
504} D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE;
506typedef enum D3D11_BUS_TYPE
508 D3D11_BUS_TYPE_OTHER = 0x00000000,
509 D3D11_BUS_TYPE_PCI = 0x00000001,
510 D3D11_BUS_TYPE_PCIX = 0x00000002,
511 D3D11_BUS_TYPE_PCIEXPRESS = 0x00000003,
512 D3D11_BUS_TYPE_AGP = 0x00000004,
513 D3D11_BUS_IMPL_MODIFIER_INSIDE_OF_CHIPSET = 0x00010000,
514 D3D11_BUS_IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_CHIP = 0x00020000,
515 D3D11_BUS_IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_SOCKET = 0x00030000,
516 D3D11_BUS_IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR = 0x00040000,
517 D3D11_BUS_IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR_INSIDE_OF_NUAE = 0x00050000,
518 D3D11_BUS_IMPL_MODIFIER_NON_STANDARD = 0x80000000,
521typedef struct D3D11_BOX
531typedef struct D3D11_BUFFER_RTV
545typedef struct D3D11_BUFFER_SRV
559typedef struct D3D11_BUFFER_UAV
566typedef struct D3D11_BUFFEREX_SRV
573typedef struct D3D11_CLASS_INSTANCE_DESC
579 UINT BaseConstantBufferOffset;
583} D3D11_CLASS_INSTANCE_DESC;
585typedef enum D3D11_COMPARISON_FUNC
587 D3D11_COMPARISON_NEVER = 1,
588 D3D11_COMPARISON_LESS,
589 D3D11_COMPARISON_EQUAL,
590 D3D11_COMPARISON_LESS_EQUAL,
591 D3D11_COMPARISON_GREATER,
592 D3D11_COMPARISON_NOT_EQUAL,
593 D3D11_COMPARISON_GREATER_EQUAL,
594 D3D11_COMPARISON_ALWAYS
595} D3D11_COMPARISON_FUNC;
597typedef enum D3D11_COUNTER
599 D3D11_COUNTER_DEVICE_DEPENDENT_0 = 0x40000000,
602typedef struct D3D11_COUNTER_DESC
604 D3D11_COUNTER Counter;
608typedef struct D3D11_COUNTER_INFO
610 D3D11_COUNTER LastDeviceDependentCounter;
611 UINT NumSimultaneousCounters;
612 UINT8 NumDetectableParallelUnits;
615typedef enum D3D11_COUNTER_TYPE
617 D3D11_COUNTER_TYPE_FLOAT32,
618 D3D11_COUNTER_TYPE_UINT16,
619 D3D11_COUNTER_TYPE_UINT32,
620 D3D11_COUNTER_TYPE_UINT64,
623typedef enum D3D11_CULL_MODE
630typedef enum D3D11_DEPTH_WRITE_MASK
632 D3D11_DEPTH_WRITE_MASK_ZERO,
633 D3D11_DEPTH_WRITE_MASK_ALL,
634} D3D11_DEPTH_WRITE_MASK;
636typedef enum D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS
638 D3D11_STANDARD_MULTISAMPLE_PATTERN = 0xffffffff,
639 D3D11_CENTER_MULTISAMPLE_PATTERN = 0xfffffffe,
640} D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS;
642typedef enum D3D11_DEVICE_CONTEXT_TYPE
644 D3D11_DEVICE_CONTEXT_IMMEDIATE,
645 D3D11_DEVICE_CONTEXT_DEFERRED,
646} D3D11_DEVICE_CONTEXT_TYPE;
648typedef enum D3D11_DSV_DIMENSION
650 D3D11_DSV_DIMENSION_UNKNOWN,
651 D3D11_DSV_DIMENSION_TEXTURE1D,
652 D3D11_DSV_DIMENSION_TEXTURE1DARRAY,
653 D3D11_DSV_DIMENSION_TEXTURE2D,
654 D3D11_DSV_DIMENSION_TEXTURE2DARRAY,
655 D3D11_DSV_DIMENSION_TEXTURE2DMS,
656 D3D11_DSV_DIMENSION_TEXTURE2DMSARRAY,
657} D3D11_DSV_DIMENSION;
659typedef enum D3D11_FEATURE
661 D3D11_FEATURE_THREADING,
662 D3D11_FEATURE_DOUBLES,
663 D3D11_FEATURE_FORMAT_SUPPORT,
664 D3D11_FEATURE_FORMAT_SUPPORT2,
665 D3D11_FEATURE_D3D10_X_HARDWARE_OPTIONS,
666 D3D11_FEATURE_D3D11_OPTIONS,
667 D3D11_FEATURE_ARCHITECTURE_INFO,
668 D3D11_FEATURE_D3D9_OPTIONS,
669 D3D11_FEATURE_SHADER_MIN_PRECISION_SUPPORT,
670 D3D11_FEATURE_D3D9_SHADOW_SUPPORT,
671 D3D11_FEATURE_D3D11_OPTIONS1,
672 D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT,
673 D3D11_FEATURE_MARKER_SUPPORT,
674 D3D11_FEATURE_D3D9_OPTIONS1,
675 D3D11_FEATURE_D3D11_OPTIONS2,
676 D3D11_FEATURE_D3D11_OPTIONS3,
677 D3D11_FEATURE_GPU_VIRTUAL_ADDRESS_SUPPORT,
678 D3D11_FEATURE_D3D11_OPTIONS4,
679 D3D11_FEATURE_SHADER_CACHE,
680 D3D11_FEATURE_D3D11_OPTIONS5,
683typedef struct D3D11_FEATURE_DATA_THREADING
685 BOOL DriverConcurrentCreates;
686 BOOL DriverCommandLists;
687} D3D11_FEATURE_DATA_THREADING;
689typedef struct D3D11_FEATURE_DATA_DOUBLES
691 BOOL DoublePrecisionFloatShaderOps;
692} D3D11_FEATURE_DATA_DOUBLES;
694typedef struct D3D11_FEATURE_DATA_FORMAT_SUPPORT
696 DXGI_FORMAT InFormat;
697 UINT OutFormatSupport;
698} D3D11_FEATURE_DATA_FORMAT_SUPPORT;
700typedef struct D3D11_FEATURE_DATA_FORMAT_SUPPORT2
702 DXGI_FORMAT InFormat;
703 UINT OutFormatSupport2;
704} D3D11_FEATURE_DATA_FORMAT_SUPPORT2;
706typedef struct D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS
708 BOOL ComputeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x;
709} D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS;
711typedef struct D3D11_FEATURE_DATA_D3D11_OPTIONS
713 BOOL OutputMergerLogicOp;
714 BOOL UAVOnlyRenderingForcedSampleCount;
715 BOOL DiscardAPIsSeenByDriver;
716 BOOL FlagsForUpdateAndCopySeenByDriver;
718 BOOL CopyWithOverlap;
719 BOOL ConstantBufferPartialUpdate;
720 BOOL ConstantBufferOffsetting;
721 BOOL MapNoOverwriteOnDynamicConstantBuffer;
722 BOOL MapNoOverwriteOnDynamicBufferSRV;
723 BOOL MultisampleRTVWithForcedSampleCountOne;
724 BOOL SAD4ShaderInstructions;
725 BOOL ExtendedDoublesShaderInstructions;
726 BOOL ExtendedResourceSharing;
727} D3D11_FEATURE_DATA_D3D11_OPTIONS;
729typedef struct D3D11_FEATURE_DATA_ARCHITECTURE_INFO
731 BOOL TileBasedDeferredRenderer;
732} D3D11_FEATURE_DATA_ARCHITECTURE_INFO;
734typedef struct D3D11_FEATURE_DATA_D3D9_OPTIONS
736 BOOL FullNonPow2TextureSupport;
737} D3D11_FEATURE_DATA_D3D9_OPTIONS;
739typedef struct D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT
741 BOOL SupportsDepthAsTextureWithLessEqualComparisonFilter;
742} D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT;
744typedef enum D3D11_SHADER_MIN_PRECISION_SUPPORT
746 D3D11_SHADER_MIN_PRECISION_10_BIT = 0x1,
747 D3D11_SHADER_MIN_PRECISION_16_BIT = 0x2,
748} D3D11_SHADER_MIN_PRECISION_SUPPORT;
750typedef struct D3D11_FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT
752 UINT PixelShaderMinPrecision;
753 UINT AllOtherShaderStagesMinPrecision;
754} D3D11_FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT;
756typedef enum D3D11_TILED_RESOURCES_TIER
758 D3D11_TILED_RESOURCES_NOT_SUPPORTED = 0x0,
759 D3D11_TILED_RESOURCES_TIER_1 = 0x1,
760 D3D11_TILED_RESOURCES_TIER_2 = 0x2,
761 D3D11_TILED_RESOURCES_TIER_3 = 0x3,
762} D3D11_TILED_RESOURCES_TIER;
764typedef struct D3D11_FEATURE_DATA_D3D11_OPTIONS1
766 D3D11_TILED_RESOURCES_TIER TiledResourcesTier;
767 BOOL MinMaxFiltering;
768 BOOL ClearViewAlsoSupportsDepthOnlyFormats;
769 BOOL MapOnDefaultBuffers;
770} D3D11_FEATURE_DATA_D3D11_OPTIONS1;
772typedef struct D3D11_FEATURE_DATA_D3D9_SIMPLE_INSTANCING_SUPPORT
774 BOOL SimpleInstancingSupported;
775} D3D11_FEATURE_DATA_D3D9_SIMPLE_INSTANCING_SUPPORT;
777typedef struct D3D11_FEATURE_DATA_MARKER_SUPPORT
780} D3D11_FEATURE_DATA_MARKER_SUPPORT;
782typedef struct D3D11_FEATURE_DATA_D3D9_OPTIONS1
784 BOOL FullNonPow2TextureSupported;
785 BOOL DepthAsTextureWithLessEqualComparisonFilterSupported;
786 BOOL SimpleInstancingSupported;
787 BOOL TextureCubeFaceRenderTargetWithNonCubeDepthStencilSupported;
788} D3D11_FEATURE_DATA_D3D9_OPTIONS1;
790typedef enum D3D11_CONSERVATIVE_RASTERIZATION_TIER
792 D3D11_CONSERVATIVE_RASTERIZATION_NOT_SUPPORTED = 0x0,
793 D3D11_CONSERVATIVE_RASTERIZATION_TIER_1 = 0x1,
794 D3D11_CONSERVATIVE_RASTERIZATION_TIER_2 = 0x2,
795 D3D11_CONSERVATIVE_RASTERIZATION_TIER_3 = 0x3,
796} D3D11_CONSERVATIVE_RASTERIZATION_TIER;
798typedef struct D3D11_FEATURE_DATA_D3D11_OPTIONS2
800 BOOL PSSpecifiedStencilRefSupported;
801 BOOL TypedUAVLoadAdditionalFormats;
803 D3D11_CONSERVATIVE_RASTERIZATION_TIER ConservativeRasterizationTier;
804 D3D11_TILED_RESOURCES_TIER TiledResourcesTier;
805 BOOL MapOnDefaultTextures;
806 BOOL StandardSwizzle;
807 BOOL UnifiedMemoryArchitecture;
808} D3D11_FEATURE_DATA_D3D11_OPTIONS2;
810typedef struct D3D11_FEATURE_DATA_D3D11_OPTIONS3
812 BOOL VPAndRTArrayIndexFromAnyShaderFeedingRasterizer;
813} D3D11_FEATURE_DATA_D3D11_OPTIONS3;
815typedef struct D3D11_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT
817 UINT MaxGPUVirtualAddressBitsPerResource;
818 UINT MaxGPUVirtualAddressBitsPerProcess;
819} D3D11_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT;
821typedef enum D3D11_SHADER_CACHE_SUPPORT_FLAGS
823 D3D11_SHADER_CACHE_SUPPORT_NONE = 0x0,
824 D3D11_SHADER_CACHE_SUPPORT_AUTOMATIC_INPROC_CACHE = 0x1,
825 D3D11_SHADER_CACHE_SUPPORT_AUTOMATIC_DISK_CACHE = 0x2,
826} D3D11_SHADER_CACHE_SUPPORT_FLAGS;
828typedef struct D3D11_FEATURE_DATA_SHADER_CACHE
831} D3D11_FEATURE_DATA_SHADER_CACHE;
833typedef enum D3D11_SHARED_RESOURCE_TIER
835 D3D11_SHARED_RESOURCE_TIER_0,
836 D3D11_SHARED_RESOURCE_TIER_1,
837 D3D11_SHARED_RESOURCE_TIER_2,
838 D3D11_SHARED_RESOURCE_TIER_3,
839} D3D11_SHARED_RESOURCE_TIER;
841typedef struct D3D11_FEATURE_DATA_D3D11_OPTIONS5
843 D3D11_SHARED_RESOURCE_TIER SharedResourceTier;
844} D3D11_FEATURE_DATA_D3D11_OPTIONS5;
846typedef enum D3D11_FILL_MODE
848 D3D11_FILL_WIREFRAME = 2,
852typedef enum D3D11_FILTER_TYPE
854 D3D11_FILTER_TYPE_POINT = 0,
855 D3D11_FILTER_TYPE_LINEAR = 1
858const UINT D3D11_MIN_FILTER_SHIFT = 4;
859const UINT D3D11_MAG_FILTER_SHIFT = 2;
860const UINT D3D11_MIP_FILTER_SHIFT = 0;
861const UINT D3D11_FILTER_TYPE_MASK = 0x00000003;
862const UINT D3D11_COMPARISON_FILTERING_BIT = 0x00000080;
863const UINT D3D11_ANISOTROPIC_FILTERING_BIT = 0x00000040;
865cpp_quote("#define D3D11_ENCODE_BASIC_FILTER(min, mag, mip, bComparison) \\")
866cpp_quote(" ((D3D11_FILTER)(((bComparison) ? D3D11_COMPARISON_FILTERING_BIT : 0 ) | \\")
867cpp_quote(" (((min)&D3D11_FILTER_TYPE_MASK) << D3D11_MIN_FILTER_SHIFT) | \\")
868cpp_quote(" (((mag)&D3D11_FILTER_TYPE_MASK) << D3D11_MAG_FILTER_SHIFT) | \\")
869cpp_quote(" (((mip)&D3D11_FILTER_TYPE_MASK) << D3D11_MIP_FILTER_SHIFT)))")
871cpp_quote("#define D3D11_ENCODE_ANISOTROPIC_FILTER(bComparison) \\")
872cpp_quote(" ((D3D11_FILTER)(D3D11_ANISOTROPIC_FILTERING_BIT | \\" )
873cpp_quote(" D3D11_ENCODE_BASIC_FILTER(D3D11_FILTER_TYPE_LINEAR,D3D11_FILTER_TYPE_LINEAR, \\" )
874cpp_quote(" D3D11_FILTER_TYPE_LINEAR,bComparison)))" )
876cpp_quote("#define D3D11_DECODE_MIN_FILTER(d3d11Filter) \\")
877cpp_quote(" ((D3D11_FILTER_TYPE)(((d3d11Filter) >> D3D11_MIN_FILTER_SHIFT) & D3D11_FILTER_TYPE_MASK))")
879cpp_quote("#define D3D11_DECODE_MAG_FILTER(d3d11Filter) \\")
880cpp_quote(" ((D3D11_FILTER_TYPE)(((d3d11Filter) >> D3D11_MAG_FILTER_SHIFT) & D3D11_FILTER_TYPE_MASK))")
882cpp_quote("#define D3D11_DECODE_MIP_FILTER(d3d11Filter) \\")
883cpp_quote(" ((D3D11_FILTER_TYPE)(((d3d11Filter) >> D3D11_MIP_FILTER_SHIFT) & D3D11_FILTER_TYPE_MASK))")
885cpp_quote("#define D3D11_DECODE_IS_COMPARISON_FILTER(d3d11Filter) ((d3d11Filter) & D3D11_COMPARISON_FILTERING_BIT)")
887cpp_quote("#define D3D11_DECODE_IS_ANISOTROPIC_FILTER(d3d11Filter) \\")
888cpp_quote(" (((d3d11Filter) & D3D11_ANISOTROPIC_FILTERING_BIT ) \\" )
889cpp_quote(" && (D3D11_FILTER_TYPE_LINEAR == D3D11_DECODE_MIN_FILTER(d3d11Filter)) \\" )
890cpp_quote(" && (D3D11_FILTER_TYPE_LINEAR == D3D11_DECODE_MAG_FILTER(d3d11Filter)) \\" )
891cpp_quote(" && (D3D11_FILTER_TYPE_LINEAR == D3D11_DECODE_MIP_FILTER(d3d11Filter)))")
893typedef enum D3D11_FILTER
895 D3D11_FILTER_MIN_MAG_MIP_POINT = 0x00,
896 D3D11_FILTER_MIN_MAG_POINT_MIP_LINEAR = 0x01,
897 D3D11_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x04,
898 D3D11_FILTER_MIN_POINT_MAG_MIP_LINEAR = 0x05,
899 D3D11_FILTER_MIN_LINEAR_MAG_MIP_POINT = 0x10,
900 D3D11_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x11,
901 D3D11_FILTER_MIN_MAG_LINEAR_MIP_POINT = 0x14,
902 D3D11_FILTER_MIN_MAG_MIP_LINEAR = 0x15,
903 D3D11_FILTER_ANISOTROPIC = 0x55,
904 D3D11_FILTER_COMPARISON_MIN_MAG_MIP_POINT = 0x80,
905 D3D11_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR = 0x81,
906 D3D11_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x84,
907 D3D11_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR = 0x85,
908 D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT = 0x90,
909 D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x91,
910 D3D11_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT = 0x94,
911 D3D11_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR = 0x95,
912 D3D11_FILTER_COMPARISON_ANISOTROPIC = 0xd5,
913 D3D11_FILTER_MINIMUM_MIN_MAG_MIP_POINT = 0x100,
914 D3D11_FILTER_MINIMUM_MIN_MAG_POINT_MIP_LINEAR = 0x101,
915 D3D11_FILTER_MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x104,
916 D3D11_FILTER_MINIMUM_MIN_POINT_MAG_MIP_LINEAR = 0x105,
917 D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_MIP_POINT = 0x110,
918 D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x111,
919 D3D11_FILTER_MINIMUM_MIN_MAG_LINEAR_MIP_POINT = 0x114,
920 D3D11_FILTER_MINIMUM_MIN_MAG_MIP_LINEAR = 0x115,
921 D3D11_FILTER_MINIMUM_ANISOTROPIC = 0x155,
922 D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_POINT = 0x180,
923 D3D11_FILTER_MAXIMUM_MIN_MAG_POINT_MIP_LINEAR = 0x181,
924 D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x184,
925 D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_MIP_LINEAR = 0x185,
926 D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_MIP_POINT = 0x190,
927 D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x191,
928 D3D11_FILTER_MAXIMUM_MIN_MAG_LINEAR_MIP_POINT = 0x194,
929 D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_LINEAR = 0x195,
930 D3D11_FILTER_MAXIMUM_ANISOTROPIC = 0x1d5
933typedef enum D3D11_DSV_FLAG
935 D3D11_DSV_READ_ONLY_DEPTH = 0x1,
936 D3D11_DSV_READ_ONLY_STENCIL = 0x2,
939typedef enum D3D11_BUFFEREX_SRV_FLAG
941 D3D11_BUFFEREX_SRV_FLAG_RAW = 0x1,
942} D3D11_BUFFEREX_SRV_FLAG;
944typedef enum D3D11_UAV_FLAG
946 D3D11_BUFFER_UAV_FLAG_RAW = 0x1,
947 D3D11_BUFFER_UAV_FLAG_APPEND = 0x2,
948 D3D11_BUFFER_UAV_FLAG_COUNTER = 0x4,
951typedef enum D3D11_INPUT_CLASSIFICATION
953 D3D11_INPUT_PER_VERTEX_DATA,
954 D3D11_INPUT_PER_INSTANCE_DATA,
955} D3D11_INPUT_CLASSIFICATION;
957const UINT D3D11_APPEND_ALIGNED_ELEMENT = 0xffffffff;
959typedef struct D3D11_INPUT_ELEMENT_DESC
965 UINT AlignedByteOffset;
966 D3D11_INPUT_CLASSIFICATION InputSlotClass;
967 UINT InstanceDataStepRate;
968} D3D11_INPUT_ELEMENT_DESC;
970typedef enum D3D11_MAP
974 D3D11_MAP_READ_WRITE,
975 D3D11_MAP_WRITE_DISCARD,
976 D3D11_MAP_WRITE_NO_OVERWRITE
979typedef enum D3D11_MAP_FLAG
981 D3D11_MAP_FLAG_DO_NOT_WAIT = 0x00100000
984typedef enum D3D11_RAISE_FLAG
986 D3D11_RAISE_FLAG_DRIVER_INTERNAL_ERROR = 0x1,
989typedef struct D3D11_QUERY_DATA_SO_STATISTICS
991 UINT64 NumPrimitivesWritten;
992 UINT64 PrimitivesStorageNeeded;
993} D3D11_QUERY_DATA_SO_STATISTICS;
995typedef struct D3D11_MAPPED_SUBRESOURCE
1000} D3D11_MAPPED_SUBRESOURCE;
1002typedef enum D3D11_QUERY
1005 D3D11_QUERY_OCCLUSION,
1006 D3D11_QUERY_TIMESTAMP,
1007 D3D11_QUERY_TIMESTAMP_DISJOINT,
1008 D3D11_QUERY_PIPELINE_STATISTICS,
1009 D3D11_QUERY_OCCLUSION_PREDICATE,
1010 D3D11_QUERY_SO_STATISTICS,
1011 D3D11_QUERY_SO_OVERFLOW_PREDICATE,
1012 D3D11_QUERY_SO_STATISTICS_STREAM0,
1013 D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM0,
1014 D3D11_QUERY_SO_STATISTICS_STREAM1,
1015 D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM1,
1016 D3D11_QUERY_SO_STATISTICS_STREAM2,
1017 D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM2,
1018 D3D11_QUERY_SO_STATISTICS_STREAM3,
1019 D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM3,
1022typedef enum D3D11_QUERY_MISC_FLAG
1024 D3D11_QUERY_MISC_PREDICATEHINT = 0x1,
1025} D3D11_QUERY_MISC_FLAG;
1027typedef enum D3D11_ASYNC_GETDATA_FLAG
1029 D3D11_ASYNC_GETDATA_DONOTFLUSH = 0x0001,
1030} D3D11_ASYNC_GETDATA_FLAG;
1032typedef enum D3D11_RESOURCE_MISC_FLAG
1034 D3D11_RESOURCE_MISC_GENERATE_MIPS = 0x00000001L,
1035 D3D11_RESOURCE_MISC_SHARED = 0x00000002L,
1036 D3D11_RESOURCE_MISC_TEXTURECUBE = 0x00000004L,
1037 D3D11_RESOURCE_MISC_DRAWINDIRECT_ARGS = 0x00000010L,
1038 D3D11_RESOURCE_MISC_BUFFER_ALLOW_RAW_VIEWS = 0x00000020L,
1039 D3D11_RESOURCE_MISC_BUFFER_STRUCTURED = 0x00000040L,
1040 D3D11_RESOURCE_MISC_RESOURCE_CLAMP = 0x00000080L,
1041 D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX = 0x00000100L,
1042 D3D11_RESOURCE_MISC_GDI_COMPATIBLE = 0x00000200L,
1043 D3D11_RESOURCE_MISC_SHARED_NTHANDLE = 0x00000800L,
1044 D3D11_RESOURCE_MISC_RESTRICTED_CONTENT = 0x00001000L,
1045 D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE = 0x00002000L,
1046 D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE_DRIVER = 0x00004000L,
1047 D3D11_RESOURCE_MISC_GUARDED = 0x00008000L,
1048 D3D11_RESOURCE_MISC_TILE_POOL = 0x00020000L,
1049 D3D11_RESOURCE_MISC_TILED = 0x00040000L,
1050 D3D11_RESOURCE_MISC_HW_PROTECTED = 0x00080000L,
1051 D3D11_RESOURCE_MISC_SHARED_DISPLAYABLE = 0x00100000L,
1052 D3D11_RESOURCE_MISC_SHARED_EXCLUSIVE_WRITER = 0x00200000L
1053} D3D11_RESOURCE_MISC_FLAG;
1055typedef struct D3D11_QUERY_DESC
1061cpp_quote("#if !defined(D3D11_NO_HELPERS) && defined(__cplusplus)")
1062cpp_quote("struct CD3D11_QUERY_DESC : public D3D11_QUERY_DESC {")
1063cpp_quote(" CD3D11_QUERY_DESC() {}")
1064cpp_quote(" ~CD3D11_QUERY_DESC() {}")
1065cpp_quote(" explicit CD3D11_QUERY_DESC(const D3D11_QUERY_DESC &other) : D3D11_QUERY_DESC(other) {}")
1066cpp_quote(" explicit CD3D11_QUERY_DESC(D3D11_QUERY query, UINT misc_flags = 0) {")
1067cpp_quote(" Query = query;")
1068cpp_quote(" MiscFlags = misc_flags;")
1070cpp_quote(" operator const D3D11_QUERY_DESC&() const {")
1071cpp_quote(" return *this;")
1076typedef struct D3D11_RASTERIZER_DESC
1078 D3D11_FILL_MODE FillMode;
1079 D3D11_CULL_MODE CullMode;
1080 BOOL FrontCounterClockwise;
1082 FLOAT DepthBiasClamp;
1083 FLOAT SlopeScaledDepthBias;
1084 BOOL DepthClipEnable;
1086 BOOL MultisampleEnable;
1087 BOOL AntialiasedLineEnable;
1088} D3D11_RASTERIZER_DESC;
1090cpp_quote("#if !defined(D3D11_NO_HELPERS) && defined(__cplusplus)")
1091cpp_quote("struct CD3D11_RASTERIZER_DESC : public D3D11_RASTERIZER_DESC {")
1092cpp_quote(" CD3D11_RASTERIZER_DESC() {}")
1093cpp_quote(" explicit CD3D11_RASTERIZER_DESC(const D3D11_RASTERIZER_DESC &o) : D3D11_RASTERIZER_DESC(o) {}")
1094cpp_quote(" explicit CD3D11_RASTERIZER_DESC(CD3D11_DEFAULT) {")
1095cpp_quote(" FillMode = D3D11_FILL_SOLID;")
1096cpp_quote(" CullMode = D3D11_CULL_BACK;")
1097cpp_quote(" FrontCounterClockwise = FALSE;")
1098cpp_quote(" DepthBias = D3D11_DEFAULT_DEPTH_BIAS;")
1099cpp_quote(" DepthBiasClamp = D3D11_DEFAULT_DEPTH_BIAS_CLAMP;")
1100cpp_quote(" SlopeScaledDepthBias = D3D11_DEFAULT_SLOPE_SCALED_DEPTH_BIAS;")
1101cpp_quote(" DepthClipEnable = TRUE;")
1102cpp_quote(" ScissorEnable = FALSE;")
1103cpp_quote(" MultisampleEnable = FALSE;")
1104cpp_quote(" AntialiasedLineEnable = FALSE;")
1106cpp_quote(" explicit CD3D11_RASTERIZER_DESC(D3D11_FILL_MODE fillMode, D3D11_CULL_MODE cullMode," )
1107cpp_quote(" BOOL frontCounterClockwise, INT depthBias, FLOAT depthBiasClamp, FLOAT slopeScaledDepthBias,")
1108cpp_quote(" BOOL depthClipEnable, BOOL scissorEnable, BOOL multisampleEnable, BOOL antialiasedLineEnable) {")
1109cpp_quote(" FillMode = fillMode;")
1110cpp_quote(" CullMode = cullMode;")
1111cpp_quote(" FrontCounterClockwise = frontCounterClockwise;")
1112cpp_quote(" DepthBias = depthBias;")
1113cpp_quote(" DepthBiasClamp = depthBiasClamp;")
1114cpp_quote(" SlopeScaledDepthBias = slopeScaledDepthBias;")
1115cpp_quote(" DepthClipEnable = depthClipEnable;")
1116cpp_quote(" ScissorEnable = scissorEnable;")
1117cpp_quote(" MultisampleEnable = multisampleEnable;")
1118cpp_quote(" AntialiasedLineEnable = antialiasedLineEnable;")
1120cpp_quote(" ~CD3D11_RASTERIZER_DESC() {}")
1121cpp_quote(" operator const D3D11_RASTERIZER_DESC&() const { return *this; }")
1125typedef enum D3D11_RESOURCE_DIMENSION
1127 D3D11_RESOURCE_DIMENSION_UNKNOWN,
1128 D3D11_RESOURCE_DIMENSION_BUFFER,
1129 D3D11_RESOURCE_DIMENSION_TEXTURE1D,
1130 D3D11_RESOURCE_DIMENSION_TEXTURE2D,
1131 D3D11_RESOURCE_DIMENSION_TEXTURE3D,
1132} D3D11_RESOURCE_DIMENSION;
1134typedef enum D3D11_RTV_DIMENSION
1136 D3D11_RTV_DIMENSION_UNKNOWN,
1137 D3D11_RTV_DIMENSION_BUFFER,
1138 D3D11_RTV_DIMENSION_TEXTURE1D,
1139 D3D11_RTV_DIMENSION_TEXTURE1DARRAY,
1140 D3D11_RTV_DIMENSION_TEXTURE2D,
1141 D3D11_RTV_DIMENSION_TEXTURE2DARRAY,
1142 D3D11_RTV_DIMENSION_TEXTURE2DMS,
1143 D3D11_RTV_DIMENSION_TEXTURE2DMSARRAY,
1144 D3D11_RTV_DIMENSION_TEXTURE3D,
1145} D3D11_RTV_DIMENSION;
1147typedef struct D3D11_SO_DECLARATION_ENTRY
1150 LPCSTR SemanticName;
1152 BYTE StartComponent;
1153 BYTE ComponentCount;
1155} D3D11_SO_DECLARATION_ENTRY;
1157typedef enum D3D11_STENCIL_OP
1159 D3D11_STENCIL_OP_KEEP = 1,
1160 D3D11_STENCIL_OP_ZERO,
1161 D3D11_STENCIL_OP_REPLACE,
1162 D3D11_STENCIL_OP_INCR_SAT,
1163 D3D11_STENCIL_OP_DECR_SAT,
1164 D3D11_STENCIL_OP_INVERT,
1165 D3D11_STENCIL_OP_INCR,
1166 D3D11_STENCIL_OP_DECR
1169cpp_quote("#if !defined(D3D11_NO_HELPERS) && defined(__cplusplus)")
1171cpp_quote("inline UINT D3D11CalcSubresource(UINT MipSlice, UINT ArraySlice, UINT MipLevels) {")
1172cpp_quote(" return MipSlice + ArraySlice * MipLevels;")
1174cpp_quote("extern \"C\"{")
1177typedef
struct D3D11_SUBRESOURCE_DATA
1179 const void *pSysMem;
1181 UINT SysMemSlicePitch;
1182} D3D11_SUBRESOURCE_DATA;
1184typedef struct D3D11_TEX1D_ARRAY_DSV
1187 UINT FirstArraySlice;
1189} D3D11_TEX1D_ARRAY_DSV;
1191typedef struct D3D11_TEX1D_ARRAY_RTV
1194 UINT FirstArraySlice;
1196} D3D11_TEX1D_ARRAY_RTV;
1198typedef struct D3D11_TEX1D_ARRAY_SRV
1200 UINT MostDetailedMip;
1202 UINT FirstArraySlice;
1204} D3D11_TEX1D_ARRAY_SRV;
1206typedef struct D3D11_TEX1D_ARRAY_UAV
1209 UINT FirstArraySlice;
1211} D3D11_TEX1D_ARRAY_UAV;
1213typedef struct D3D11_TEX1D_DSV
1218typedef struct D3D11_TEX1D_RTV
1223typedef struct D3D11_TEX1D_SRV
1225 UINT MostDetailedMip;
1229typedef struct D3D11_TEX1D_UAV
1234typedef struct D3D11_TEX2D_ARRAY_DSV
1237 UINT FirstArraySlice;
1239} D3D11_TEX2D_ARRAY_DSV;
1241typedef struct D3D11_TEX2D_ARRAY_RTV
1244 UINT FirstArraySlice;
1246} D3D11_TEX2D_ARRAY_RTV;
1248typedef struct D3D11_TEX2D_ARRAY_SRV
1250 UINT MostDetailedMip;
1252 UINT FirstArraySlice;
1254} D3D11_TEX2D_ARRAY_SRV;
1256typedef struct D3D11_TEX2D_ARRAY_UAV
1259 UINT FirstArraySlice;
1261} D3D11_TEX2D_ARRAY_UAV;
1263typedef struct D3D11_TEX2D_DSV
1268typedef struct D3D11_TEX2D_RTV
1273typedef struct D3D11_TEX2D_SRV
1275 UINT MostDetailedMip;
1279typedef struct D3D11_TEX2D_UAV
1284typedef struct D3D11_TEX2DMS_ARRAY_DSV
1286 UINT FirstArraySlice;
1288} D3D11_TEX2DMS_ARRAY_DSV;
1290typedef struct D3D11_TEX2DMS_ARRAY_RTV
1292 UINT FirstArraySlice;
1294} D3D11_TEX2DMS_ARRAY_RTV;
1296typedef struct D3D11_TEX2DMS_ARRAY_SRV
1298 UINT FirstArraySlice;
1300} D3D11_TEX2DMS_ARRAY_SRV;
1302typedef struct D3D11_TEX2DMS_DSV
1304 UINT UnusedField_NothingToDefine;
1307typedef struct D3D11_TEX2DMS_RTV
1309 UINT UnusedField_NothingToDefine;
1312typedef struct D3D11_TEX2DMS_SRV
1314 UINT UnusedField_NothingToDefine;
1317typedef struct D3D11_TEX3D_RTV
1324typedef struct D3D11_TEX3D_SRV
1326 UINT MostDetailedMip;
1330typedef struct D3D11_TEX3D_UAV
1337typedef struct D3D11_TEXCUBE_ARRAY_SRV
1339 UINT MostDetailedMip;
1343} D3D11_TEXCUBE_ARRAY_SRV;
1345typedef struct D3D11_TEXCUBE_SRV
1347 UINT MostDetailedMip;
1351typedef enum D3D11_TEXTURE_ADDRESS_MODE
1353 D3D11_TEXTURE_ADDRESS_WRAP = 1,
1354 D3D11_TEXTURE_ADDRESS_MIRROR,
1355 D3D11_TEXTURE_ADDRESS_CLAMP,
1356 D3D11_TEXTURE_ADDRESS_BORDER,
1357 D3D11_TEXTURE_ADDRESS_MIRROR_ONCE
1358} D3D11_TEXTURE_ADDRESS_MODE;
1360typedef enum D3D11_UAV_DIMENSION
1362 D3D11_UAV_DIMENSION_UNKNOWN,
1363 D3D11_UAV_DIMENSION_BUFFER,
1364 D3D11_UAV_DIMENSION_TEXTURE1D,
1365 D3D11_UAV_DIMENSION_TEXTURE1DARRAY,
1366 D3D11_UAV_DIMENSION_TEXTURE2D,
1367 D3D11_UAV_DIMENSION_TEXTURE2DARRAY,
1368 D3D11_UAV_DIMENSION_TEXTURE3D = 8,
1369} D3D11_UAV_DIMENSION;
1371typedef struct D3D11_UNORDERED_ACCESS_VIEW_DESC
1374 D3D11_UAV_DIMENSION ViewDimension;
1379 D3D11_TEX1D_UAV Texture1D;
1380 D3D11_TEX1D_ARRAY_UAV Texture1DArray;
1381 D3D11_TEX2D_UAV Texture2D;
1382 D3D11_TEX2D_ARRAY_UAV Texture2DArray;
1383 D3D11_TEX3D_UAV Texture3D;
1385} D3D11_UNORDERED_ACCESS_VIEW_DESC;
1387typedef enum D3D11_USAGE
1389 D3D11_USAGE_DEFAULT,
1390 D3D11_USAGE_IMMUTABLE,
1391 D3D11_USAGE_DYNAMIC,
1392 D3D11_USAGE_STAGING,
1395typedef enum D3D11_BIND_FLAG
1397 D3D11_BIND_VERTEX_BUFFER = 0x0001,
1398 D3D11_BIND_INDEX_BUFFER = 0x0002,
1399 D3D11_BIND_CONSTANT_BUFFER = 0x0004,
1400 D3D11_BIND_SHADER_RESOURCE = 0x0008,
1401 D3D11_BIND_STREAM_OUTPUT = 0x0010,
1402 D3D11_BIND_RENDER_TARGET = 0x0020,
1403 D3D11_BIND_DEPTH_STENCIL = 0x0040,
1404 D3D11_BIND_UNORDERED_ACCESS = 0x0080,
1405 D3D11_BIND_DECODER = 0x0200,
1406 D3D11_BIND_VIDEO_ENCODER = 0x0400
1409typedef enum D3D11_CPU_ACCESS_FLAG
1411 D3D11_CPU_ACCESS_WRITE = 0x00010000,
1412 D3D11_CPU_ACCESS_READ = 0x00020000
1413} D3D11_CPU_ACCESS_FLAG;
1415typedef struct D3D11_VIEWPORT
1425typedef enum D3D11_COLOR_WRITE_ENABLE
1427 D3D11_COLOR_WRITE_ENABLE_RED = 1,
1428 D3D11_COLOR_WRITE_ENABLE_GREEN = 2,
1429 D3D11_COLOR_WRITE_ENABLE_BLUE = 4,
1430 D3D11_COLOR_WRITE_ENABLE_ALPHA = 8,
1431 D3D11_COLOR_WRITE_ENABLE_ALL =
1432 (D3D11_COLOR_WRITE_ENABLE_RED|D3D11_COLOR_WRITE_ENABLE_GREEN|D3D11_COLOR_WRITE_ENABLE_BLUE|D3D11_COLOR_WRITE_ENABLE_ALPHA)
1433} D3D11_COLOR_WRITE_ENABLE;
1435typedef enum D3D11_FORMAT_SUPPORT
1437 D3D11_FORMAT_SUPPORT_BUFFER = 0x00000001,
1438 D3D11_FORMAT_SUPPORT_IA_VERTEX_BUFFER = 0x00000002,
1439 D3D11_FORMAT_SUPPORT_IA_INDEX_BUFFER = 0x00000004,
1440 D3D11_FORMAT_SUPPORT_SO_BUFFER = 0x00000008,
1441 D3D11_FORMAT_SUPPORT_TEXTURE1D = 0x00000010,
1442 D3D11_FORMAT_SUPPORT_TEXTURE2D = 0x00000020,
1443 D3D11_FORMAT_SUPPORT_TEXTURE3D = 0x00000040,
1444 D3D11_FORMAT_SUPPORT_TEXTURECUBE = 0x00000080,
1445 D3D11_FORMAT_SUPPORT_SHADER_LOAD = 0x00000100,
1446 D3D11_FORMAT_SUPPORT_SHADER_SAMPLE = 0x00000200,
1447 D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_COMPARISON = 0x00000400,
1448 D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_MONO_TEXT = 0x00000800,
1449 D3D11_FORMAT_SUPPORT_MIP = 0x00001000,
1450 D3D11_FORMAT_SUPPORT_MIP_AUTOGEN = 0x00002000,
1451 D3D11_FORMAT_SUPPORT_RENDER_TARGET = 0x00004000,
1452 D3D11_FORMAT_SUPPORT_BLENDABLE = 0x00008000,
1453 D3D11_FORMAT_SUPPORT_DEPTH_STENCIL = 0x00010000,
1454 D3D11_FORMAT_SUPPORT_CPU_LOCKABLE = 0x00020000,
1455 D3D11_FORMAT_SUPPORT_MULTISAMPLE_RESOLVE = 0x00040000,
1456 D3D11_FORMAT_SUPPORT_DISPLAY = 0x00080000,
1457 D3D11_FORMAT_SUPPORT_CAST_WITHIN_BIT_LAYOUT = 0x00100000,
1458 D3D11_FORMAT_SUPPORT_MULTISAMPLE_RENDERTARGET = 0x00200000,
1459 D3D11_FORMAT_SUPPORT_MULTISAMPLE_LOAD = 0x00400000,
1460 D3D11_FORMAT_SUPPORT_SHADER_GATHER = 0x00800000,
1461 D3D11_FORMAT_SUPPORT_BACK_BUFFER_CAST = 0x01000000,
1462 D3D11_FORMAT_SUPPORT_TYPED_UNORDERED_ACCESS_VIEW = 0x02000000,
1463 D3D11_FORMAT_SUPPORT_SHADER_GATHER_COMPARISON = 0x04000000,
1464 D3D11_FORMAT_SUPPORT_DECODER_OUTPUT = 0x08000000,
1465 D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_OUTPUT = 0x10000000,
1466 D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_INPUT = 0x20000000,
1467 D3D11_FORMAT_SUPPORT_VIDEO_ENCODER = 0x40000000,
1468} D3D11_FORMAT_SUPPORT;
1470typedef enum D3D11_FORMAT_SUPPORT2
1472 D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_ADD = 0x00000001,
1473 D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_BITWISE_OPS = 0x00000002,
1474 D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_COMPARE_STORE_OR_COMPARE_EXCHANGE = 0x00000004,
1475 D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_EXCHANGE = 0x00000008,
1476 D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_SIGNED_MIN_OR_MAX = 0x00000010,
1477 D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_UNSIGNED_MIN_OR_MAX = 0x00000020,
1478 D3D11_FORMAT_SUPPORT2_UAV_TYPED_LOAD = 0x00000040,
1479 D3D11_FORMAT_SUPPORT2_UAV_TYPED_STORE = 0x00000080,
1480 D3D11_FORMAT_SUPPORT2_OUTPUT_MERGER_LOGIC_OP = 0x00000100,
1481 D3D11_FORMAT_SUPPORT2_TILED = 0x00000200,
1482 D3D11_FORMAT_SUPPORT2_SHAREABLE = 0x00000400,
1483 D3D11_FORMAT_SUPPORT2_MULTIPLANE_OVERLAY = 0x00004000,
1484} D3D11_FORMAT_SUPPORT2;
1486typedef enum D3D11_CLEAR_FLAG
1488 D3D11_CLEAR_DEPTH = 0x0001
L,
1489 D3D11_CLEAR_STENCIL = 0x0002
L
1492typedef struct D3D11_RENDER_TARGET_BLEND_DESC
1501 UINT8 RenderTargetWriteMask;
1502} D3D11_RENDER_TARGET_BLEND_DESC;
1504typedef struct D3D11_BLEND_DESC
1506 BOOL AlphaToCoverageEnable;
1507 BOOL IndependentBlendEnable;
1511cpp_quote(
"#if !defined(D3D11_NO_HELPERS) && defined(__cplusplus)")
1513cpp_quote(" CD3D11_BLEND_DESC() {}
")
1514cpp_quote(" explicit CD3D11_BLEND_DESC(
const D3D11_BLEND_DESC &o) : D3D11_BLEND_DESC(o) {}
")
1516cpp_quote(" AlphaToCoverageEnable =
FALSE;
")
1517cpp_quote(" IndependentBlendEnable =
FALSE;
")
1518cpp_quote(" for(D3D11_RENDER_TARGET_BLEND_DESC *
target = RenderTarget;
")
1525cpp_quote(" target->RenderTargetWriteMask = D3D11_COLOR_WRITE_ENABLE_ALL;
")
1528cpp_quote(" ~CD3D11_BLEND_DESC() {}
")
1529cpp_quote(" operator const D3D11_BLEND_DESC&()
const {
return *
this; }
")
1533typedef struct D3D11_BUFFER_DESC
1538 UINT CPUAccessFlags;
1540 UINT StructureByteStride;
1543cpp_quote("#
if !defined(D3D11_NO_HELPERS) && defined(__cplusplus)
")
1544cpp_quote("struct CD3D11_BUFFER_DESC :
public D3D11_BUFFER_DESC {
")
1545cpp_quote(" CD3D11_BUFFER_DESC() {}
" )
1546cpp_quote(" explicit CD3D11_BUFFER_DESC(
const D3D11_BUFFER_DESC &o) : D3D11_BUFFER_DESC(o) {}
")
1547cpp_quote(" explicit CD3D11_BUFFER_DESC(
UINT byteWidth,
UINT bindFlags,
")
1548cpp_quote(" D3D11_USAGE
usage = D3D11_USAGE_DEFAULT,
UINT cpuaccessFlags = 0,
")
1549cpp_quote(" UINT miscFlags = 0,
UINT structureByteStride = 0 ) {
")
1550cpp_quote(" ByteWidth = byteWidth;
")
1552cpp_quote(" BindFlags = bindFlags;
")
1553cpp_quote(" CPUAccessFlags = cpuaccessFlags;
")
1554cpp_quote(" MiscFlags = miscFlags;
" )
1555cpp_quote(" StructureByteStride = structureByteStride;
")
1557cpp_quote(" ~CD3D11_BUFFER_DESC() {}
")
1558cpp_quote(" operator const D3D11_BUFFER_DESC&()
const {
return *
this; }
")
1562typedef struct D3D11_DEPTH_STENCIL_VIEW_DESC
1565 D3D11_DSV_DIMENSION ViewDimension;
1570 D3D11_TEX1D_DSV Texture1D;
1571 D3D11_TEX1D_ARRAY_DSV Texture1DArray;
1572 D3D11_TEX2D_DSV Texture2D;
1573 D3D11_TEX2D_ARRAY_DSV Texture2DArray;
1574 D3D11_TEX2DMS_DSV Texture2DMS;
1575 D3D11_TEX2DMS_ARRAY_DSV Texture2DMSArray;
1577} D3D11_DEPTH_STENCIL_VIEW_DESC;
1579typedef struct D3D11_DEPTH_STENCILOP_DESC
1581 D3D11_STENCIL_OP StencilFailOp;
1582 D3D11_STENCIL_OP StencilDepthFailOp;
1583 D3D11_STENCIL_OP StencilPassOp;
1584 D3D11_COMPARISON_FUNC StencilFunc;
1585} D3D11_DEPTH_STENCILOP_DESC;
1587typedef struct D3D11_DEPTH_STENCIL_DESC
1590 D3D11_DEPTH_WRITE_MASK DepthWriteMask;
1591 D3D11_COMPARISON_FUNC DepthFunc;
1593 UINT8 StencilReadMask;
1594 UINT8 StencilWriteMask;
1595 D3D11_DEPTH_STENCILOP_DESC FrontFace;
1596 D3D11_DEPTH_STENCILOP_DESC BackFace;
1597} D3D11_DEPTH_STENCIL_DESC;
1599cpp_quote("#
if !defined( D3D11_NO_HELPERS ) && defined( __cplusplus )
")
1600cpp_quote("struct CD3D11_DEPTH_STENCIL_DESC :
public D3D11_DEPTH_STENCIL_DESC {
")
1601cpp_quote(" CD3D11_DEPTH_STENCIL_DESC() {}
")
1602cpp_quote(" explicit CD3D11_DEPTH_STENCIL_DESC(
const D3D11_DEPTH_STENCIL_DESC &
other) : D3D11_DEPTH_STENCIL_DESC(
other) {}
")
1603cpp_quote(" explicit CD3D11_DEPTH_STENCIL_DESC(
CD3D11_DEFAULT) {
")
1604cpp_quote(" const D3D11_DEPTH_STENCILOP_DESC default_op =
")
1606cpp_quote(" DepthEnable =
TRUE;
")
1609cpp_quote(" StencilEnable =
FALSE;
")
1612cpp_quote(" FrontFace = default_op;
")
1613cpp_quote(" BackFace = default_op;
")
1615cpp_quote(" explicit CD3D11_DEPTH_STENCIL_DESC(
")
1616cpp_quote(" BOOL depth_enable,
")
1619cpp_quote(" BOOL stencil_enable,
")
1620cpp_quote(" UINT8 stencil_read_mask,
")
1621cpp_quote(" UINT8 stencil_write_mask,
")
1622cpp_quote(" D3D11_STENCIL_OP front_stencil_fail_op,
")
1623cpp_quote(" D3D11_STENCIL_OP front_stencil_depth_fail_op,
")
1624cpp_quote(" D3D11_STENCIL_OP front_stencil_pass_op,
")
1626cpp_quote(" D3D11_STENCIL_OP back_stencil_fail_op,
")
1627cpp_quote(" D3D11_STENCIL_OP back_stencil_depth_fail_op,
")
1628cpp_quote(" D3D11_STENCIL_OP back_stencil_pass_op,
")
1630cpp_quote(" DepthEnable = depth_enable;
")
1631cpp_quote(" DepthWriteMask = depth_write_mask;
")
1632cpp_quote(" DepthFunc = depth_func;
")
1633cpp_quote(" StencilEnable = stencil_enable;
")
1634cpp_quote(" StencilReadMask = stencil_read_mask;
")
1635cpp_quote(" StencilWriteMask = stencil_write_mask;
")
1636cpp_quote(" FrontFace.StencilFailOp = front_stencil_fail_op;
")
1637cpp_quote(" FrontFace.StencilDepthFailOp = front_stencil_depth_fail_op;
")
1638cpp_quote(" FrontFace.StencilPassOp = front_stencil_pass_op;
")
1639cpp_quote(" FrontFace.StencilFunc = front_stencil_func;
")
1640cpp_quote(" BackFace.StencilFailOp = back_stencil_fail_op;
")
1641cpp_quote(" BackFace.StencilDepthFailOp = back_stencil_depth_fail_op;
")
1642cpp_quote(" BackFace.StencilPassOp = back_stencil_pass_op;
")
1643cpp_quote(" BackFace.StencilFunc = back_stencil_func;
")
1645cpp_quote(" ~CD3D11_DEPTH_STENCIL_DESC() {}
")
1646cpp_quote(" operator const D3D11_DEPTH_STENCIL_DESC&()
const {
return *
this; }
")
1650typedef struct D3D11_RENDER_TARGET_VIEW_DESC
1653 D3D11_RTV_DIMENSION ViewDimension;
1657 D3D11_BUFFER_RTV Buffer;
1658 D3D11_TEX1D_RTV Texture1D;
1659 D3D11_TEX1D_ARRAY_RTV Texture1DArray;
1660 D3D11_TEX2D_RTV Texture2D;
1661 D3D11_TEX2D_ARRAY_RTV Texture2DArray;
1662 D3D11_TEX2DMS_RTV Texture2DMS;
1663 D3D11_TEX2DMS_ARRAY_RTV Texture2DMSArray;
1664 D3D11_TEX3D_RTV Texture3D;
1666} D3D11_RENDER_TARGET_VIEW_DESC;
1668cpp_quote("#
if !defined(D3D11_NO_HELPERS) && defined(__cplusplus)
")
1669cpp_quote("struct CD3D11_RENDER_TARGET_VIEW_DESC :
public D3D11_RENDER_TARGET_VIEW_DESC {
")
1670cpp_quote(" CD3D11_RENDER_TARGET_VIEW_DESC() {}
")
1674cpp_quote(" ViewDimension = dim;
")
1675cpp_quote(" switch(dim) {
")
1676cpp_quote(" case D3D11_RTV_DIMENSION_BUFFER:
")
1677cpp_quote(" Buffer.FirstElement = mip_slice;
")
1678cpp_quote(" Buffer.NumElements = first_slice;
")
1680cpp_quote(" case D3D11_RTV_DIMENSION_TEXTURE1D:
")
1681cpp_quote(" Texture1D.MipSlice = mip_slice;
")
1683cpp_quote(" case D3D11_RTV_DIMENSION_TEXTURE1DARRAY:
")
1684cpp_quote(" Texture1DArray.MipSlice = mip_slice;
")
1685cpp_quote(" Texture1DArray.FirstArraySlice = first_slice;
")
1686cpp_quote(" Texture1DArray.ArraySize =
array_size;
")
1688cpp_quote(" case D3D11_RTV_DIMENSION_TEXTURE2D:
")
1689cpp_quote(" Texture2D.MipSlice = mip_slice;
")
1691cpp_quote(" case D3D11_RTV_DIMENSION_TEXTURE2DARRAY:
")
1692cpp_quote(" Texture2DArray.MipSlice = mip_slice;
")
1693cpp_quote(" Texture2DArray.FirstArraySlice = first_slice;
")
1694cpp_quote(" Texture2DArray.ArraySize =
array_size;
")
1696cpp_quote(" case D3D11_RTV_DIMENSION_TEXTURE2DMSARRAY:
")
1697cpp_quote(" Texture2DMSArray.FirstArraySlice = first_slice;
")
1698cpp_quote(" Texture2DMSArray.ArraySize =
array_size;
")
1700cpp_quote(" case D3D11_RTV_DIMENSION_TEXTURE3D:
")
1701cpp_quote(" Texture3D.MipSlice = mip_slice;
")
1702cpp_quote(" Texture3D.FirstWSlice = first_slice;
")
1705cpp_quote(" default:
")
1709cpp_quote(" explicit CD3D11_RENDER_TARGET_VIEW_DESC(ID3D11Buffer*,
DXGI_FORMAT format,
UINT first_elem,
")
1710cpp_quote(" UINT elem_cnt) {
")
1712cpp_quote(" ViewDimension = D3D11_RTV_DIMENSION_BUFFER;
")
1713cpp_quote(" Buffer.FirstElement = first_elem;
")
1714cpp_quote(" Buffer.NumElements = elem_cnt;
")
1716cpp_quote(" explicit CD3D11_RENDER_TARGET_VIEW_DESC(ID3D11Texture1D *
texture, D3D11_RTV_DIMENSION dim,
")
1719cpp_quote(" explicit CD3D11_RENDER_TARGET_VIEW_DESC(ID3D11Texture2D *
texture, D3D11_RTV_DIMENSION dim,
")
1723cpp_quote(" UINT mip_slice = 0,
UINT first_w_slice = 0,
UINT w_slice = -1 );
") /* FIXME: implement */
1724cpp_quote(" ~CD3D11_RENDER_TARGET_VIEW_DESC() {}
")
1725cpp_quote(" explicit CD3D11_RENDER_TARGET_VIEW_DESC(
const D3D11_RENDER_TARGET_VIEW_DESC &
other)
")
1726cpp_quote(" : D3D11_RENDER_TARGET_VIEW_DESC(
other) {}
")
1727cpp_quote(" operator const D3D11_RENDER_TARGET_VIEW_DESC&()
const {
")
1728cpp_quote(" return *
this;
")
1734typedef struct D3D11_SAMPLER_DESC
1736 D3D11_FILTER Filter;
1737 D3D11_TEXTURE_ADDRESS_MODE AddressU;
1738 D3D11_TEXTURE_ADDRESS_MODE AddressV;
1739 D3D11_TEXTURE_ADDRESS_MODE AddressW;
1742 D3D11_COMPARISON_FUNC ComparisonFunc;
1743 FLOAT BorderColor[4];
1746} D3D11_SAMPLER_DESC;
1748cpp_quote("#
if !defined(D3D11_NO_HELPERS) && defined(__cplusplus)
")
1749cpp_quote("struct CD3D11_SAMPLER_DESC :
public D3D11_SAMPLER_DESC {
")
1750cpp_quote(" CD3D11_SAMPLER_DESC() {}
")
1751cpp_quote(" explicit CD3D11_SAMPLER_DESC(
const D3D11_SAMPLER_DESC &o) : D3D11_SAMPLER_DESC(o) {}
")
1754cpp_quote(" AddressU = D3D11_TEXTURE_ADDRESS_CLAMP;
")
1755cpp_quote(" AddressV = D3D11_TEXTURE_ADDRESS_CLAMP;
")
1756cpp_quote(" AddressW = D3D11_TEXTURE_ADDRESS_CLAMP;
")
1757cpp_quote(" MipLODBias = 0;
")
1758cpp_quote(" MaxAnisotropy = 1;
")
1760cpp_quote(" BorderColor[0] = BorderColor[1] = BorderColor[2] = BorderColor[3] = 1.0f;
")
1761cpp_quote(" MinLOD = -3.402823466e+38
f;
")
1762cpp_quote(" MaxLOD = 3.402823466e+38
f;
")
1764cpp_quote(" explicit CD3D11_SAMPLER_DESC(
D3D11_FILTER filter, D3D11_TEXTURE_ADDRESS_MODE addressU,
")
1765cpp_quote(" D3D11_TEXTURE_ADDRESS_MODE addressV, D3D11_TEXTURE_ADDRESS_MODE addressW,
")
1769cpp_quote(" AddressU = addressU;
")
1770cpp_quote(" AddressV = addressV;
")
1771cpp_quote(" AddressW = addressW;
")
1772cpp_quote(" MipLODBias = mipLODBias;
")
1773cpp_quote(" MaxAnisotropy = maxAnisotropy;
")
1774cpp_quote(" ComparisonFunc = comparisonFunc;
")
1775cpp_quote(" if(borderColor) {
")
1776cpp_quote(" BorderColor[0] = borderColor[0];
")
1777cpp_quote(" BorderColor[1] = borderColor[1];
")
1778cpp_quote(" BorderColor[2] = borderColor[2];
")
1779cpp_quote(" BorderColor[3] = borderColor[3];
")
1780cpp_quote(" }
else {
")
1781cpp_quote(" BorderColor[0] = BorderColor[1] = BorderColor[2] = BorderColor[3] = 1.0f;
")
1783cpp_quote(" MinLOD = minLOD;
")
1784cpp_quote(" MaxLOD = maxLOD;
")
1786cpp_quote(" ~CD3D11_SAMPLER_DESC() {}
")
1787cpp_quote(" operator const D3D11_SAMPLER_DESC&()
const {
return *
this; }
")
1791typedef struct D3D11_SHADER_RESOURCE_VIEW_DESC
1794 D3D11_SRV_DIMENSION ViewDimension;
1798 D3D11_BUFFER_SRV Buffer;
1799 D3D11_TEX1D_SRV Texture1D;
1800 D3D11_TEX1D_ARRAY_SRV Texture1DArray;
1801 D3D11_TEX2D_SRV Texture2D;
1802 D3D11_TEX2D_ARRAY_SRV Texture2DArray;
1803 D3D11_TEX2DMS_SRV Texture2DMS;
1804 D3D11_TEX2DMS_ARRAY_SRV Texture2DMSArray;
1805 D3D11_TEX3D_SRV Texture3D;
1806 D3D11_TEXCUBE_SRV TextureCube;
1807 D3D11_TEXCUBE_ARRAY_SRV TextureCubeArray;
1808 D3D11_BUFFEREX_SRV BufferEx;
1810} D3D11_SHADER_RESOURCE_VIEW_DESC;
1812cpp_quote("#
if !defined(D3D11_NO_HELPERS) && defined( __cplusplus )
")
1813cpp_quote("struct CD3D11_SHADER_RESOURCE_VIEW_DESC :
public D3D11_SHADER_RESOURCE_VIEW_DESC {
")
1814cpp_quote(" CD3D11_SHADER_RESOURCE_VIEW_DESC() {}
")
1819cpp_quote(" ViewDimension = dim;
")
1820cpp_quote(" switch(ViewDimension) {
")
1822cpp_quote(" Buffer.FirstElement = most_detailed_mip;
")
1823cpp_quote(" Buffer.NumElements = mip_levels;
")
1826cpp_quote(" Texture1D.MostDetailedMip = most_detailed_mip;
")
1827cpp_quote(" Texture1D.MipLevels = mip_levels;
")
1830cpp_quote(" Texture1DArray.MostDetailedMip = most_detailed_mip;
")
1831cpp_quote(" Texture1DArray.MipLevels = mip_levels;
")
1832cpp_quote(" Texture1DArray.FirstArraySlice = first_slice;
")
1833cpp_quote(" Texture1DArray.ArraySize =
array_size;
")
1836cpp_quote(" Texture2D.MostDetailedMip = most_detailed_mip;
")
1837cpp_quote(" Texture2D.MipLevels = mip_levels;
")
1840cpp_quote(" Texture2DArray.MostDetailedMip = most_detailed_mip;
")
1841cpp_quote(" Texture2DArray.MipLevels = mip_levels;
")
1842cpp_quote(" Texture2DArray.FirstArraySlice = first_slice;
")
1843cpp_quote(" Texture2DArray.ArraySize =
array_size;
")
1846cpp_quote(" Texture2DMSArray.FirstArraySlice = first_slice;
")
1847cpp_quote(" Texture2DMSArray.ArraySize =
array_size;
")
1850cpp_quote(" Texture3D.MostDetailedMip = most_detailed_mip;
")
1851cpp_quote(" Texture3D.MipLevels = mip_levels;
")
1854cpp_quote(" TextureCube.MostDetailedMip = most_detailed_mip;
")
1855cpp_quote(" TextureCube.MipLevels = mip_levels;
")
1858cpp_quote(" TextureCubeArray.MostDetailedMip = most_detailed_mip;
")
1859cpp_quote(" TextureCubeArray.MipLevels = mip_levels;
")
1860cpp_quote(" TextureCubeArray.First2DArrayFace = first_slice;
")
1861cpp_quote(" TextureCubeArray.NumCubes =
array_size;
")
1864cpp_quote(" BufferEx.FirstElement = most_detailed_mip;
")
1865cpp_quote(" BufferEx.NumElements = mip_levels;
")
1866cpp_quote(" BufferEx.Flags =
flags;
")
1868cpp_quote(" default:
")
1872cpp_quote(" explicit CD3D11_SHADER_RESOURCE_VIEW_DESC(ID3D11Buffer*,
DXGI_FORMAT format,
UINT first_elem,
")
1873cpp_quote(" UINT elem_cnt,
UINT flags = 0);
") /* FIXME: implement */
1881cpp_quote(" UINT most_detailed_mip = 0,
UINT mip_levels = -1 );
")
1882cpp_quote(" ~CD3D11_SHADER_RESOURCE_VIEW_DESC() {}
")
1883cpp_quote(" explicit CD3D11_SHADER_RESOURCE_VIEW_DESC(
const D3D11_SHADER_RESOURCE_VIEW_DESC &
other)
")
1884cpp_quote(" : D3D11_SHADER_RESOURCE_VIEW_DESC(
other) {}
")
1885cpp_quote(" operator const D3D11_SHADER_RESOURCE_VIEW_DESC&()
const {
")
1886cpp_quote(" return *
this;
")
1891typedef struct D3D11_TEXTURE1D_DESC
1899 UINT CPUAccessFlags;
1901} D3D11_TEXTURE1D_DESC;
1903typedef struct D3D11_TEXTURE2D_DESC
1910 DXGI_SAMPLE_DESC SampleDesc;
1913 UINT CPUAccessFlags;
1915} D3D11_TEXTURE2D_DESC;
1917cpp_quote("#
if !defined(D3D11_NO_HELPERS) && defined(__cplusplus)
")
1918cpp_quote("struct CD3D11_TEXTURE2D_DESC :
public D3D11_TEXTURE2D_DESC {
")
1919cpp_quote(" CD3D11_TEXTURE2D_DESC() {}
")
1920cpp_quote(" explicit CD3D11_TEXTURE2D_DESC(
const D3D11_TEXTURE2D_DESC &o) : D3D11_TEXTURE2D_DESC(o) {}
")
1922cpp_quote(" UINT mipLevels = 0,
UINT bindFlags = D3D11_BIND_SHADER_RESOURCE,
")
1923cpp_quote(" D3D11_USAGE
usage = D3D11_USAGE_DEFAULT,
UINT cpuaccessFlags = 0,
UINT sampleCount = 1,
" )
1924cpp_quote(" UINT sampleQuality = 0,
UINT miscFlags = 0) {
")
1928cpp_quote(" ArraySize = arraySize;
")
1930cpp_quote(" SampleDesc.Count = sampleCount;
")
1931cpp_quote(" SampleDesc.Quality = sampleQuality;
")
1933cpp_quote(" BindFlags = bindFlags;
")
1934cpp_quote(" CPUAccessFlags = cpuaccessFlags;
")
1935cpp_quote(" MiscFlags = miscFlags;
")
1937cpp_quote(" ~CD3D11_TEXTURE2D_DESC() {}
")
1938cpp_quote(" operator const D3D11_TEXTURE2D_DESC&()
const {
return *
this; }
")
1942typedef struct D3D11_TEXTURE3D_DESC
1951 UINT CPUAccessFlags;
1953} D3D11_TEXTURE3D_DESC;
1957 * D3D11 video decoder profiles
1962cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG2_MOCOMP, 0xe6a9f44b,0x61b0,0x4563,0x9e,0xa4,0x63,0xd2,0xa3,0xc6,0xfe,0x66);
")
1963cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG2_IDCT, 0xbf22ad00,0x03ea,0x4690,0x80,0x77,0x47,0x33,0x46,0x20,0x9b,0x7e);
")
1964cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG2_VLD, 0xee27417f,0x5e28,0x4e65,0xbe,0xea,0x1d,0x26,0xb5,0x08,0xad,0xc9);
")
1965cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG1_VLD, 0x6f3ec719,0x3735,0x42cc,0x80,0x63,0x65,0xcc,0x3c,0xb3,0x66,0
x16);
")
1966cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG2and1_VLD, 0x86695f12,0x340e,0x4f04,0x9f,0xd3,0x92,0x53,0xdd,0x32,0x74,0x60);
")
1969cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_MOCOMP_NOFGT, 0x1b81be64,0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
")
1970cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_MOCOMP_FGT, 0x1b81be65,0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
")
1971cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_IDCT_NOFGT, 0x1b81be66,0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
")
1972cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_IDCT_FGT, 0x1b81be67,0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
")
1973cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_NOFGT, 0x1b81be68,0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
")
1974cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_FGT, 0x1b81be69,0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
")
1975cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_WITHFMOASO_NOFGT, 0xd5f04ff9,0x3418,0x45d8,0x95,0x61,0x32,0xa7,0x6a,0xae,0x2d,0xdd);
")
1976cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_STEREO_PROGRESSIVE_NOFGT, 0xd79be8da,0x0cf1,0x4c81,0xb8,0x2a,0x69,0xa4,0xe2,0x36,0xf4,0x3d);
")
1977cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_STEREO_NOFGT, 0xf9aaccbb,0xc2b6,0x4cfc,0x87,0x79,0x57,0x07,0xb1,0x76,0x05,0x52);
")
1978cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_MULTIVIEW_NOFGT, 0x705b9d82,0x76cf,0x49d6,0xb7,0xe6,0xac,0x88,0x72,0xdb,0x01,0x3c);
")
1981cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_WMV8_POSTPROC, 0x1b81be80,0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
")
1982cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_WMV8_MOCOMP, 0x1b81be81,0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
")
1985cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_WMV9_POSTPROC, 0x1b81be90,0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
")
1986cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_WMV9_MOCOMP, 0x1b81be91,0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
")
1987cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_WMV9_IDCT, 0x1b81be94,0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
")
1990cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_VC1_POSTPROC, 0x1b81beA0,0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
")
1991cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_VC1_MOCOMP, 0x1b81beA1,0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
")
1992cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_VC1_IDCT, 0x1b81beA2,0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
")
1993cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_VC1_VLD, 0x1b81beA3,0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
")
1994cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_VC1_D2010, 0x1b81beA4,0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
")
1997cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG4PT2_VLD_SIMPLE, 0xefd64d74,0xc9e8,0x41d7,0xa5,0xe9,0xe9,0xb0,0xe3,0x9f,0xa3,0x19);
")
1998cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_NOGMC, 0xed418a9f,0x010d,0x4eda,0x9a,0xe3,0x9a,0x65,0x35,0x8d,0x8d,0x2e);
")
1999cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_GMC, 0xab998b5b,0x4258,0x44a9,0x9f,0xeb,0x94,0xe5,0x97,0xa6,0xba,0xae);
")
2002cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_HEVC_VLD_MAIN, 0x5b11d51b,0x2f4c,0x4452,0xbc,0xc3,0x09,0xf2,0xa1,0
x16,0x0c,0xc0);
")
2003cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_HEVC_VLD_MAIN10, 0x107af0e0,0xef1a,0x4d19,0xab,0xa8,0x67,0xa1,0x63,0x07,0x3d,0
x13);
")
2006cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_VP9_VLD_PROFILE0, 0x463707f8,0xa1d0,0x4585,0x87,0x6d,0x83,0xaa,0x6d,0x60,0xb8,0x9e);
")
2007cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_VP9_VLD_10BIT_PROFILE2, 0xa4c749ef,0x6ecf,0x48aa,0x84,0x48,0x50,0xa7,0xa1,0
x16,0x5f,0xf7);
")
2008cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_VP8_VLD, 0x90b899ea,0x3a62,0x4705,0x88,0xb3,0x8d,0xf0,0x4b,0x27,0x44,0xe7);
")
2010typedef struct D3D11_VIDEO_DECODER_DESC
2015 DXGI_FORMAT OutputFormat;
2016} D3D11_VIDEO_DECODER_DESC;
2018typedef struct D3D11_VIDEO_DECODER_CONFIG
2020 GUID guidConfigBitstreamEncryption;
2021 GUID guidConfigMBcontrolEncryption;
2022 GUID guidConfigResidDiffEncryption;
2023 UINT ConfigBitstreamRaw;
2024 UINT ConfigMBcontrolRasterOrder;
2025 UINT ConfigResidDiffHost;
2026 UINT ConfigSpatialResid8;
2027 UINT ConfigResid8Subtraction;
2028 UINT ConfigSpatialHost8or9Clipping;
2029 UINT ConfigSpatialResidInterleaved;
2030 UINT ConfigIntraResidUnsigned;
2031 UINT ConfigResidDiffAccelerator;
2032 UINT ConfigHostInverseScan;
2033 UINT ConfigSpecificIDCT;
2034 UINT Config4GroupedCoefs;
2035 USHORT ConfigMinRenderTargetBuffCount;
2036 USHORT ConfigDecoderSpecific;
2037} D3D11_VIDEO_DECODER_CONFIG;
2039typedef enum D3D11_VIDEO_FRAME_FORMAT
2041 D3D11_VIDEO_FRAME_FORMAT_PROGRESSIVE = 0,
2042 D3D11_VIDEO_FRAME_FORMAT_INTERLACED_TOP_FIELD_FIRST = 1,
2043 D3D11_VIDEO_FRAME_FORMAT_INTERLACED_BOTTOM_FIELD_FIRST = 2
2044} D3D11_VIDEO_FRAME_FORMAT;
2046typedef enum D3D11_VIDEO_USAGE
2048 D3D11_VIDEO_USAGE_PLAYBACK_NORMAL = 0,
2049 D3D11_VIDEO_USAGE_OPTIMAL_SPEED = 1,
2050 D3D11_VIDEO_USAGE_OPTIMAL_QUALITY = 2
2053typedef struct D3D11_VIDEO_PROCESSOR_CONTENT_DESC
2055 D3D11_VIDEO_FRAME_FORMAT InputFrameFormat;
2056 DXGI_RATIONAL InputFrameRate;
2059 DXGI_RATIONAL OutputFrameRate;
2062 D3D11_VIDEO_USAGE Usage;
2063} D3D11_VIDEO_PROCESSOR_CONTENT_DESC;
2065typedef struct D3D11_VIDEO_PROCESSOR_CAPS
2070 UINT InputFormatCaps;
2071 UINT AutoStreamCaps;
2073 UINT RateConversionCapsCount;
2074 UINT MaxInputStreams;
2075 UINT MaxStreamStates;
2076} D3D11_VIDEO_PROCESSOR_CAPS;
2078typedef struct D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS
2084 UINT CustomRateCount;
2085} D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS;
2087typedef struct D3D11_VIDEO_PROCESSOR_CUSTOM_RATE
2089 DXGI_RATIONAL CustomRate;
2091 BOOL InputInterlaced;
2092 UINT InputFramesOrFields;
2093} D3D11_VIDEO_PROCESSOR_CUSTOM_RATE;
2095typedef enum D3D11_VIDEO_PROCESSOR_FILTER
2097 D3D11_VIDEO_PROCESSOR_FILTER_BRIGHTNESS = 0,
2098 D3D11_VIDEO_PROCESSOR_FILTER_CONTRAST = 1,
2099 D3D11_VIDEO_PROCESSOR_FILTER_HUE = 2,
2100 D3D11_VIDEO_PROCESSOR_FILTER_SATURATION = 3,
2101 D3D11_VIDEO_PROCESSOR_FILTER_NOISE_REDUCTION = 4,
2102 D3D11_VIDEO_PROCESSOR_FILTER_EDGE_ENHANCEMENT = 5,
2103 D3D11_VIDEO_PROCESSOR_FILTER_ANAMORPHIC_SCALING = 6,
2104 D3D11_VIDEO_PROCESSOR_FILTER_STEREO_ADJUSTMENT = 7
2105} D3D11_VIDEO_PROCESSOR_FILTER;
2107typedef struct D3D11_VIDEO_PROCESSOR_FILTER_RANGE
2113} D3D11_VIDEO_PROCESSOR_FILTER_RANGE;
2115typedef enum D3D11_AUTHENTICATED_CHANNEL_TYPE
2117 D3D11_AUTHENTICATED_CHANNEL_D3D11 = 1,
2118 D3D11_AUTHENTICATED_CHANNEL_DRIVER_SOFTWARE = 2,
2119 D3D11_AUTHENTICATED_CHANNEL_DRIVER_HARDWARE = 3
2120} D3D11_AUTHENTICATED_CHANNEL_TYPE;
2122typedef enum D3D11_VDOV_DIMENSION
2124 D3D11_VDOV_DIMENSION_UNKNOWN = 0,
2125 D3D11_VDOV_DIMENSION_TEXTURE2D = 1
2126} D3D11_VDOV_DIMENSION;
2128typedef struct D3D11_TEX2D_VDOV
2133typedef struct D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC
2136 D3D11_VDOV_DIMENSION ViewDimension;
2138 D3D11_TEX2D_VDOV Texture2D;
2140} D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC;
2142typedef enum D3D11_VPIV_DIMENSION
2144 D3D11_VPIV_DIMENSION_UNKNOWN = 0,
2145 D3D11_VPIV_DIMENSION_TEXTURE2D = 1
2146} D3D11_VPIV_DIMENSION;
2148typedef struct D3D11_TEX2D_VPIV
2154typedef struct D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC
2157 D3D11_VPIV_DIMENSION ViewDimension;
2159 D3D11_TEX2D_VPIV Texture2D;
2161} D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC;
2163typedef enum D3D11_VPOV_DIMENSION
2165 D3D11_VPOV_DIMENSION_UNKNOWN = 0,
2166 D3D11_VPOV_DIMENSION_TEXTURE2D = 1,
2167 D3D11_VPOV_DIMENSION_TEXTURE2DARRAY = 2
2168} D3D11_VPOV_DIMENSION;
2170typedef struct D3D11_TEX2D_VPOV
2175typedef struct D3D11_TEX2D_ARRAY_VPOV
2178 UINT FirstArraySlice;
2180} D3D11_TEX2D_ARRAY_VPOV;
2182typedef struct D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC
2184 D3D11_VPOV_DIMENSION ViewDimension;
2186 D3D11_TEX2D_VPOV Texture2D;
2187 D3D11_TEX2D_ARRAY_VPOV Texture2DArray;
2189} D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC;
2191typedef struct D3D11_VIDEO_CONTENT_PROTECTION_CAPS
2194 UINT KeyExchangeTypeCount;
2195 UINT BlockAlignmentSize;
2196 ULONGLONG ProtectedMemorySize;
2197} D3D11_VIDEO_CONTENT_PROTECTION_CAPS;
2199typedef struct D3D11_ENCRYPTED_BLOCK_INFO
2201 UINT NumEncryptedBytesAtBeginning;
2202 UINT NumBytesInSkipPattern;
2203 UINT NumBytesInEncryptPattern;
2204} D3D11_ENCRYPTED_BLOCK_INFO;
2206typedef struct D3D11_VIDEO_DECODER_BUFFER_DESC
2208 D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType;
2212 UINT FirstMBaddress;
2213 UINT NumMBsInBuffer;
2220 BOOL PartialEncryption;
2221 D3D11_ENCRYPTED_BLOCK_INFO EncryptedBlockInfo;
2222} D3D11_VIDEO_DECODER_BUFFER_DESC;
2224typedef struct D3D11_VIDEO_DECODER_EXTENSION
2227 void *pPrivateInputData;
2228 UINT PrivateInputDataSize;
2229 void *pPrivateOutputData;
2230 UINT PrivateOutputDataSize;
2232 ID3D11Resource **ppResourceList;
2233} D3D11_VIDEO_DECODER_EXTENSION;
2235typedef struct D3D11_VIDEO_COLOR_YCbCrA
2241} D3D11_VIDEO_COLOR_YCbCrA;
2243typedef struct D3D11_VIDEO_COLOR_RGBA
2249} D3D11_VIDEO_COLOR_RGBA;
2251typedef struct D3D11_VIDEO_COLOR
2255 D3D11_VIDEO_COLOR_YCbCrA YCbCr;
2256 D3D11_VIDEO_COLOR_RGBA RGBA;
2260typedef struct D3D11_VIDEO_PROCESSOR_COLOR_SPACE
2264 UINT YCbCr_Matrix : 1;
2265 UINT YCbCr_xvYCC : 1;
2266 UINT Nominal_Range : 2;
2268} D3D11_VIDEO_PROCESSOR_COLOR_SPACE;
2270typedef struct D3D11_VIDEO_PROCESSOR_STREAM
2274 UINT InputFrameOrField;
2277 ID3D11VideoProcessorInputView **ppPastSurfaces;
2278 ID3D11VideoProcessorInputView *pInputSurface;
2279 ID3D11VideoProcessorInputView **ppFutureSurfaces;
2280 ID3D11VideoProcessorInputView **ppPastSurfacesRight;
2281 ID3D11VideoProcessorInputView *pInputSurfaceRight;
2282 ID3D11VideoProcessorInputView **ppFutureSurfacesRight;
2283} D3D11_VIDEO_PROCESSOR_STREAM;
2285typedef struct D3D11_OMAC
2287 BYTE Omac[D3D11_OMAC_SIZE];
2290typedef struct D3D11_AUTHENTICATED_CONFIGURE_OUTPUT
2295 UINT SequenceNumber;
2297} D3D11_AUTHENTICATED_CONFIGURE_OUTPUT;
2299typedef struct D3D11_QUERY_DATA_TIMESTAMP_DISJOINT
2303} D3D11_QUERY_DATA_TIMESTAMP_DISJOINT;
2305typedef struct D3D11_QUERY_DATA_PIPELINE_STATISTICS
2308 UINT64 IAPrimitives;
2309 UINT64 VSInvocations;
2310 UINT64 GSInvocations;
2311 UINT64 GSPrimitives;
2312 UINT64 CInvocations;
2314 UINT64 PSInvocations;
2315 UINT64 HSInvocations;
2316 UINT64 DSInvocations;
2317 UINT64 CSInvocations;
2318} D3D11_QUERY_DATA_PIPELINE_STATISTICS;
2320typedef struct D3D11_DRAW_INSTANCED_INDIRECT_ARGS
2322 UINT VertexCountPerInstance;
2324 UINT StartVertexLocation;
2325 UINT StartInstanceLocation;
2326} D3D11_DRAW_INSTANCED_INDIRECT_ARGS;
2328typedef struct D3D11_DRAW_INDEXED_INSTANCED_INDIRECT_ARGS
2330 UINT IndexCountPerInstance;
2332 UINT StartIndexLocation;
2333 INT BaseVertexLocation;
2334 UINT StartInstanceLocation;
2335} D3D11_DRAW_INDEXED_INSTANCED_INDIRECT_ARGS;
2337typedef struct D3D11_AUTHENTICATED_CONFIGURE_INPUT
2342 UINT SequenceNumber;
2343} D3D11_AUTHENTICATED_CONFIGURE_INPUT;
2345typedef struct D3D11_AUTHENTICATED_QUERY_INPUT
2349 UINT SequenceNumber;
2350} D3D11_AUTHENTICATED_QUERY_INPUT;
2352typedef struct D3D11_AUTHENTICATED_QUERY_OUTPUT
2357 UINT SequenceNumber;
2359} D3D11_AUTHENTICATED_QUERY_OUTPUT;
2361typedef union D3D11_AUTHENTICATED_PROTECTION_FLAGS
2365 UINT ProtectionEnabled : 1;
2366 UINT OverlayOrFullscreenRequired : 1;
2370} D3D11_AUTHENTICATED_PROTECTION_FLAGS;
2372typedef struct D3D11_AUTHENTICATED_QUERY_PROTECTION_OUTPUT
2374 D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
2375 D3D11_AUTHENTICATED_PROTECTION_FLAGS ProtectionFlags;
2376} D3D11_AUTHENTICATED_QUERY_PROTECTION_OUTPUT;
2378typedef struct D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE_OUTPUT
2380 D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
2381 D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType;
2382} D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE_OUTPUT;
2384typedef struct D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE_OUTPUT
2386 D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
2387 HANDLE DeviceHandle;
2388} D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE_OUTPUT;
2390typedef struct D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_INPUT
2392 D3D11_AUTHENTICATED_QUERY_INPUT Input;
2393 HANDLE DecoderHandle;
2394} D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_INPUT;
2396typedef struct D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_OUTPUT
2398 D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
2399 HANDLE DecoderHandle;
2400 HANDLE CryptoSessionHandle;
2401 HANDLE DeviceHandle;
2402} D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_OUTPUT;
2404typedef struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT_OUTPUT
2406 D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
2407 UINT RestrictedSharedResourceProcessCount;
2408} D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT_OUTPUT;
2410typedef struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_INPUT
2412 D3D11_AUTHENTICATED_QUERY_INPUT Input;
2414} D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_INPUT;
2416typedef struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_OUTPUT
2418 D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
2420 D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE ProcessIdentifier;
2421 HANDLE ProcessHandle;
2422} D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_OUTPUT;
2424typedef struct D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT_OUTPUT
2426 D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
2427 UINT UnrestrictedProtectedSharedResourceCount;
2428} D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT_OUTPUT;
2430typedef struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_INPUT
2432 D3D11_AUTHENTICATED_QUERY_INPUT Input;
2433 HANDLE DeviceHandle;
2434 HANDLE CryptoSessionHandle;
2435} D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_INPUT;
2437typedef struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_OUTPUT
2439 D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
2440 HANDLE DeviceHandle;
2441 HANDLE CryptoSessionHandle;
2443} D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_OUTPUT;
2445typedef struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_INPUT
2447 D3D11_AUTHENTICATED_QUERY_INPUT Input;
2448 HANDLE DeviceHandle;
2449 HANDLE CryptoSessionHandle;
2451} D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_INPUT;
2453typedef struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_OUTPUT
2455 D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
2456 HANDLE DeviceHandle;
2457 HANDLE CryptoSessionHandle;
2460} D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_OUTPUT;
2462typedef struct D3D11_AUTHENTICATED_QUERY_ACESSIBILITY_OUTPUT
2464 D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
2465 D3D11_BUS_TYPE BusType;
2466 BOOL AccessibleInContiguousBlocks;
2467 BOOL AccessibleInNonContiguousBlocks;
2468} D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_OUTPUT;
2470typedef struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_COUNT_OUTPUT
2472 D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
2473 UINT EncryptionGuidCount;
2474} D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_COUNT_OUTPUT;
2476typedef struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_INPUT
2478 D3D11_AUTHENTICATED_QUERY_INPUT Input;
2479 UINT EncryptionGuidIndex;
2480} D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_INPUT;
2482typedef struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_OUTPUT
2484 D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
2485 UINT EncryptionGuidIndex;
2486 GUID EncryptionGuid;
2487} D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_OUTPUT;
2489typedef struct D3D11_AUTHENTICATED_QUERY_CURRENT_ACCESSIBILITY_ENCRYPTION_OUTPUT
2491 D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
2492 GUID EncryptionGuid;
2493} D3D11_AUTHENTICATED_QUERY_CURRENT_ACCESSIBILITY_ENCRYPTION_OUTPUT;
2495typedef struct D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE_INPUT
2497 D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters;
2498 UINT StartSequenceQuery;
2499 UINT StartSequenceConfigure;
2500} D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE_INPUT;
2502typedef struct D3D11_AUTHENTICATED_CONFIGURE_PROTECTION_INPUT
2504 D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters;
2505 D3D11_AUTHENTICATED_PROTECTION_FLAGS Protections;
2506} D3D11_AUTHENTICATED_CONFIGURE_PROTECTION_INPUT;
2508typedef struct D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_INPUT
2510 D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters;
2511 HANDLE DecoderHandle;
2512 HANDLE CryptoSessionHandle;
2513 HANDLE DeviceHandle;
2514} D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_INPUT;
2516typedef struct D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_INPUT
2518 D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters;
2519 D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE ProcessType;
2520 HANDLE ProcessHandle;
2522} D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_INPUT;
2524typedef struct D3D11_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION_INPUT
2526 D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters;
2527 GUID EncryptionGuid;
2528} D3D11_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION_INPUT;
2533 uuid(1841e5c8-16b0-489b-bcc8-44cfb0d5deae)
2535interface ID3D11DeviceChild : IUnknown
2538 [out] ID3D11Device **ppDevice);
2539 HRESULT GetPrivateData(
2541 [in, out] UINT *pDataSize,
2543 HRESULT SetPrivateData(
2546 [in] const void *pData);
2547 HRESULT SetPrivateDataInterface(
2549 [in] const IUnknown *pData);
2555 uuid(4b35d0cd-1e15-4258-9c98-1b1333f6dd3b)
2557interface ID3D11Asynchronous : ID3D11DeviceChild
2565 uuid(d6c00747-87b7-425e-b84d-44d108560afd)
2567interface ID3D11Query : ID3D11Asynchronous
2570 [out] D3D11_QUERY_DESC *pDesc);
2576 uuid(dc8e63f3-d12b-4952-b47b-5e45026a862d)
2578interface ID3D11Resource : ID3D11DeviceChild
2581 [out] D3D11_RESOURCE_DIMENSION *pResourceDimension);
2582 void SetEvictionPriority(
2583 [in] UINT EvictionPriority);
2584 UINT GetEvictionPriority();
2590 uuid(839d1216-bb2e-412b-b7f4-a9dbebe08ed1)
2592interface ID3D11View : ID3D11DeviceChild
2595 [out] ID3D11Resource **ppResource);
2601 uuid(75b68faa-347d-4159-8f45-a0640f01cd9a)
2603interface ID3D11BlendState : ID3D11DeviceChild
2606 [out] D3D11_BLEND_DESC *pDesc);
2612 uuid(48570b85-d1ee-4fcd-a250-eb350722b037)
2614interface ID3D11Buffer : ID3D11Resource
2617 [out] D3D11_BUFFER_DESC *pDesc);
2623 uuid(a6cd7faa-b0b7-4a2f-9436-8662a65797cb)
2625interface ID3D11ClassInstance : ID3D11DeviceChild
2627 void GetClassLinkage(
2628 [out] ID3D11ClassLinkage **ppLinkage);
2630 [out] D3D11_CLASS_INSTANCE_DESC *pDesc);
2631 void GetInstanceName(
2632 [out] LPSTR pInstanceName,
2633 [in, out] SIZE_T *pBufferLength);
2635 [out] LPSTR pTypeName,
2636 [in, out] SIZE_T *pBufferLength);
2642 uuid(ddf57cba-9543-46e4-a12b-f207a0fe7fed)
2644interface ID3D11ClassLinkage : ID3D11DeviceChild
2646 HRESULT GetClassInstance(
2647 [in] LPCSTR pClassInstanceName,
2648 [in] UINT InstanceIndex,
2649 [out] ID3D11ClassInstance **ppInstance);
2650 HRESULT CreateClassInstance(
2651 [in] LPCSTR pClassTypeName,
2652 [in] UINT ConstantBufferOffset,
2653 [in] UINT ConstantVectorOffset,
2654 [in] UINT TextureOffset,
2655 [in] UINT SamplerOffset,
2656 [out] ID3D11ClassInstance **ppInstance);
2662 uuid(a24bc4d1-769e-43f7-8013-98ff566c18e2)
2664interface ID3D11CommandList : ID3D11DeviceChild
2666 UINT GetContextFlags();
2672 uuid(4f5b196e-c2bd-495e-bd01-1fded38e4969)
2674interface ID3D11ComputeShader : ID3D11DeviceChild
2681 uuid(6e8c49fb-a371-4770-b440-29086022b741)
2683interface ID3D11Counter : ID3D11Asynchronous
2686 [out] D3D11_COUNTER_DESC *pDesc);
2692 uuid(03823efb-8d8f-4e1c-9aa2-f64bb2cbfdf1)
2694interface ID3D11DepthStencilState : ID3D11DeviceChild
2697 [out] D3D11_DEPTH_STENCIL_DESC *pDesc);
2703 uuid(9fdac92a-1876-48c3-afad-25b94f84a9b6)
2705interface ID3D11DepthStencilView : ID3D11View
2708 [out] D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc);
2714 uuid(f582c508-0f36-490c-9977-31eece268cfa)
2716interface ID3D11DomainShader : ID3D11DeviceChild
2723 uuid(38325b96-effb-4022-ba02-2e795b70275c)
2725interface ID3D11GeometryShader : ID3D11DeviceChild
2732 uuid(8e5c6061-628a-4c8e-8264-bbe45cb3d5dd)
2734interface ID3D11HullShader : ID3D11DeviceChild
2741 uuid(e4819ddc-4cf0-4025-bd26-5de82a3e07b7)
2743interface ID3D11InputLayout : ID3D11DeviceChild
2750 uuid(ea82e40d-51dc-4f33-93d4-db7c9125ae8c)
2752interface ID3D11PixelShader : ID3D11DeviceChild
2759 uuid(9eb576dd-9f77-4d86-81aa-8bab5fe490e2)
2761interface ID3D11Predicate : ID3D11Query
2768 uuid(9bb4ab81-ab1a-4d8f-b506-fc04200b6ee7)
2770interface ID3D11RasterizerState : ID3D11DeviceChild
2773 [out] D3D11_RASTERIZER_DESC *pDesc);
2779 uuid(dfdba067-0b8d-4865-875b-d7b4516cc164)
2781interface ID3D11RenderTargetView : ID3D11View
2784 [out] D3D11_RENDER_TARGET_VIEW_DESC *pDesc);
2790 uuid(da6fea51-564c-4487-9810-f0d0f9b4e3a5)
2792interface ID3D11SamplerState : ID3D11DeviceChild
2795 [out] D3D11_SAMPLER_DESC *pDesc);
2801 uuid(b0e06fe0-8192-4e1a-b1ca-36d7414710b2)
2803interface ID3D11ShaderResourceView : ID3D11View
2806 [out] D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc);
2812 uuid(f8fb5c27-c6b3-4f75-a4c8-439af2ef564c),
2814interface ID3D11Texture1D : ID3D11Resource
2817 [out] D3D11_TEXTURE1D_DESC *pDesc);
2823 uuid(6f15aaf2-d208-4e89-9ab4-489535d34f9c)
2825interface ID3D11Texture2D : ID3D11Resource
2828 [out] D3D11_TEXTURE2D_DESC *pDesc);
2834 uuid(037e866e-f56d-4357-a8af-9dabbe6e250e)
2836interface ID3D11Texture3D : ID3D11Resource
2839 [out] D3D11_TEXTURE3D_DESC *pDesc);
2845 uuid(28acf509-7f5c-48f6-8611-f316010a6380)
2847interface ID3D11UnorderedAccessView : ID3D11View
2850 [out] D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc);
2856 uuid(3b301d64-d678-4289-8897-22f8928b72f3)
2858interface ID3D11VertexShader : ID3D11DeviceChild
2865 uuid(c0bfa96c-e089-44fb-8eaf-26f8796190da)
2867interface ID3D11DeviceContext : ID3D11DeviceChild
2869 void VSSetConstantBuffers(
2870 [in] UINT StartSlot,
2871 [in] UINT NumBuffers,
2872 [in] ID3D11Buffer *const *ppConstantBuffers);
2873 void PSSetShaderResources(
2874 [in] UINT StartSlot,
2876 [in] ID3D11ShaderResourceView *const *ppShaderResourceViews);
2878 [in] ID3D11PixelShader *pPixelShader,
2879 [in] ID3D11ClassInstance *const *ppClassInstances,
2880 UINT NumClassInstances);
2882 [in] UINT StartSlot,
2883 [in] UINT NumSamplers,
2884 [in] ID3D11SamplerState *const *ppSamplers);
2886 [in] ID3D11VertexShader *pVertexShader,
2887 [in] ID3D11ClassInstance *const *ppClassInstances,
2888 UINT NumClassInstances);
2890 [in] UINT IndexCount,
2891 [in] UINT StartIndexLocation,
2892 [in] INT BaseVertexLocation);
2894 [in] UINT VertexCount,
2895 [in] UINT StartVertexLocation);
2897 [in] ID3D11Resource *pResource,
2898 [in] UINT Subresource,
2899 [in] D3D11_MAP MapType,
2901 [out] D3D11_MAPPED_SUBRESOURCE *pMappedResource);
2903 [in] ID3D11Resource *pResource,
2904 [in] UINT Subresource);
2905 void PSSetConstantBuffers(
2906 [in] UINT StartSlot,
2907 [in] UINT NumBuffers,
2908 [in] ID3D11Buffer *const *ppConstantBuffers);
2909 void IASetInputLayout(
2910 [in] ID3D11InputLayout *pInputLayout);
2911 void IASetVertexBuffers(
2912 [in] UINT StartSlot,
2913 [in] UINT NumBuffers,
2914 [in] ID3D11Buffer *const *ppVertexBuffers,
2915 [in] const UINT *pStrides,
2916 [in] const UINT *pOffsets);
2917 void IASetIndexBuffer(
2918 [in] ID3D11Buffer *pIndexBuffer,
2919 [in] DXGI_FORMAT Format,
2921 void DrawIndexedInstanced(
2922 [in] UINT IndexCountPerInstance,
2923 [in] UINT InstanceCount,
2924 [in] UINT StartIndexLocation,
2925 [in] INT BaseVertexLocation,
2926 [in] UINT StartInstanceLocation);
2928 [in] UINT VertexCountPerInstance,
2929 [in] UINT InstanceCount,
2930 [in] UINT StartVertexLocation,
2931 [in] UINT StartInstanceLocation);
2932 void GSSetConstantBuffers(
2933 [in] UINT StartSlot,
2934 [in] UINT NumBuffers,
2935 [in] ID3D11Buffer *const *ppConstantBuffers);
2937 [in] ID3D11GeometryShader *pShader,
2938 [in] ID3D11ClassInstance *const *ppClassInstances,
2939 UINT NumClassInstances);
2940 void IASetPrimitiveTopology(
2941 [in] D3D11_PRIMITIVE_TOPOLOGY Topology);
2942 void VSSetShaderResources(
2943 [in] UINT StartSlot,
2945 [in] ID3D11ShaderResourceView *const *ppShaderResourceViews);
2947 [in] UINT StartSlot,
2948 [in] UINT NumSamplers,
2949 [in] ID3D11SamplerState *const *ppSamplers);
2951 [in] ID3D11Asynchronous *pAsync);
2953 [in] ID3D11Asynchronous *pAsync);
2955 [in] ID3D11Asynchronous *pAsync,
2958 [in] UINT GetDataFlags);
2959 void SetPredication(
2960 [in] ID3D11Predicate *pPredicate,
2961 [in] BOOL PredicateValue);
2962 void GSSetShaderResources(
2963 [in] UINT StartSlot,
2965 [in] ID3D11ShaderResourceView *const *ppShaderResourceViews);
2967 [in] UINT StartSlot,
2968 [in] UINT NumSamplers,
2969 [in] ID3D11SamplerState *const *ppSamplers);
2970 void OMSetRenderTargets(
2972 [in] ID3D11RenderTargetView *const *ppRenderTargetViews,
2973 [in] ID3D11DepthStencilView *pDepthStencilView);
2974 void OMSetRenderTargetsAndUnorderedAccessViews(
2976 [in] ID3D11RenderTargetView *const *ppRenderTargetViews,
2977 [in] ID3D11DepthStencilView *pDepthStencilView,
2978 [in] UINT UAVStartSlot,
2980 [in] ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,
2981 [in] const UINT *pUAVInitialCounts);
2982 void OMSetBlendState(
2983 [in] ID3D11BlendState *pBlendState,
2984 [in] const FLOAT BlendFactor[4],
2985 [in] UINT SampleMask);
2986 void OMSetDepthStencilState(
2987 [in] ID3D11DepthStencilState *pDepthStencilState,
2988 [in] UINT StencilRef);
2990 [in] UINT NumBuffers,
2991 [in] ID3D11Buffer *const *ppSOTargets,
2992 [in] const UINT *pOffsets);
2994 void DrawIndexedInstancedIndirect(
2995 [in] ID3D11Buffer *pBufferForArgs,
2996 [in] UINT AlignedByteOffsetForArgs);
2997 void DrawInstancedIndirect(
2998 [in] ID3D11Buffer *pBufferForArgs,
2999 [in] UINT AlignedByteOffsetForArgs);
3001 [in] UINT ThreadGroupCountX,
3002 [in] UINT ThreadGroupCountY,
3003 [in] UINT ThreadGroupCountZ);
3004 void DispatchIndirect(
3005 [in] ID3D11Buffer *pBufferForArgs,
3006 [in] UINT AlignedByteOffsetForArgs);
3008 [in] ID3D11RasterizerState *pRasterizerState);
3009 void RSSetViewports(
3010 [in] UINT NumViewports,
3011 [in] const D3D11_VIEWPORT *pViewports);
3012 void RSSetScissorRects(
3014 [in] const D3D11_RECT *pRects);
3015 void CopySubresourceRegion(
3016 [in] ID3D11Resource *pDstResource,
3017 [in] UINT DstSubresource,
3021 [in] ID3D11Resource *pSrcResource,
3022 [in] UINT SrcSubresource,
3023 [in] const D3D11_BOX *pSrcBox);
3025 [in] ID3D11Resource *pDstResource,
3026 [in] ID3D11Resource *pSrcResource);
3027 void UpdateSubresource(
3028 [in] ID3D11Resource *pDstResource,
3029 [in] UINT DstSubresource,
3030 [in] const D3D11_BOX *pDstBox,
3031 [in] const void *pSrcData,
3032 [in] UINT SrcRowPitch,
3033 [in] UINT SrcDepthPitch);
3034 void CopyStructureCount(
3035 [in] ID3D11Buffer *pDstBuffer,
3036 [in] UINT DstAlignedByteOffset,
3037 [in] ID3D11UnorderedAccessView *pSrcView);
3038 void ClearRenderTargetView(
3039 [in] ID3D11RenderTargetView *pRenderTargetView,
3040 [in] const FLOAT ColorRGBA[4]);
3041 void ClearUnorderedAccessViewUint(
3042 [in] ID3D11UnorderedAccessView *pUnorderedAccessView,
3043 [in] const UINT Values[4]);
3044 void ClearUnorderedAccessViewFloat(
3045 [in] ID3D11UnorderedAccessView *pUnorderedAccessView,
3046 [in] const FLOAT Values[4]);
3047 void ClearDepthStencilView(
3048 [in] ID3D11DepthStencilView *pDepthStencilView,
3049 [in] UINT ClearFlags,
3051 [in] UINT8 Stencil);
3053 [in] ID3D11ShaderResourceView *pShaderResourceView);
3054 void SetResourceMinLOD(
3055 [in] ID3D11Resource *pResource, FLOAT MinLOD);
3056 FLOAT GetResourceMinLOD(
3057 [in] ID3D11Resource *pResource);
3058 void ResolveSubresource(
3059 [in] ID3D11Resource *pDstResource,
3060 [in] UINT DstSubresource,
3061 [in] ID3D11Resource *pSrcResource,
3062 [in] UINT SrcSubresource,
3063 [in] DXGI_FORMAT Format);
3064 void ExecuteCommandList(
3065 [in] ID3D11CommandList *pCommandList,
3066 BOOL RestoreContextState);
3067 void HSSetShaderResources(
3068 [in] UINT StartSlot,
3070 [in] ID3D11ShaderResourceView *const *ppShaderResourceViews);
3072 [in] ID3D11HullShader *pHullShader,
3073 [in] ID3D11ClassInstance *const *ppClassInstances,
3074 UINT NumClassInstances);
3076 [in] UINT StartSlot,
3077 [in] UINT NumSamplers,
3078 [in] ID3D11SamplerState *const *ppSamplers);
3079 void HSSetConstantBuffers(
3080 [in] UINT StartSlot,
3081 [in] UINT NumBuffers,
3082 [in] ID3D11Buffer *const *ppConstantBuffers);
3083 void DSSetShaderResources(
3084 [in] UINT StartSlot,
3086 [in] ID3D11ShaderResourceView *const *ppShaderResourceViews);
3088 [in] ID3D11DomainShader *pDomainShader,
3089 [in] ID3D11ClassInstance *const *ppClassInstances,
3090 UINT NumClassInstances);
3092 [in] UINT StartSlot,
3093 [in] UINT NumSamplers,
3094 [in] ID3D11SamplerState *const *ppSamplers);
3095 void DSSetConstantBuffers(
3096 [in] UINT StartSlot,
3097 [in] UINT NumBuffers,
3098 [in] ID3D11Buffer *const *ppConstantBuffers);
3099 void CSSetShaderResources(
3100 [in] UINT StartSlot,
3102 [in] ID3D11ShaderResourceView *const *ppShaderResourceViews);
3103 void CSSetUnorderedAccessViews(
3104 [in] UINT StartSlot,
3106 [in] ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,
3107 [in] const UINT *pUAVInitialCounts);
3109 [in] ID3D11ComputeShader *pComputeShader,
3110 [in] ID3D11ClassInstance *const *ppClassInstances,
3111 UINT NumClassInstances);
3113 [in] UINT StartSlot,
3114 [in] UINT NumSamplers,
3115 [in] ID3D11SamplerState *const *ppSamplers);
3116 void CSSetConstantBuffers(
3117 [in] UINT StartSlot,
3118 [in] UINT NumBuffers,
3119 [in] ID3D11Buffer *const *ppConstantBuffers);
3120 void VSGetConstantBuffers(
3121 [in] UINT StartSlot,
3122 [in] UINT NumBuffers,
3123 [out] ID3D11Buffer **ppConstantBuffers);
3124 void PSGetShaderResources(
3125 [in] UINT StartSlot,
3127 [out] ID3D11ShaderResourceView **ppShaderResourceViews);
3129 [out] ID3D11PixelShader **ppPixelShader,
3130 [out] ID3D11ClassInstance **ppClassInstances,
3131 [in, out] UINT *pNumClassInstances);
3133 [in] UINT StartSlot,
3134 [in] UINT NumSamplers,
3135 [out] ID3D11SamplerState **ppSamplers);
3137 [out] ID3D11VertexShader **ppVertexShader,
3138 [out] ID3D11ClassInstance **ppClassInstances,
3139 [in, out] UINT *pNumClassInstances);
3140 void PSGetConstantBuffers(
3141 [in] UINT StartSlot,
3142 [in] UINT NumBuffers,
3143 [out] ID3D11Buffer **ppConstantBuffers);
3144 void IAGetInputLayout(
3145 [out] ID3D11InputLayout **ppInputLayout);
3146 void IAGetVertexBuffers(
3147 [in] UINT StartSlot,
3148 [in] UINT NumBuffers,
3149 [out] ID3D11Buffer **ppVertexBuffers,
3150 [out] UINT *pStrides,
3151 [out] UINT *pOffsets);
3152 void IAGetIndexBuffer(
3153 [out] ID3D11Buffer **pIndexBuffer,
3154 [out] DXGI_FORMAT* Format,
3155 [out] UINT* Offset);
3156 void GSGetConstantBuffers(
3157 [in] UINT StartSlot,
3158 [in] UINT NumBuffers,
3159 [out] ID3D11Buffer **ppConstantBuffers);
3161 [out] ID3D11GeometryShader **ppGeometryShader,
3162 [out] ID3D11ClassInstance **ppClassInstances,
3163 [in, out] UINT *pNumClassInstances);
3164 void IAGetPrimitiveTopology(
3165 [out] D3D11_PRIMITIVE_TOPOLOGY *pTopology);
3166 void VSGetShaderResources(
3167 [in] UINT StartSlot,
3169 [out] ID3D11ShaderResourceView **ppShaderResourceViews);
3171 [in] UINT StartSlot,
3172 [in] UINT NumSamplers,
3173 [out] ID3D11SamplerState **ppSamplers);
3174 void GetPredication(
3175 [out] ID3D11Predicate **ppPredicate,
3176 [out] BOOL *pPredicateValue);
3177 void GSGetShaderResources(
3178 [in] UINT StartSlot,
3180 [out] ID3D11ShaderResourceView **ppShaderResourceViews);
3182 [in] UINT StartSlot,
3183 [in] UINT NumSamplers,
3184 [out] ID3D11SamplerState **ppSamplers);
3185 void OMGetRenderTargets(
3187 [out] ID3D11RenderTargetView **ppRenderTargetViews,
3188 [out] ID3D11DepthStencilView **ppDepthStencilView);
3189 void OMGetRenderTargetsAndUnorderedAccessViews(
3191 [out] ID3D11RenderTargetView **ppRenderTargetViews,
3192 [out] ID3D11DepthStencilView **ppDepthStencilView,
3193 [in] UINT UAVStartSlot,
3195 [out] ID3D11UnorderedAccessView **ppUnorderedAccessViews);
3196 void OMGetBlendState(
3197 [out] ID3D11BlendState **ppBlendState,
3198 [out] FLOAT BlendFactor[4],
3199 [out] UINT *pSampleMask);
3200 void OMGetDepthStencilState(
3201 [out] ID3D11DepthStencilState **ppDepthStencilState,
3202 [out] UINT *pStencilRef);
3204 [in] UINT NumBuffers,
3205 [out] ID3D11Buffer **ppSOTargets);
3207 [out] ID3D11RasterizerState **ppRasterizerState);
3208 void RSGetViewports(
3209 [in, out] UINT *pNumViewports,
3210 [out] D3D11_VIEWPORT *pViewports);
3211 void RSGetScissorRects(
3212 [in, out] UINT *pNumRects,
3213 [out] D3D11_RECT *pRects);
3214 void HSGetShaderResources(
3215 [in] UINT StartSlot,
3217 [out] ID3D11ShaderResourceView **ppShaderResourceViews);
3219 [out] ID3D11HullShader **ppHullShader,
3220 [out] ID3D11ClassInstance **ppClassInstances,
3221 [in, out] UINT *pNumClassInstances);
3223 [in] UINT StartSlot,
3224 [in] UINT NumSamplers,
3225 [out] ID3D11SamplerState **ppSamplers);
3226 void HSGetConstantBuffers(
3227 [in] UINT StartSlot,
3228 [in] UINT NumBuffers,
3229 [out] ID3D11Buffer **ppConstantBuffers);
3230 void DSGetShaderResources(
3231 [in] UINT StartSlot,
3233 [out] ID3D11ShaderResourceView **ppShaderResourceViews);
3235 [out] ID3D11DomainShader **ppDomainShader,
3236 [out] ID3D11ClassInstance **ppClassInstances,
3237 [in, out] UINT *pNumClassInstances);
3239 [in] UINT StartSlot,
3240 [in] UINT NumSamplers,
3241 [out] ID3D11SamplerState **ppSamplers);
3242 void DSGetConstantBuffers(
3243 [in] UINT StartSlot,
3244 [in] UINT NumBuffers,
3245 [out] ID3D11Buffer **ppConstantBuffers);
3246 void CSGetShaderResources(
3247 [in] UINT StartSlot,
3249 [out] ID3D11ShaderResourceView **ppShaderResourceViews);
3250 void CSGetUnorderedAccessViews(
3251 [in] UINT StartSlot,
3253 [out] ID3D11UnorderedAccessView **ppUnorderedAccessViews);
3255 [out] ID3D11ComputeShader **ppComputeShader,
3256 [out] ID3D11ClassInstance **ppClassInstances,
3257 [in, out] UINT *pNumClassInstances);
3259 [in] UINT StartSlot,
3260 [in] UINT NumSamplers,
3261 [out] ID3D11SamplerState **ppSamplers);
3262 void CSGetConstantBuffers(
3263 [in] UINT StartSlot,
3264 [in] UINT NumBuffers,
3265 [out] ID3D11Buffer **ppConstantBuffers);
3268 D3D11_DEVICE_CONTEXT_TYPE GetType();
3269 UINT GetContextFlags();
3270 HRESULT FinishCommandList(
3271 BOOL RestoreDeferredContextState,
3272 [out] ID3D11CommandList **ppCommandList);
3277 uuid(3015a308-dcbd-47aa-a747-192486d14d4a),
3279 pointer_default(unique)
3281interface ID3D11AuthenticatedChannel : ID3D11DeviceChild
3283 HRESULT GetCertificateSize(
3284 UINT *pCertificateSize);
3285 HRESULT GetCertificate(
3286 UINT CertificateSize,
3287 BYTE *pCertificate);
3288 void GetChannelHandle(
3289 HANDLE *pChannelHandle);
3294 uuid(9b32f9ad-bdcc-40a6-a39d-d5c865845720),
3296 pointer_default(unique)
3298interface ID3D11CryptoSession : ID3D11DeviceChild
3302 void GetDecoderProfile(
3303 GUID *pDecoderProfile);
3304 HRESULT GetCertificateSize(
3305 UINT *pCertificateSize);
3306 HRESULT GetCertificate(
3307 UINT CertificateSize,
3308 BYTE *pCertificate);
3309 void GetCryptoSessionHandle(
3310 HANDLE *pCryptoSessionHandle);
3315 uuid(3c9c5b51-995d-48d1-9b8d-fa5caeded65c),
3317 pointer_default(unique)
3319interface ID3D11VideoDecoder : ID3D11DeviceChild
3321 HRESULT GetCreationParameters(
3322 D3D11_VIDEO_DECODER_DESC *pVideoDesc,
3323 D3D11_VIDEO_DECODER_CONFIG *pConfig);
3324 HRESULT GetDriverHandle(
3325 HANDLE *pDriverHandle);
3330 uuid(31627037-53ab-4200-9061-05faa9ab45f9),
3332 pointer_default(unique)
3334interface ID3D11VideoProcessorEnumerator : ID3D11DeviceChild
3336 HRESULT GetVideoProcessorContentDesc(
3337 D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pContentDesc);
3338 HRESULT CheckVideoProcessorFormat(
3341 HRESULT GetVideoProcessorCaps(
3342 D3D11_VIDEO_PROCESSOR_CAPS *pCaps);
3343 HRESULT GetVideoProcessorRateConversionCaps(
3345 D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps);
3346 HRESULT GetVideoProcessorCustomRate(
3348 UINT CustomRateIndex,
3349 D3D11_VIDEO_PROCESSOR_CUSTOM_RATE *pRate);
3350 HRESULT GetVideoProcessorFilterRange(
3351 D3D11_VIDEO_PROCESSOR_FILTER Filter,
3352 D3D11_VIDEO_PROCESSOR_FILTER_RANGE *pRange);
3357 uuid(1d7b0652-185f-41c6-85ce-0c5be3d4ae6c),
3359 pointer_default(unique)
3361interface ID3D11VideoProcessor : ID3D11DeviceChild
3363 void GetContentDesc(
3364 D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc);
3365 void GetRateConversionCaps(
3366 D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps);
3371 uuid(c2931aea-2a85-4f20-860f-fba1fd256e18),
3373 pointer_default(unique)
3375interface ID3D11VideoDecoderOutputView : ID3D11View
3378 D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc);
3383 uuid(11ec5a5f-51dc-4945-ab34-6e8c21300ea5),
3385 pointer_default(unique)
3387interface ID3D11VideoProcessorInputView : ID3D11View
3390 D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc);
3395 uuid(a048285e-25a9-4527-bd93-d68b68c44254),
3397 pointer_default(unique)
3399interface ID3D11VideoProcessorOutputView : ID3D11View
3402 D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc);
3407 uuid(10ec4d5b-975a-4689-b9e4-d0aac30fe333),
3409 pointer_default(unique)
3411interface ID3D11VideoDevice : IUnknown
3413 HRESULT CreateVideoDecoder(
3414 const D3D11_VIDEO_DECODER_DESC *pVideoDesc,
3415 const D3D11_VIDEO_DECODER_CONFIG *pConfig,
3416 ID3D11VideoDecoder **ppDecoder);
3417 HRESULT CreateVideoProcessor(
3418 ID3D11VideoProcessorEnumerator *pEnum,
3419 UINT RateConversionIndex,
3420 ID3D11VideoProcessor **ppVideoProcessor);
3421 HRESULT CreateAuthenticatedChannel(
3422 D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType,
3423 ID3D11AuthenticatedChannel **ppAuthenticatedChannel);
3424 HRESULT CreateCryptoSession(
3425 const GUID *pCryptoType,
3426 const GUID *pDecoderProfile,
3427 const GUID *pKeyExchangeType,
3428 ID3D11CryptoSession **ppCryptoSession);
3429 HRESULT CreateVideoDecoderOutputView(
3430 ID3D11Resource *pResource,
3431 const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc,
3432 ID3D11VideoDecoderOutputView **ppVDOVView);
3433 HRESULT CreateVideoProcessorInputView(
3434 ID3D11Resource *pResource,
3435 ID3D11VideoProcessorEnumerator *pEnum,
3436 const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc,
3437 ID3D11VideoProcessorInputView **ppVPIView);
3438 HRESULT CreateVideoProcessorOutputView(
3439 ID3D11Resource *pResource,
3440 ID3D11VideoProcessorEnumerator *pEnum,
3441 const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc,
3442 ID3D11VideoProcessorOutputView **ppVPOView);
3443 HRESULT CreateVideoProcessorEnumerator(
3444 const D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc,
3445 ID3D11VideoProcessorEnumerator **ppEnum);
3446 UINT GetVideoDecoderProfileCount();
3447 HRESULT GetVideoDecoderProfile(
3449 GUID *pDecoderProfile);
3450 HRESULT CheckVideoDecoderFormat(
3451 const GUID *pDecoderProfile,
3454 HRESULT GetVideoDecoderConfigCount(
3455 const D3D11_VIDEO_DECODER_DESC *pDesc,
3457 HRESULT GetVideoDecoderConfig(
3458 const D3D11_VIDEO_DECODER_DESC *pDesc,
3460 D3D11_VIDEO_DECODER_CONFIG *pConfig);
3461 HRESULT GetContentProtectionCaps(
3462 const GUID *pCryptoType,
3463 const GUID *pDecoderProfile,
3464 D3D11_VIDEO_CONTENT_PROTECTION_CAPS *pCaps);
3465 HRESULT CheckCryptoKeyExchange(
3466 const GUID *pCryptoType,
3467 const GUID *pDecoderProfile,
3469 GUID *pKeyExchangeType);
3470 HRESULT SetPrivateData(
3474 HRESULT SetPrivateDataInterface(
3476 const IUnknown *pData);
3481 uuid(61f21c45-3c0e-4a74-9cea-67100d9ad5e4),
3483 pointer_default(unique)
3485interface ID3D11VideoContext : ID3D11DeviceChild
3487 HRESULT GetDecoderBuffer(
3488 [in] ID3D11VideoDecoder *decoder,
3489 [in] D3D11_VIDEO_DECODER_BUFFER_TYPE type,
3490 [out] UINT *buffer_size,
3493 HRESULT ReleaseDecoderBuffer(
3494 [in] ID3D11VideoDecoder *decoder,
3495 [in] D3D11_VIDEO_DECODER_BUFFER_TYPE type
3497 HRESULT DecoderBeginFrame(
3498 [in] ID3D11VideoDecoder *decoder,
3499 [in] ID3D11VideoDecoderOutputView *view,
3501 [in] const void *key
3503 HRESULT DecoderEndFrame(
3504 [in] ID3D11VideoDecoder *decoder
3506 HRESULT SubmitDecoderBuffers(
3507 [in] ID3D11VideoDecoder *decoder,
3508 [in] UINT buffers_count,
3509 [in] const D3D11_VIDEO_DECODER_BUFFER_DESC *buffer_desc
3511 HRESULT DecoderExtension(
3512 [in] ID3D11VideoDecoder *decoder,
3513 [in] const D3D11_VIDEO_DECODER_EXTENSION *extension
3515 void VideoProcessorSetOutputTargetRect(
3516 [in] ID3D11VideoProcessor *processor,
3518 [in] const RECT *rect
3520 void VideoProcessorSetOutputBackgroundColor(
3521 [in] ID3D11VideoProcessor *processor,
3523 [in] const D3D11_VIDEO_COLOR *color
3525 void VideoProcessorSetOutputColorSpace(
3526 [in] ID3D11VideoProcessor *processor,
3527 [in] const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space
3529 void VideoProcessorSetOutputAlphaFillMode(
3530 [in] ID3D11VideoProcessor *processor,
3531 [in] D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE alpha_fill_mode,
3532 [in] UINT stream_idx
3534 void VideoProcessorSetOutputConstriction(
3535 [in] ID3D11VideoProcessor *processor,
3539 void VideoProcessorSetOutputStereoMode(
3540 [in] ID3D11VideoProcessor *processor,
3543 HRESULT VideoProcessorSetOutputExtension(
3544 [in] ID3D11VideoProcessor *processor,
3545 [in] const GUID *guid,
3546 [in] UINT data_size,
3549 void VideoProcessorGetOutputTargetRect(
3550 [in] ID3D11VideoProcessor *processor,
3551 [out] BOOL *enabled,
3554 void VideoProcessorGetOutputBackgroundColor(
3555 [in] ID3D11VideoProcessor *processor,
3556 [out] BOOL *y_cb_cr,
3557 [out] D3D11_VIDEO_COLOR *color
3559 void VideoProcessorGetOutputColorSpace(
3560 [in] ID3D11VideoProcessor *processor,
3561 [out] D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space
3563 void VideoProcessorGetOutputAlphaFillMode(
3564 [in] ID3D11VideoProcessor *processor,
3565 [out] D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE *alpha_fill_mode,
3566 [out] UINT *stream_idx
3568 void VideoProcessorGetOutputConstriction(
3569 [in] ID3D11VideoProcessor *processor,
3570 [out] BOOL *enabled,
3573 void VideoProcessorGetOutputStereoMode(
3574 [in] ID3D11VideoProcessor *processor,
3577 HRESULT VideoProcessorGetOutputExtension(
3578 [in] ID3D11VideoProcessor *processor,
3579 [in] const GUID *guid,
3580 [in] UINT data_size,
3583 void VideoProcessorSetStreamFrameFormat(
3584 [in] ID3D11VideoProcessor *processor,
3585 [in] UINT stream_idx,
3586 [in] D3D11_VIDEO_FRAME_FORMAT format
3588 void VideoProcessorSetStreamColorSpace(
3589 [in] ID3D11VideoProcessor *processor,
3590 [in] UINT stream_idx,
3591 [in] const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space
3593 void VideoProcessorSetStreamOutputRate(
3594 [in] ID3D11VideoProcessor *processor,
3595 [in] UINT stream_idx,
3596 [in] D3D11_VIDEO_PROCESSOR_OUTPUT_RATE rate,
3598 [in] const DXGI_RATIONAL *custom_rate
3600 void VideoProcessorSetStreamSourceRect(
3601 [in] ID3D11VideoProcessor *processor,
3602 [in] UINT stream_idx,
3604 [in] const RECT *rect
3606 void VideoProcessorSetStreamDestRect(
3607 [in] ID3D11VideoProcessor *processor,
3608 [in] UINT stream_idx,
3610 [in] const RECT *rect
3612 void VideoProcessorSetStreamAlpha(
3613 [in] ID3D11VideoProcessor *processor,
3614 [in] UINT stream_idx,
3618 void VideoProcessorSetStreamPalette(
3619 [in] ID3D11VideoProcessor *processor,
3620 [in] UINT stream_idx,
3621 [in] UINT entry_count,
3622 [in] const UINT *entries
3624 void VideoProcessorSetStreamPixelAspectRatio(
3625 [in] ID3D11VideoProcessor *processor,
3626 [in] UINT stream_idx,
3628 [in] const DXGI_RATIONAL *src_aspect_ratio,
3629 [in] const DXGI_RATIONAL *dst_aspect_ratio
3631 void VideoProcessorSetStreamLumaKey(
3632 [in] ID3D11VideoProcessor *processor,
3633 [in] UINT stream_idx,
3638 void VideoProcessorSetStreamStereoFormat(
3639 [in] ID3D11VideoProcessor *processor,
3640 [in] UINT stream_idx,
3642 [in] D3D11_VIDEO_PROCESSOR_STEREO_FORMAT format,
3643 [in] BOOL left_view_frame0,
3644 [in] BOOL base_view_frame0,
3645 [in] D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE flip_mode,
3646 [in] int mono_offset
3648 void VideoProcessorSetStreamAutoProcessingMode(
3649 [in] ID3D11VideoProcessor *processor,
3650 [in] UINT stream_idx,
3653 void VideoProcessorSetStreamFilter(
3654 [in] ID3D11VideoProcessor *processor,
3655 [in] UINT stream_idx,
3656 [in] D3D11_VIDEO_PROCESSOR_FILTER filter,
3660 HRESULT VideoProcessorSetStreamExtension(
3661 [in] ID3D11VideoProcessor *processor,
3662 [in] UINT stream_idx,
3663 [in] const GUID *guid,
3664 [in] UINT data_size,
3667 void VideoProcessorGetStreamFrameFormat(
3668 [in] ID3D11VideoProcessor *processor,
3669 [in] UINT stream_idx,
3670 [out] D3D11_VIDEO_FRAME_FORMAT *format
3672 void VideoProcessorGetStreamColorSpace(
3673 [in] ID3D11VideoProcessor *processor,
3674 [in] UINT stream_idx,
3675 [out] D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space
3677 void VideoProcessorGetStreamOutputRate(
3678 [in] ID3D11VideoProcessor *processor,
3679 [in] UINT stream_idx,
3680 [out] D3D11_VIDEO_PROCESSOR_OUTPUT_RATE *rate,
3682 [out] DXGI_RATIONAL *custom_rate
3684 void VideoProcessorGetStreamSourceRect(
3685 [in] ID3D11VideoProcessor *processor,
3686 [in] UINT stream_idx,
3687 [out] BOOL *enabled,
3690 void VideoProcessorGetStreamDestRect(
3691 [in] ID3D11VideoProcessor *processor,
3692 [in] UINT stream_idx,
3693 [out] BOOL *enabled,
3696 void VideoProcessorGetStreamAlpha(
3697 [in] ID3D11VideoProcessor *processor,
3698 [in] UINT stream_idx,
3699 [out] BOOL *enabled,
3702 void VideoProcessorGetStreamPalette(
3703 [in] ID3D11VideoProcessor *processor,
3704 [in] UINT stream_idx,
3705 [in] UINT entry_count,
3708 void VideoProcessorGetStreamPixelAspectRatio(
3709 [in] ID3D11VideoProcessor *processor,
3710 [in] UINT stream_idx,
3711 [out] BOOL *enabled,
3712 [out] DXGI_RATIONAL *src_aspect_ratio,
3713 [out] DXGI_RATIONAL *dst_aspect_ratio
3715 void VideoProcessorGetStreamLumaKey(
3716 [in] ID3D11VideoProcessor *processor,
3717 [in] UINT stream_idx,
3718 [out] BOOL *enabled,
3722 void VideoProcessorGetStreamStereoFormat(
3723 [in] ID3D11VideoProcessor *processor,
3724 [in] UINT stream_idx,
3725 [out] BOOL *enabled,
3726 [out] D3D11_VIDEO_PROCESSOR_STEREO_FORMAT *format,
3727 [out] BOOL *left_view_frame0,
3728 [out] BOOL *base_view_frame0,
3729 [out] D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE *flip_mode,
3730 [out] int *mono_offset
3732 void VideoProcessorGetStreamAutoProcessingMode(
3733 [in] ID3D11VideoProcessor *processor,
3734 [in] UINT stream_idx,
3737 void VideoProcessorGetStreamFilter(
3738 [in] ID3D11VideoProcessor *processor,
3739 [in] UINT stream_idx,
3740 [in] D3D11_VIDEO_PROCESSOR_FILTER filter,
3741 [out] BOOL *enabled,
3744 HRESULT VideoProcessorGetStreamExtension(
3745 [in] ID3D11VideoProcessor *processor,
3746 [in] UINT stream_idx,
3747 [in] const GUID *guid,
3748 [in] UINT data_size,
3751 HRESULT VideoProcessorBlt(
3752 [in] ID3D11VideoProcessor *processor,
3753 [in] ID3D11VideoProcessorOutputView *view,
3754 [in] UINT frame_idx,
3755 [in] UINT stream_count,
3756 [in] const D3D11_VIDEO_PROCESSOR_STREAM *streams
3758 HRESULT NegotiateCryptoSessionKeyExchange(
3759 [in] ID3D11CryptoSession *session,
3760 [in] UINT data_size,
3761 [in, out] void *data
3764 [in] ID3D11CryptoSession *session,
3765 [in] ID3D11Texture2D *src_surface,
3766 [in] ID3D11Texture2D *dst_surface,
3771 [in] ID3D11CryptoSession *session,
3772 [in] ID3D11Texture2D *src_surface,
3773 [in] ID3D11Texture2D *dst_surface,
3774 [in] D3D11_ENCRYPTED_BLOCK_INFO *block_info,
3776 [in] const void *key,
3780 void StartSessionKeyRefresh(
3781 [in] ID3D11CryptoSession *session,
3782 [in] UINT random_number_size,
3783 [out] void *random_number
3785 void FinishSessionKeyRefresh(
3786 [in] ID3D11CryptoSession *session
3788 HRESULT GetEncryptionBltKey(
3789 [in] ID3D11CryptoSession *session,
3793 HRESULT NegotiateAuthenticatedChannelKeyExchange(
3794 [in] ID3D11AuthenticatedChannel *channel,
3795 [in] UINT data_size,
3796 [in, out] void *data
3798 HRESULT QueryAuthenticatedChannel(
3799 [in] ID3D11AuthenticatedChannel *channel,
3800 [in] UINT input_size,
3801 [in] const void *input,
3802 [in] UINT output_size,
3805 HRESULT ConfigureAuthenticatedChannel(
3806 [in] ID3D11AuthenticatedChannel *channel,
3807 [in] UINT input_size,
3808 [in] const void *input,
3809 [out] D3D11_AUTHENTICATED_CONFIGURE_OUTPUT *output
3811 void VideoProcessorSetStreamRotation(
3812 [in] ID3D11VideoProcessor *processor,
3813 [in] UINT stream_idx,
3815 [in] D3D11_VIDEO_PROCESSOR_ROTATION rotation
3817 void VideoProcessorGetStreamRotation(
3818 [in] ID3D11VideoProcessor *processor,
3819 [in] UINT stream_idx,
3821 [out] D3D11_VIDEO_PROCESSOR_ROTATION *rotation
3828 uuid(db6f6ddb-ac77-4e88-8253-819df9bbf140)
3830interface ID3D11Device : IUnknown
3832 HRESULT CreateBuffer(
3833 [in] const D3D11_BUFFER_DESC *pDesc,
3834 [in] const D3D11_SUBRESOURCE_DATA *pInitialData,
3835 [out] ID3D11Buffer **ppBuffer);
3836 HRESULT CreateTexture1D(
3837 [in] const D3D11_TEXTURE1D_DESC *pDesc,
3838 [in] const D3D11_SUBRESOURCE_DATA *pInitialData,
3839 [out] ID3D11Texture1D **ppTexture1D);
3840 HRESULT CreateTexture2D(
3841 [in] const D3D11_TEXTURE2D_DESC *pDesc,
3842 [in] const D3D11_SUBRESOURCE_DATA *pInitialData,
3843 [out] ID3D11Texture2D **ppTexture2D);
3844 HRESULT CreateTexture3D(
3845 [in] const D3D11_TEXTURE3D_DESC *pDesc,
3846 [in] const D3D11_SUBRESOURCE_DATA *pInitialData,
3847 [out] ID3D11Texture3D **ppTexture3D);
3848 HRESULT CreateShaderResourceView(
3849 [in] ID3D11Resource *pResource,
3850 [in] const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc,
3851 [out] ID3D11ShaderResourceView **ppSRView);
3852 HRESULT CreateUnorderedAccessView(
3853 [in] ID3D11Resource *pResource,
3854 [in] const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc,
3855 [out] ID3D11UnorderedAccessView **ppUAView);
3856 HRESULT CreateRenderTargetView(
3857 [in] ID3D11Resource *pResource,
3858 [in] const D3D11_RENDER_TARGET_VIEW_DESC *pDesc,
3859 [out] ID3D11RenderTargetView **ppRTView);
3860 HRESULT CreateDepthStencilView(
3861 [in] ID3D11Resource *pResource,
3862 [in] const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc,
3863 [out] ID3D11DepthStencilView **ppDepthStencilView);
3864 HRESULT CreateInputLayout(
3865 [in] const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs,
3866 [in] UINT NumElements,
3867 [in] const void *pShaderBytecodeWithInputSignature,
3868 [in] SIZE_T BytecodeLength,
3869 [out] ID3D11InputLayout **ppInputLayout);
3870 HRESULT CreateVertexShader(
3871 [in] const void *pShaderBytecode,
3872 [in] SIZE_T BytecodeLength,
3873 [in] ID3D11ClassLinkage *pClassLinkage,
3874 [out] ID3D11VertexShader **ppVertexShader);
3875 HRESULT CreateGeometryShader(
3876 [in] const void *pShaderBytecode,
3877 [in] SIZE_T BytecodeLength,
3878 [in] ID3D11ClassLinkage *pClassLinkage,
3879 [out] ID3D11GeometryShader **ppGeometryShader);
3880 HRESULT CreateGeometryShaderWithStreamOutput(
3881 [in] const void *pShaderBytecode,
3882 [in] SIZE_T BytecodeLength,
3883 [in] const D3D11_SO_DECLARATION_ENTRY *pSODeclaration,
3884 [in] UINT NumEntries,
3885 [in] const UINT *pBufferStrides,
3886 [in] UINT NumStrides,
3887 [in] UINT RasterizedStream,
3888 [in] ID3D11ClassLinkage *pClassLinkage,
3889 [out] ID3D11GeometryShader **ppGeometryShader);
3890 HRESULT CreatePixelShader(
3891 [in] const void *pShaderBytecode,
3892 [in] SIZE_T BytecodeLength,
3893 [in] ID3D11ClassLinkage *pClassLinkage,
3894 [out] ID3D11PixelShader **ppPixelShader);
3895 HRESULT CreateHullShader(
3896 [in] const void *pShaderBytecode,
3897 [in] SIZE_T BytecodeLength,
3898 [in] ID3D11ClassLinkage *pClassLinkage,
3899 [out] ID3D11HullShader **ppHullShader);
3900 HRESULT CreateDomainShader(
3901 [in] const void *pShaderBytecode,
3902 [in] SIZE_T BytecodeLength,
3903 [in] ID3D11ClassLinkage *pClassLinkage,
3904 [out] ID3D11DomainShader **ppDomainShader);
3905 HRESULT CreateComputeShader(
3906 [in] const void *pShaderBytecode,
3907 [in] SIZE_T BytecodeLength,
3908 [in] ID3D11ClassLinkage *pClassLinkage,
3909 [out] ID3D11ComputeShader **ppComputeShader);
3910 HRESULT CreateClassLinkage(
3911 [out] ID3D11ClassLinkage **ppLinkage);
3912 HRESULT CreateBlendState(
3913 [in] const D3D11_BLEND_DESC *pBlendStateDesc,
3914 [out] ID3D11BlendState **ppBlendState);
3915 HRESULT CreateDepthStencilState(
3916 [in] const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc,
3917 [out] ID3D11DepthStencilState **ppDepthStencilState);
3918 HRESULT CreateRasterizerState(
3919 [in] const D3D11_RASTERIZER_DESC *pRasterizerDesc,
3920 [out] ID3D11RasterizerState **ppRasterizerState);
3921 HRESULT CreateSamplerState(
3922 [in] const D3D11_SAMPLER_DESC *pSamplerDesc,
3923 [out] ID3D11SamplerState **ppSamplerState);
3924 HRESULT CreateQuery(
3925 [in] const D3D11_QUERY_DESC *pQueryDesc,
3926 [out] ID3D11Query **ppQuery);
3927 HRESULT CreatePredicate(
3928 [in] const D3D11_QUERY_DESC *pPredicateDesc,
3929 [out] ID3D11Predicate **ppPredicate);
3930 HRESULT CreateCounter(
3931 [in] const D3D11_COUNTER_DESC *pCounterDesc,
3932 [out] ID3D11Counter **ppCounter);
3933 HRESULT CreateDeferredContext(
3935 [out] ID3D11DeviceContext **ppDeferredContext);
3936 HRESULT OpenSharedResource(
3937 [in] HANDLE hResource,
3938 [in] REFIID ReturnedInterface,
3939 [out] void **ppResource);
3940 HRESULT CheckFormatSupport(
3941 [in] DXGI_FORMAT Format,
3942 [out] UINT *pFormatSupport);
3943 HRESULT CheckMultisampleQualityLevels(
3944 [in] DXGI_FORMAT Format,
3945 [in] UINT SampleCount,
3946 [out] UINT *pNumQualityLevels);
3947 void CheckCounterInfo(
3948 [out] D3D11_COUNTER_INFO *pCounterInfo);
3949 HRESULT CheckCounter(
3950 [in] const D3D11_COUNTER_DESC *pDesc,
3951 [out] D3D11_COUNTER_TYPE *pType,
3952 [out] UINT *pActiveCounters,
3954 [in, out] UINT *pNameLength,
3955 [out] LPSTR szUnits,
3956 [in, out] UINT *pUnitsLength,
3957 [out] LPSTR szDescription,
3958 [in, out] UINT *pDescriptionLength);
3959 HRESULT CheckFeatureSupport(
3960 D3D11_FEATURE Feature,
3961 [out] void *pFeatureSupportData,
3962 UINT FeatureSupportDataSize);
3963 HRESULT GetPrivateData(
3965 [in, out] UINT *pDataSize,
3967 HRESULT SetPrivateData(
3970 [in] const void *pData);
3971 HRESULT SetPrivateDataInterface(
3973 [in] const IUnknown *pData);
3974 D3D_FEATURE_LEVEL GetFeatureLevel();
3975 UINT GetCreationFlags();
3976 HRESULT GetDeviceRemovedReason();
3977 void GetImmediateContext(
3978 [out] ID3D11DeviceContext **ppImmediateContext);
3979 HRESULT SetExceptionMode(UINT RaiseFlags);
3980 UINT GetExceptionMode();
3983typedef enum D3D11_CREATE_DEVICE_FLAG {
3984 D3D11_CREATE_DEVICE_SINGLETHREADED = 0x0001,
3985 D3D11_CREATE_DEVICE_DEBUG = 0x0002,
3986 D3D11_CREATE_DEVICE_SWITCH_TO_REF = 0x0004,
3987 D3D11_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS = 0x0008,
3988 D3D11_CREATE_DEVICE_BGRA_SUPPORT = 0x0020,
3989 D3D11_CREATE_DEVICE_DEBUGGABLE = 0x0040,
3990 D3D11_CREATE_DEVICE_PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY = 0x0080,
3991 D3D11_CREATE_DEVICE_DISABLE_GPU_TIMEOUT = 0x0100,
3992 D3D11_CREATE_DEVICE_VIDEO_SUPPORT = 0x0800
3993} D3D11_CREATE_DEVICE_FLAG;
3995typedef enum D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT
3997 D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_INPUT = 0x0001,
3998 D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_OUTPUT = 0x0002,
3999} D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT;
4001const UINT D3D11_SDK_VERSION = 7;
4003cpp_quote("#
include <d3d10_1.h>
")
4004cpp_quote("#ifndef D3D11_IGNORE_SDK_LAYERS
")
4005cpp_quote("#
include <d3d11sdklayers.h>
")
4007cpp_quote("#
include <d3d10misc.h>
")
4008cpp_quote("#
include <d3d10shader.h>
")
4009cpp_quote("#
include <d3d10effect.h>
")
4010cpp_quote("#
include <d3d10_1shader.h>
")
4012const UINT _FACD3D11 = 0x87c;
4025[local] HRESULT __stdcall D3D11CreateDeviceAndSwapChain(IDXGIAdapter *adapter, D3D_DRIVER_TYPE driver_type,
4026 HMODULE swrast, UINT flags, const D3D_FEATURE_LEVEL *feature_levels, UINT levels, UINT sdk_version,
4027 const DXGI_SWAP_CHAIN_DESC *swapchain_desc, IDXGISwapChain **swapchain, ID3D11Device **device,
4028 D3D_FEATURE_LEVEL *obtained_feature_level, ID3D11DeviceContext **immediate_context);
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn UINT32 *TableIdx UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE UINT32 MaxDepth
CD3D10_BUFFER_DESC D3D10_BUFFER_DESC cpp_quote(" ~CD3D10_BUFFER_DESC() {}") operator const D3D10_BUFFER_DESC &() const
D3D_PRIMITIVE D3D11_PRIMITIVE
@ D3D11_FILTER_MIN_MAG_MIP_LINEAR
const UINT D3D11_DEFAULT_STENCIL_READ_MASK
D3D_PRIMITIVE_TOPOLOGY D3D11_PRIMITIVE_TOPOLOGY
const unsigned int D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT
@ D3D11_COMPARISON_ALWAYS
@ D3D11_DEPTH_WRITE_MASK_ALL
const UINT D3D11_DEFAULT_STENCIL_WRITE_MASK
D3D_SRV_DIMENSION D3D11_SRV_DIMENSION
HRESULT WINAPI D3D11CreateDevice(IDXGIAdapter *adapter, D3D_DRIVER_TYPE driver_type, HMODULE swrast, UINT flags, const D3D_FEATURE_LEVEL *feature_levels, UINT levels, UINT sdk_version, ID3D11Device **device_out, D3D_FEATURE_LEVEL *obtained_feature_level, ID3D11DeviceContext **immediate_context)
@ D3D11_SRV_DIMENSION_TEXTURE1D
@ D3D11_SRV_DIMENSION_TEXTURECUBE
@ D3D11_SRV_DIMENSION_TEXTURE2DARRAY
@ D3D11_SRV_DIMENSION_BUFFER
@ D3D11_SRV_DIMENSION_TEXTURE1DARRAY
@ D3D11_SRV_DIMENSION_BUFFEREX
@ D3D11_SRV_DIMENSION_TEXTURE3D
@ D3D11_SRV_DIMENSION_TEXTURE2DMSARRAY
@ D3D11_SRV_DIMENSION_TEXTURE2D
@ D3D11_SRV_DIMENSION_TEXTURECUBEARRAY
static SIZE_T const char const D3D_SHADER_MACRO ID3DInclude * include
_Check_return_ _In_ D3DDDI_VIDEO_PRESENT_TARGET_ID _In_ PDXGKARG_SYSTEM_DISPLAY_ENABLE_FLAGS _Out_ UINT _Out_ UINT * Height
_Check_return_ _In_ D3DDDI_VIDEO_PRESENT_TARGET_ID _In_ PDXGKARG_SYSTEM_DISPLAY_ENABLE_FLAGS _Out_ UINT * Width
#define MAKE_HRESULT(sev, fac, code)
_Must_inspect_result_ _In_opt_ PFLT_FILTER Filter
GLint GLint GLsizei GLsizei height
GLint GLint GLsizei width
GLsizeiptr const GLvoid GLenum usage
_Must_inspect_result_ _In_ USAGE _In_ USHORT _In_ USAGE Usage
static int double int int double int int double int int double int int double int int double int int x13
static int double int int double int int double int int double int int double int int double int int double int int double int x16
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8)