2 * Copyright 2010 Rico Schüller
3 * Copyright 2013 Austin English
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
23 import
"d3dcommon.idl";
25 typedef D3D_PRIMITIVE D3D11_PRIMITIVE
;
26 typedef D3D_PRIMITIVE_TOPOLOGY D3D11_PRIMITIVE_TOPOLOGY
;
27 typedef D3D_SRV_DIMENSION D3D11_SRV_DIMENSION
;
28 typedef RECT D3D11_RECT
;
30 const unsigned int D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT
= 8;
32 typedef enum D3D11_BLEND
36 D3D11_BLEND_SRC_COLOR
= 3,
37 D3D11_BLEND_INV_SRC_COLOR
= 4,
38 D3D11_BLEND_SRC_ALPHA
= 5,
39 D3D11_BLEND_INV_SRC_ALPHA
= 6,
40 D3D11_BLEND_DEST_ALPHA
= 7,
41 D3D11_BLEND_INV_DEST_ALPHA
= 8,
42 D3D11_BLEND_DEST_COLOR
= 9,
43 D3D11_BLEND_INV_DEST_COLOR
= 10,
44 D3D11_BLEND_SRC_ALPHA_SAT
= 11,
45 D3D11_BLEND_BLEND_FACTOR
= 14,
46 D3D11_BLEND_INV_BLEND_FACTOR
= 15,
47 D3D11_BLEND_SRC1_COLOR
= 16,
48 D3D11_BLEND_INV_SRC1_COLOR
= 17,
49 D3D11_BLEND_SRC1_ALPHA
= 18,
50 D3D11_BLEND_INV_SRC1_ALPHA
= 19,
53 typedef enum D3D11_BLEND_OP
55 D3D11_BLEND_OP_ADD
= 1,
56 D3D11_BLEND_OP_SUBTRACT
,
57 D3D11_BLEND_OP_REV_SUBTRACT
,
62 typedef struct D3D11_BOX
72 typedef struct D3D11_BUFFER_RTV
86 typedef struct D3D11_BUFFER_SRV
100 typedef struct D3D11_BUFFER_UAV
107 typedef struct D3D11_BUFFEREX_SRV
112 } D3D11_BUFFEREX_SRV
;
114 typedef struct D3D11_CLASS_INSTANCE_DESC
120 UINT BaseConstantBufferOffset
;
124 } D3D11_CLASS_INSTANCE_DESC
;
126 typedef enum D3D11_COMPARISON_FUNC
128 D3D11_COMPARISON_NEVER
= 1,
129 D3D11_COMPARISON_LESS
,
130 D3D11_COMPARISON_EQUAL
,
131 D3D11_COMPARISON_LESS_EQUAL
,
132 D3D11_COMPARISON_GREATER
,
133 D3D11_COMPARISON_NOT_EQUAL
,
134 D3D11_COMPARISON_GREATER_EQUAL
,
135 D3D11_COMPARISON_ALWAYS
136 } D3D11_COMPARISON_FUNC
;
138 typedef enum D3D11_COUNTER
140 D3D11_COUNTER_DEVICE_DEPENDENT_0
= 0x40000000,
143 typedef struct D3D11_COUNTER_DESC
145 D3D11_COUNTER Counter
;
147 } D3D11_COUNTER_DESC
;
149 typedef struct D3D11_COUNTER_INFO
151 D3D11_COUNTER LastDeviceDependentCounter
;
152 UINT NumSimultaneousCounters
;
153 UINT8 NumDetectableParallelUnits
;
154 } D3D11_COUNTER_INFO
;
156 typedef enum D3D11_COUNTER_TYPE
158 D3D11_COUNTER_TYPE_FLOAT32
,
159 D3D11_COUNTER_TYPE_UINT16
,
160 D3D11_COUNTER_TYPE_UINT32
,
161 D3D11_COUNTER_TYPE_UINT64
,
162 } D3D11_COUNTER_TYPE
;
164 typedef enum D3D11_CULL_MODE
171 typedef enum D3D11_DEPTH_WRITE_MASK
173 D3D11_DEPTH_WRITE_MASK_ZERO
,
174 D3D11_DEPTH_WRITE_MASK_ALL
,
175 } D3D11_DEPTH_WRITE_MASK
;
177 typedef enum D3D11_DEVICE_CONTEXT_TYPE
179 D3D11_DEVICE_CONTEXT_IMMEDIATE
,
180 D3D11_DEVICE_CONTEXT_DEFERRED
,
181 } D3D11_DEVICE_CONTEXT_TYPE
;
183 typedef enum D3D11_DSV_DIMENSION
185 D3D11_DSV_DIMENSION_UNKNOWN
,
186 D3D11_DSV_DIMENSION_TEXTURE1D
,
187 D3D11_DSV_DIMENSION_TEXTURE1DARRAY
,
188 D3D11_DSV_DIMENSION_TEXTURE2D
,
189 D3D11_DSV_DIMENSION_TEXTURE2DARRAY
,
190 D3D11_DSV_DIMENSION_TEXTURE2DMS
,
191 D3D11_DSV_DIMENSION_TEXTURE2DMSARRAY
,
192 } D3D11_DSV_DIMENSION
;
194 typedef enum D3D11_FEATURE
196 D3D11_FEATURE_THREADING
,
197 D3D11_FEATURE_DOUBLES
,
198 D3D11_FEATURE_FORMAT_SUPPORT
,
199 D3D11_FEATURE_FORMAT_SUPPORT2
,
200 D3D11_FEATURE_D3D10_X_HARDWARE_OPTIONS
,
203 typedef enum D3D11_FILL_MODE
205 D3D11_FILL_WIREFRAME
= 2,
209 typedef enum D3D11_FILTER
211 D3D11_FILTER_MIN_MAG_MIP_POINT
= 0x00,
212 D3D11_FILTER_MIN_MAG_POINT_MIP_LINEAR
= 0x01,
213 D3D11_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT
= 0x04,
214 D3D11_FILTER_MIN_POINT_MAG_MIP_LINEAR
= 0x05,
215 D3D11_FILTER_MIN_LINEAR_MAG_MIP_POINT
= 0x10,
216 D3D11_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR
= 0x11,
217 D3D11_FILTER_MIN_MAG_LINEAR_MIP_POINT
= 0x14,
218 D3D11_FILTER_MIN_MAG_MIP_LINEAR
= 0x15,
219 D3D11_FILTER_ANISOTROPIC
= 0x55,
220 D3D11_FILTER_COMPARISON_MIN_MAG_MIP_POINT
= 0x80,
221 D3D11_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR
= 0x81,
222 D3D11_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT
= 0x84,
223 D3D11_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR
= 0x85,
224 D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT
= 0x90,
225 D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR
= 0x91,
226 D3D11_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT
= 0x94,
227 D3D11_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR
= 0x95,
228 D3D11_FILTER_COMPARISON_ANISOTROPIC
= 0xd5
231 typedef enum D3D11_DSV_FLAG
233 D3D11_DSV_READ_ONLY_DEPTH
= 0x1,
234 D3D11_DSV_READ_ONLY_STENCIL
= 0x2,
237 typedef enum D3D11_INPUT_CLASSIFICATION
239 D3D11_INPUT_PER_VERTEX_DATA
,
240 D3D11_INPUT_PER_INSTANCE_DATA
,
241 } D3D11_INPUT_CLASSIFICATION
;
243 typedef struct D3D11_INPUT_ELEMENT_DESC
249 UINT AlignedByteOffset
;
250 D3D11_INPUT_CLASSIFICATION InputSlotClass
;
251 UINT InstanceDataStepRate
;
252 } D3D11_INPUT_ELEMENT_DESC
;
254 typedef enum D3D11_MAP
258 D3D11_MAP_READ_WRITE
,
259 D3D11_MAP_WRITE_DISCARD
,
260 D3D11_MAP_WRITE_NO_OVERWRITE
263 typedef struct D3D11_MAPPED_SUBRESOURCE
268 } D3D11_MAPPED_SUBRESOURCE
;
270 typedef enum D3D11_QUERY
273 D3D11_QUERY_OCCLUSION
,
274 D3D11_QUERY_TIMESTAMP
,
275 D3D11_QUERY_TIMESTAMP_DISJOINT
,
276 D3D11_QUERY_PIPELINE_STATISTICS
,
277 D3D11_QUERY_OCCLUSION_PREDICATE
,
278 D3D11_QUERY_SO_STATISTICS
,
279 D3D11_QUERY_SO_OVERFLOW_PREDICATE
,
280 D3D11_QUERY_SO_STATISTICS_STREAM0
,
281 D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM0
,
282 D3D11_QUERY_SO_STATISTICS_STREAM1
,
283 D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM1
,
284 D3D11_QUERY_SO_STATISTICS_STREAM2
,
285 D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM2
,
286 D3D11_QUERY_SO_STATISTICS_STREAM3
,
287 D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM3
,
290 typedef struct D3D11_QUERY_DESC
296 typedef struct D3D11_RASTERIZER_DESC
298 D3D11_FILL_MODE FillMode
;
299 D3D11_CULL_MODE CullMode
;
300 BOOL FrontCounterClockwise
;
302 FLOAT DepthBiasClamp
;
303 FLOAT SlopeScaledDepthBias
;
304 BOOL DepthClipEnable
;
306 BOOL MultisampleEnable
;
307 BOOL AntialiasedLineEnable
;
308 } D3D11_RASTERIZER_DESC
;
310 typedef enum D3D11_RESOURCE_DIMENSION
312 D3D11_RESOURCE_DIMENSION_UNKNOWN
,
313 D3D11_RESOURCE_DIMENSION_BUFFER
,
314 D3D11_RESOURCE_DIMENSION_TEXTURE1D
,
315 D3D11_RESOURCE_DIMENSION_TEXTURE2D
,
316 D3D11_RESOURCE_DIMENSION_TEXTURE3D
,
317 } D3D11_RESOURCE_DIMENSION
;
319 typedef enum D3D11_RTV_DIMENSION
321 D3D11_RTV_DIMENSION_UNKNOWN
,
322 D3D11_RTV_DIMENSION_BUFFER
,
323 D3D11_RTV_DIMENSION_TEXTURE1D
,
324 D3D11_RTV_DIMENSION_TEXTURE1DARRAY
,
325 D3D11_RTV_DIMENSION_TEXTURE2D
,
326 D3D11_RTV_DIMENSION_TEXTURE2DARRAY
,
327 D3D11_RTV_DIMENSION_TEXTURE2DMS
,
328 D3D11_RTV_DIMENSION_TEXTURE2DMSARRAY
,
329 D3D11_RTV_DIMENSION_TEXTURE3D
,
330 } D3D11_RTV_DIMENSION
;
332 typedef struct D3D11_SO_DECLARATION_ENTRY
340 } D3D11_SO_DECLARATION_ENTRY
;
342 typedef enum D3D11_STENCIL_OP
344 D3D11_STENCIL_OP_KEEP
= 1,
345 D3D11_STENCIL_OP_ZERO
,
346 D3D11_STENCIL_OP_REPLACE
,
347 D3D11_STENCIL_OP_INCR_SAT
,
348 D3D11_STENCIL_OP_DECR_SAT
,
349 D3D11_STENCIL_OP_INVERT
,
350 D3D11_STENCIL_OP_INCR
,
351 D3D11_STENCIL_OP_DECR
354 typedef struct D3D11_SUBRESOURCE_DATA
358 UINT SysMemSlicePitch
;
359 } D3D11_SUBRESOURCE_DATA
;
361 typedef struct D3D11_TEX1D_ARRAY_DSV
364 UINT FirstArraySlice
;
366 } D3D11_TEX1D_ARRAY_DSV
;
368 typedef struct D3D11_TEX1D_ARRAY_RTV
371 UINT FirstArraySlice
;
373 } D3D11_TEX1D_ARRAY_RTV
;
375 typedef struct D3D11_TEX1D_ARRAY_SRV
377 UINT MostDetailedMip
;
379 UINT FirstArraySlice
;
381 } D3D11_TEX1D_ARRAY_SRV
;
383 typedef struct D3D11_TEX1D_ARRAY_UAV
386 UINT FirstArraySlice
;
388 } D3D11_TEX1D_ARRAY_UAV
;
390 typedef struct D3D11_TEX1D_DSV
395 typedef struct D3D11_TEX1D_RTV
400 typedef struct D3D11_TEX1D_SRV
402 UINT MostDetailedMip
;
406 typedef struct D3D11_TEX1D_UAV
411 typedef struct D3D11_TEX2D_ARRAY_DSV
414 UINT FirstArraySlice
;
416 } D3D11_TEX2D_ARRAY_DSV
;
418 typedef struct D3D11_TEX2D_ARRAY_RTV
421 UINT FirstArraySlice
;
423 } D3D11_TEX2D_ARRAY_RTV
;
425 typedef struct D3D11_TEX2D_ARRAY_SRV
427 UINT MostDetailedMip
;
429 UINT FirstArraySlice
;
431 } D3D11_TEX2D_ARRAY_SRV
;
433 typedef struct D3D11_TEX2D_ARRAY_UAV
436 UINT FirstArraySlice
;
438 } D3D11_TEX2D_ARRAY_UAV
;
440 typedef struct D3D11_TEX2D_DSV
445 typedef struct D3D11_TEX2D_RTV
450 typedef struct D3D11_TEX2D_SRV
452 UINT MostDetailedMip
;
456 typedef struct D3D11_TEX2D_UAV
461 typedef struct D3D11_TEX2DMS_ARRAY_DSV
463 UINT FirstArraySlice
;
465 } D3D11_TEX2DMS_ARRAY_DSV
;
467 typedef struct D3D11_TEX2DMS_ARRAY_RTV
469 UINT FirstArraySlice
;
471 } D3D11_TEX2DMS_ARRAY_RTV
;
473 typedef struct D3D11_TEX2DMS_ARRAY_SRV
475 UINT FirstArraySlice
;
477 } D3D11_TEX2DMS_ARRAY_SRV
;
479 typedef struct D3D11_TEX2DMS_DSV
481 UINT UnusedField_NothingToDefine
;
484 typedef struct D3D11_TEX2DMS_RTV
486 UINT UnusedField_NothingToDefine
;
489 typedef struct D3D11_TEX2DMS_SRV
491 UINT UnusedField_NothingToDefine
;
494 typedef struct D3D11_TEX3D_RTV
501 typedef struct D3D11_TEX3D_SRV
503 UINT MostDetailedMip
;
507 typedef struct D3D11_TEX3D_UAV
514 typedef struct D3D11_TEXCUBE_ARRAY_SRV
516 UINT MostDetailedMip
;
518 UINT First2DArrayFace
;
520 } D3D11_TEXCUBE_ARRAY_SRV
;
522 typedef struct D3D11_TEXCUBE_SRV
524 UINT MostDetailedMip
;
528 typedef enum D3D11_TEXTURE_ADDRESS_MODE
530 D3D11_TEXTURE_ADDRESS_WRAP
= 1,
531 D3D11_TEXTURE_ADDRESS_MIRROR
,
532 D3D11_TEXTURE_ADDRESS_CLAMP
,
533 D3D11_TEXTURE_ADDRESS_BORDER
,
534 D3D11_TEXTURE_ADDRESS_MIRROR_ONCE
535 } D3D11_TEXTURE_ADDRESS_MODE
;
537 typedef enum D3D11_UAV_DIMENSION
539 D3D11_UAV_DIMENSION_UNKNOWN
,
540 D3D11_UAV_DIMENSION_BUFFER
,
541 D3D11_UAV_DIMENSION_TEXTURE1D
,
542 D3D11_UAV_DIMENSION_TEXTURE1DARRAY
,
543 D3D11_UAV_DIMENSION_TEXTURE2D
,
544 D3D11_UAV_DIMENSION_TEXTURE2DARRAY
,
545 D3D11_UAV_DIMENSION_TEXTURE3D
= 8,
546 } D3D11_UAV_DIMENSION
;
548 typedef struct D3D11_UNORDERED_ACCESS_VIEW_DESC
551 D3D11_UAV_DIMENSION ViewDimension
;
555 D3D11_BUFFER_UAV Buffer
;
556 D3D11_TEX1D_UAV Texture1D
;
557 D3D11_TEX1D_ARRAY_UAV Texture1DArray
;
558 D3D11_TEX2D_UAV Texture2D
;
559 D3D11_TEX2D_ARRAY_UAV Texture2DArray
;
560 D3D11_TEX3D_UAV Texture3D
;
562 } D3D11_UNORDERED_ACCESS_VIEW_DESC
;
564 typedef enum D3D11_USAGE
567 D3D11_USAGE_IMMUTABLE
,
572 typedef struct D3D11_VIEWPORT
582 typedef struct D3D11_RENDER_TARGET_BLEND_DESC
585 D3D11_BLEND SrcBlend
;
586 D3D11_BLEND DestBlend
;
587 D3D11_BLEND_OP BlendOp
;
588 D3D11_BLEND SrcBlendAlpha
;
589 D3D11_BLEND DestBlendAlpha
;
590 D3D11_BLEND_OP BlendOpAlpha
;
591 UINT8 RenderTargetWriteMask
;
592 } D3D11_RENDER_TARGET_BLEND_DESC
;
594 typedef struct D3D11_BLEND_DESC
596 BOOL AlphaToCoverageEnable
;
597 BOOL IndependentBlendEnable
;
598 D3D11_RENDER_TARGET_BLEND_DESC RenderTarget
[D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT
];
601 typedef struct D3D11_BUFFER_DESC
608 UINT StructureByteStride
;
611 typedef struct D3D11_DEPTH_STENCIL_VIEW_DESC
614 D3D11_DSV_DIMENSION ViewDimension
;
619 D3D11_TEX1D_DSV Texture1D
;
620 D3D11_TEX1D_ARRAY_DSV Texture1DArray
;
621 D3D11_TEX2D_DSV Texture2D
;
622 D3D11_TEX2D_ARRAY_DSV Texture2DArray
;
623 D3D11_TEX2DMS_DSV Texture2DMS
;
624 D3D11_TEX2DMS_ARRAY_DSV Texture2DMSArray
;
626 } D3D11_DEPTH_STENCIL_VIEW_DESC
;
628 typedef struct D3D11_DEPTH_STENCILOP_DESC
630 D3D11_STENCIL_OP StencilFailOp
;
631 D3D11_STENCIL_OP StencilDepthFailOp
;
632 D3D11_STENCIL_OP StencilPassOp
;
633 D3D11_COMPARISON_FUNC StencilFunc
;
634 } D3D11_DEPTH_STENCILOP_DESC
;
636 typedef struct D3D11_DEPTH_STENCIL_DESC
639 D3D11_DEPTH_WRITE_MASK DepthWriteMask
;
640 D3D11_COMPARISON_FUNC DepthFunc
;
642 UINT8 StencilReadMask
;
643 UINT8 StencilWriteMask
;
644 D3D11_DEPTH_STENCILOP_DESC FrontFace
;
645 D3D11_DEPTH_STENCILOP_DESC BackFace
;
646 } D3D11_DEPTH_STENCIL_DESC
;
648 typedef struct D3D11_RENDER_TARGET_VIEW_DESC
651 D3D11_RTV_DIMENSION ViewDimension
;
655 D3D11_BUFFER_RTV Buffer
;
656 D3D11_TEX1D_RTV Texture1D
;
657 D3D11_TEX1D_ARRAY_RTV Texture1DArray
;
658 D3D11_TEX2D_RTV Texture2D
;
659 D3D11_TEX2D_ARRAY_RTV Texture2DArray
;
660 D3D11_TEX2DMS_RTV Texture2DMS
;
661 D3D11_TEX2DMS_ARRAY_RTV Texture2DMSArray
;
662 D3D11_TEX3D_RTV Texture3D
;
664 } D3D11_RENDER_TARGET_VIEW_DESC
;
666 typedef struct D3D11_SAMPLER_DESC
669 D3D11_TEXTURE_ADDRESS_MODE AddressU
;
670 D3D11_TEXTURE_ADDRESS_MODE AddressV
;
671 D3D11_TEXTURE_ADDRESS_MODE AddressW
;
674 D3D11_COMPARISON_FUNC ComparisonFunc
;
675 FLOAT BorderColor
[4];
678 } D3D11_SAMPLER_DESC
;
680 typedef struct D3D11_SHADER_RESOURCE_VIEW_DESC
683 D3D11_SRV_DIMENSION ViewDimension
;
687 D3D11_BUFFER_SRV Buffer
;
688 D3D11_TEX1D_SRV Texture1D
;
689 D3D11_TEX1D_ARRAY_SRV Texture1DArray
;
690 D3D11_TEX2D_SRV Texture2D
;
691 D3D11_TEX2D_ARRAY_SRV Texture2DArray
;
692 D3D11_TEX2DMS_SRV Texture2DMS
;
693 D3D11_TEX2DMS_ARRAY_SRV Texture2DMSArray
;
694 D3D11_TEX3D_SRV Texture3D
;
695 D3D11_TEXCUBE_SRV TextureCube
;
696 D3D11_TEXCUBE_ARRAY_SRV TextureCubeArray
;
697 D3D11_BUFFEREX_SRV BufferEx
;
699 } D3D11_SHADER_RESOURCE_VIEW_DESC
;
701 typedef struct D3D11_TEXTURE1D_DESC
711 } D3D11_TEXTURE1D_DESC
;
713 typedef struct D3D11_TEXTURE2D_DESC
720 DXGI_SAMPLE_DESC SampleDesc
;
725 } D3D11_TEXTURE2D_DESC
;
727 typedef struct D3D11_TEXTURE3D_DESC
738 } D3D11_TEXTURE3D_DESC
;
740 /* A couple forward declarations are needed */
741 interface ID3D11Device
;
742 interface ID3D11ClassLinkage
;
747 uuid(1841e5c8
-16b0
-489b
-bcc8
-44cfb0d5deae
)
749 interface ID3D11DeviceChild
: IUnknown
752 [out] ID3D11Device
**ppDevice
);
753 HRESULT GetPrivateData
(
755 [in, out] UINT
*pDataSize
,
757 HRESULT SetPrivateData
(
760 [in] const void *pData
);
761 HRESULT SetPrivateDataInterface
(
763 [in] const IUnknown
*pData
);
769 uuid(4b35d0cd
-1e15
-4258-9c98
-1b1333f6dd3b
)
771 interface ID3D11Asynchronous
: ID3D11DeviceChild
779 uuid(d6c00747
-87b7
-425e
-b84d
-44d108560afd
)
781 interface ID3D11Query
: ID3D11Asynchronous
784 [out] D3D11_QUERY_DESC
*pDesc
);
790 uuid(dc8e63f3
-d12b
-4952-b47b
-5e45026a862d
)
792 interface ID3D11Resource
: ID3D11DeviceChild
795 [out] D3D11_RESOURCE_DIMENSION
*pResourceDimension
);
796 void SetEvictionPriority
(
797 [in] UINT EvictionPriority
);
798 UINT GetEvictionPriority
();
804 uuid(839d1216
-bb2e
-412b
-b7f4
-a9dbebe08ed1
)
806 interface ID3D11View
: ID3D11DeviceChild
809 [out] ID3D11Resource
**ppResource
);
815 uuid(75b68faa
-347d
-4159-8f45
-a0640f01cd9a
)
817 interface ID3D11BlendState
: ID3D11DeviceChild
820 [out] D3D11_BLEND_DESC
*pDesc
);
826 uuid(48570b85
-d1ee
-4fcd
-a250
-eb350722b037
)
828 interface ID3D11Buffer
: ID3D11Resource
831 [out] D3D11_BUFFER_DESC
*pDesc
);
837 uuid(a6cd7faa
-b0b7
-4a2f
-9436-8662a65797cb
)
839 interface ID3D11ClassInstance
: ID3D11DeviceChild
841 void GetClassLinkage
(
842 [out] ID3D11ClassLinkage
**ppLinkage
);
844 [out] D3D11_CLASS_INSTANCE_DESC
*pDesc
);
845 void GetInstanceName
(
846 [out] LPSTR pInstanceName
,
847 [in, out] SIZE_T
*pBufferLength
);
849 [out] LPSTR pTypeName
,
850 [in, out] SIZE_T
*pBufferLength
);
856 uuid(ddf57cba
-9543-46e4
-a12b
-f207a0fe7fed
)
858 interface ID3D11ClassLinkage
: ID3D11DeviceChild
860 HRESULT GetClassInstance
(
861 [in] LPCSTR pClassInstanceName
,
862 [in] UINT InstanceIndex
,
863 [out] ID3D11ClassInstance
**ppInstance
);
864 HRESULT CreateClassInstance
(
865 [in] LPCSTR pClassTypeName
,
866 [in] UINT ConstantBufferOffset
,
867 [in] UINT ConstantVectorOffset
,
868 [in] UINT TextureOffset
,
869 [in] UINT SamplerOffset
,
870 [out] ID3D11ClassInstance
**ppInstance
);
876 uuid(a24bc4d1
-769e-43f7
-8013-98ff566c18e2
)
878 interface ID3D11CommandList
: ID3D11DeviceChild
880 UINT GetContextFlags
();
886 uuid(4f5b196e
-c2bd
-495e
-bd01
-1fded38e4969
)
888 interface ID3D11ComputeShader
: ID3D11DeviceChild
895 uuid(6e8c49fb
-a371
-4770-b440
-29086022b741
)
897 interface ID3D11Counter
: ID3D11Asynchronous
900 [out] D3D11_COUNTER_DESC
*pDesc
);
906 uuid(03823efb
-8d8f
-4e1c
-9aa2
-f64bb2cbfdf1
)
908 interface ID3D11DepthStencilState
: ID3D11DeviceChild
911 [out] D3D11_DEPTH_STENCIL_DESC
*pDesc
);
917 uuid(9fdac92a
-1876-48c3
-afad
-25b94f84a9b6
)
919 interface ID3D11DepthStencilView
: ID3D11View
922 [out] D3D11_DEPTH_STENCIL_VIEW_DESC
*pDesc
);
928 uuid(f582c508
-0f36
-490c
-9977-31eece268cfa
)
930 interface ID3D11DomainShader
: ID3D11DeviceChild
937 uuid(38325b96
-effb
-4022-ba02
-2e795b70275c
)
939 interface ID3D11GeometryShader
: ID3D11DeviceChild
946 uuid(8e5c6061
-628a
-4c8e
-8264
-bbe45cb3d5dd
)
948 interface ID3D11HullShader
: ID3D11DeviceChild
955 uuid(e4819ddc
-4cf0
-4025-bd26
-5de82a3e07b7
)
957 interface ID3D11InputLayout
: ID3D11DeviceChild
964 uuid(ea82e40d
-51dc
-4f33
-93d4
-db7c9125ae8c
)
966 interface ID3D11PixelShader
: ID3D11DeviceChild
973 uuid(9eb576dd
-9f77
-4d86
-81aa
-8bab5fe490e2
)
975 interface ID3D11Predicate
: ID3D11Query
982 uuid(9bb4ab81
-ab1a
-4d8f
-b506
-fc04200b6ee7
)
984 interface ID3D11RasterizerState
: ID3D11DeviceChild
987 [out] D3D11_RASTERIZER_DESC
*pDesc
);
993 uuid(dfdba067
-0b8d
-4865-875b
-d7b4516cc164
)
995 interface ID3D11RenderTargetView
: ID3D11View
998 [out] D3D11_RENDER_TARGET_VIEW_DESC
*pDesc
);
1004 uuid(da6fea51
-564c
-4487-9810-f0d0f9b4e3a5
)
1006 interface ID3D11SamplerState
: ID3D11DeviceChild
1009 [out] D3D11_SAMPLER_DESC
*pDesc
);
1015 uuid(b0e06fe0
-8192-4e1a
-b1ca
-36d7414710b2
)
1017 interface ID3D11ShaderResourceView
: ID3D11View
1020 [out] D3D11_SHADER_RESOURCE_VIEW_DESC
*pDesc
);
1026 uuid(f8fb5c27
-c6b3
-4f75
-a4c8
-439af2ef564c
),
1028 interface ID3D11Texture1D
: ID3D11Resource
1031 [out] D3D11_TEXTURE1D_DESC
*pDesc
);
1037 uuid(6f15aaf2
-d208
-4e89
-9ab4
-489535d34f9c
)
1039 interface ID3D11Texture2D
: ID3D11Resource
1042 [out] D3D11_TEXTURE2D_DESC
*pDesc
);
1048 uuid(037e866e
-f56d
-4357-a8af
-9dabbe6e250e
)
1050 interface ID3D11Texture3D
: ID3D11Resource
1053 [out] D3D11_TEXTURE3D_DESC
*pDesc
);
1059 uuid(28acf509
-7f5c
-48f6
-8611-f316010a6380
)
1061 interface ID3D11UnorderedAccessView
: ID3D11View
1064 [out] D3D11_UNORDERED_ACCESS_VIEW_DESC
*pDesc
);
1070 uuid(3b301d64
-d678
-4289-8897-22f8928b72f3
)
1072 interface ID3D11VertexShader
: ID3D11DeviceChild
1079 uuid(c0bfa96c
-e089
-44fb
-8eaf
-26f8796190da
)
1081 interface ID3D11DeviceContext
: ID3D11DeviceChild
1083 void VSSetConstantBuffers
(
1084 [in] UINT StartSlot
,
1085 [in] UINT NumBuffers
,
1086 [in] ID3D11Buffer
*const *ppConstantBuffers
);
1087 void PSSetShaderResources
(
1088 [in] UINT StartSlot
,
1090 [in] ID3D11ShaderResourceView
*const *ppShaderResourceViews
);
1092 [in] ID3D11PixelShader
*pPixelShader
,
1093 [in] ID3D11ClassInstance
*const *ppClassInstances
,
1094 UINT NumClassInstances
);
1096 [in] UINT StartSlot
,
1097 [in] UINT NumSamplers
,
1098 [in] ID3D11SamplerState
*const *ppSamplers
);
1100 [in] ID3D11VertexShader
*pVertexShader
,
1101 [in] ID3D11ClassInstance
*const *ppClassInstances
,
1102 UINT NumClassInstances
);
1104 [in] UINT IndexCount
,
1105 [in] UINT StartIndexLocation
,
1106 [in] INT BaseVertexLocation
);
1108 [in] UINT VertexCount
,
1109 [in] UINT StartVertexLocation
);
1111 [in] ID3D11Resource
*pResource
,
1112 [in] UINT Subresource
,
1113 [in] D3D11_MAP MapType
,
1115 [out] D3D11_MAPPED_SUBRESOURCE
*pMappedResource
);
1117 [in] ID3D11Resource
*pResource
,
1118 [in] UINT Subresource
);
1119 void PSSetConstantBuffers
(
1120 [in] UINT StartSlot
,
1121 [in] UINT NumBuffers
,
1122 [in] ID3D11Buffer
*const *ppConstantBuffers
);
1123 void IASetInputLayout
(
1124 [in] ID3D11InputLayout
*pInputLayout
);
1125 void IASetVertexBuffers
(
1126 [in] UINT StartSlot
,
1127 [in] UINT NumBuffers
,
1128 [in] ID3D11Buffer
*const *ppVertexBuffers
,
1129 [in] const UINT
*pStrides
,
1130 [in] const UINT
*pOffsets
);
1131 void IASetIndexBuffer
(
1132 [in] ID3D11Buffer
*pIndexBuffer
,
1133 [in] DXGI_FORMAT Format
,
1135 void DrawIndexedInstanced
(
1136 [in] UINT IndexCountPerInstance
,
1137 [in] UINT InstanceCount
,
1138 [in] UINT StartIndexLocation
,
1139 [in] INT BaseVertexLocation
,
1140 [in] UINT StartInstanceLocation
);
1142 [in] UINT VertexCountPerInstance
,
1143 [in] UINT InstanceCount
,
1144 [in] UINT StartVertexLocation
,
1145 [in] UINT StartInstanceLocation
);
1146 void GSSetConstantBuffers
(
1147 [in] UINT StartSlot
,
1148 [in] UINT NumBuffers
,
1149 [in] ID3D11Buffer
*const *ppConstantBuffers
);
1151 [in] ID3D11GeometryShader
*pShader
,
1152 [in] ID3D11ClassInstance
*const *ppClassInstances
,
1153 UINT NumClassInstances
);
1154 void IASetPrimitiveTopology
(
1155 [in] D3D11_PRIMITIVE_TOPOLOGY Topology
);
1156 void VSSetShaderResources
(
1157 [in] UINT StartSlot
,
1159 [in] ID3D11ShaderResourceView
*const *ppShaderResourceViews
);
1161 [in] UINT StartSlot
,
1162 [in] UINT NumSamplers
,
1163 [in] ID3D11SamplerState
*const *ppSamplers
);
1165 [in] ID3D11Asynchronous
*pAsync
);
1167 [in] ID3D11Asynchronous
*pAsync
);
1169 [in] ID3D11Asynchronous
*pAsync
,
1172 [in] UINT GetDataFlags
);
1173 void SetPredication
(
1174 [in] ID3D11Predicate
*pPredicate
,
1175 [in] BOOL PredicateValue
);
1176 void GSSetShaderResources
(
1177 [in] UINT StartSlot
,
1179 [in] ID3D11ShaderResourceView
*const *ppShaderResourceViews
);
1181 [in] UINT StartSlot
,
1182 [in] UINT NumSamplers
,
1183 [in] ID3D11SamplerState
*const *ppSamplers
);
1184 void OMSetRenderTargets
(
1186 [in] ID3D11RenderTargetView
*const *ppRenderTargetViews
,
1187 [in] ID3D11DepthStencilView
*pDepthStencilView
);
1188 void OMSetRenderTargetsAndUnorderedAccessViews
(
1190 [in] ID3D11RenderTargetView
*const *ppRenderTargetViews
,
1191 [in] ID3D11DepthStencilView
*pDepthStencilView
,
1192 [in] UINT UAVStartSlot
,
1194 [in] ID3D11UnorderedAccessView
*const *ppUnorderedAccessViews
,
1195 [in] const UINT
*pUAVInitialCounts
);
1196 void OMSetBlendState
(
1197 [in] ID3D11BlendState
*pBlendState
,
1198 [in] const FLOAT BlendFactor
[4],
1199 [in] UINT SampleMask
);
1200 void OMSetDepthStencilState
(
1201 [in] ID3D11DepthStencilState
*pDepthStencilState
,
1202 [in] UINT StencilRef
);
1204 [in] UINT NumBuffers
,
1205 [in] ID3D11Buffer
*const *ppSOTargets
,
1206 [in] const UINT
*pOffsets
);
1208 void DrawIndexedInstancedIndirect
(
1209 [in] ID3D11Buffer
*pBufferForArgs
,
1210 [in] UINT AlignedByteOffsetForArgs
);
1211 void DrawInstancedIndirect
(
1212 [in] ID3D11Buffer
*pBufferForArgs
,
1213 [in] UINT AlignedByteOffsetForArgs
);
1215 [in] UINT ThreadGroupCountX
,
1216 [in] UINT ThreadGroupCountY
,
1217 [in] UINT ThreadGroupCountZ
);
1218 void DispatchIndirect
(
1219 [in] ID3D11Buffer
*pBufferForArgs
,
1220 [in] UINT AlignedByteOffsetForArgs
);
1222 [in] ID3D11RasterizerState
*pRasterizerState
);
1223 void RSSetViewports
(
1224 [in] UINT NumViewports
,
1225 [in] const D3D11_VIEWPORT
*pViewports
);
1226 void RSSetScissorRects
(
1228 [in] const D3D11_RECT
*pRects
);
1229 void CopySubresourceRegion
(
1230 [in] ID3D11Resource
*pDstResource
,
1231 [in] UINT DstSubresource
,
1235 [in] ID3D11Resource
*pSrcResource
,
1236 [in] UINT SrcSubresource
,
1237 [in] const D3D11_BOX
*pSrcBox
);
1239 [in] ID3D11Resource
*pDstResource
,
1240 [in] ID3D11Resource
*pSrcResource
);
1241 void UpdateSubresource
(
1242 [in] ID3D11Resource
*pDstResource
,
1243 [in] UINT DstSubresource
,
1244 [in] const D3D11_BOX
*pDstBox
,
1245 [in] const void *pSrcData
,
1246 [in] UINT SrcRowPitch
,
1247 [in] UINT SrcDepthPitch
);
1248 void CopyStructureCount
(
1249 [in] ID3D11Buffer
*pDstBuffer
,
1250 [in] UINT DstAlignedByteOffset
,
1251 [in] ID3D11UnorderedAccessView
*pSrcView
);
1252 void ClearRenderTargetView
(
1253 [in] ID3D11RenderTargetView
*pRenderTargetView
,
1254 [in] const FLOAT ColorRGBA
[4]);
1255 void ClearUnorderedAccessViewUint
(
1256 [in] ID3D11UnorderedAccessView
*pUnorderedAccessView
,
1257 [in] const UINT Values
[4]);
1258 void ClearUnorderedAccessViewFloat
(
1259 [in] ID3D11UnorderedAccessView
*pUnorderedAccessView
,
1260 [in] const FLOAT Values
[4]);
1261 void ClearDepthStencilView
(
1262 [in] ID3D11DepthStencilView
*pDepthStencilView
,
1263 [in] UINT ClearFlags
,
1265 [in] UINT8 Stencil
);
1267 [in] ID3D11ShaderResourceView
*pShaderResourceView
);
1268 void SetResourceMinLOD
(
1269 [in] ID3D11Resource
*pResource
, FLOAT MinLOD
);
1270 FLOAT GetResourceMinLOD
(
1271 [in] ID3D11Resource
*pResource
);
1272 void ResolveSubresource
(
1273 [in] ID3D11Resource
*pDstResource
,
1274 [in] UINT DstSubresource
,
1275 [in] ID3D11Resource
*pSrcResource
,
1276 [in] UINT SrcSubresource
,
1277 [in] DXGI_FORMAT Format
);
1278 void ExecuteCommandList
(
1279 [in] ID3D11CommandList
*pCommandList
,
1280 BOOL RestoreContextState
);
1281 void HSSetShaderResources
(
1282 [in] UINT StartSlot
,
1284 [in] ID3D11ShaderResourceView
*const *ppShaderResourceViews
);
1286 [in] ID3D11HullShader
*pHullShader
,
1287 [in] ID3D11ClassInstance
*const *ppClassInstances
,
1288 UINT NumClassInstances
);
1290 [in] UINT StartSlot
,
1291 [in] UINT NumSamplers
,
1292 [in] ID3D11SamplerState
*const *ppSamplers
);
1293 void HSSetConstantBuffers
(
1294 [in] UINT StartSlot
,
1295 [in] UINT NumBuffers
,
1296 [in] ID3D11Buffer
*const *ppConstantBuffers
);
1297 void DSSetShaderResources
(
1298 [in] UINT StartSlot
,
1300 [in] ID3D11ShaderResourceView
*const *ppShaderResourceViews
);
1302 [in] ID3D11DomainShader
*pDomainShader
,
1303 [in] ID3D11ClassInstance
*const *ppClassInstances
,
1304 UINT NumClassInstances
);
1306 [in] UINT StartSlot
,
1307 [in] UINT NumSamplers
,
1308 [in] ID3D11SamplerState
*const *ppSamplers
);
1309 void DSSetConstantBuffers
(
1310 [in] UINT StartSlot
,
1311 [in] UINT NumBuffers
,
1312 [in] ID3D11Buffer
*const *ppConstantBuffers
);
1313 void CSSetShaderResources
(
1314 [in] UINT StartSlot
,
1316 [in] ID3D11ShaderResourceView
*const *ppShaderResourceViews
);
1317 void CSSetUnorderedAccessViews
(
1318 [in] UINT StartSlot
,
1320 [in] ID3D11UnorderedAccessView
*const *ppUnorderedAccessViews
,
1321 [in] const UINT
*pUAVInitialCounts
);
1323 [in] ID3D11ComputeShader
*pComputeShader
,
1324 [in] ID3D11ClassInstance
*const *ppClassInstances
,
1325 UINT NumClassInstances
);
1327 [in] UINT StartSlot
,
1328 [in] UINT NumSamplers
,
1329 [in] ID3D11SamplerState
*const *ppSamplers
);
1330 void CSSetConstantBuffers
(
1331 [in] UINT StartSlot
,
1332 [in] UINT NumBuffers
,
1333 [in] ID3D11Buffer
*const *ppConstantBuffers
);
1334 void VSGetConstantBuffers
(
1335 [in] UINT StartSlot
,
1336 [in] UINT NumBuffers
,
1337 [out] ID3D11Buffer
**ppConstantBuffers
);
1338 void PSGetShaderResources
(
1339 [in] UINT StartSlot
,
1341 [out] ID3D11ShaderResourceView
**ppShaderResourceViews
);
1343 [out] ID3D11PixelShader
**ppPixelShader
,
1344 [out] ID3D11ClassInstance
**ppClassInstances
,
1345 [in, out] UINT
*pNumClassInstances
);
1347 [in] UINT StartSlot
,
1348 [in] UINT NumSamplers
,
1349 [out] ID3D11SamplerState
**ppSamplers
);
1351 [out] ID3D11VertexShader
**ppVertexShader
,
1352 [out] ID3D11ClassInstance
**ppClassInstances
,
1353 [in, out] UINT
*pNumClassInstances
);
1354 void PSGetConstantBuffers
(
1355 [in] UINT StartSlot
,
1356 [in] UINT NumBuffers
,
1357 [out] ID3D11Buffer
**ppConstantBuffers
);
1358 void IAGetInputLayout
(
1359 [out] ID3D11InputLayout
**ppInputLayout
);
1360 void IAGetVertexBuffers
(
1361 [in] UINT StartSlot
,
1362 [in] UINT NumBuffers
,
1363 [out] ID3D11Buffer
**ppVertexBuffers
,
1364 [out] UINT
*pStrides
,
1365 [out] UINT
*pOffsets
);
1366 void IAGetIndexBuffer
(
1367 [out] ID3D11Buffer
**pIndexBuffer
,
1368 [out] DXGI_FORMAT
* Format
,
1369 [out] UINT
* Offset
);
1370 void GSGetConstantBuffers
(
1371 [in] UINT StartSlot
,
1372 [in] UINT NumBuffers
,
1373 [out] ID3D11Buffer
**ppConstantBuffers
);
1375 [out] ID3D11GeometryShader
**ppGeometryShader
,
1376 [out] ID3D11ClassInstance
**ppClassInstances
,
1377 [in, out] UINT
*pNumClassInstances
);
1378 void IAGetPrimitiveTopology
(
1379 [out] D3D11_PRIMITIVE_TOPOLOGY
*pTopology
);
1380 void VSGetShaderResources
(
1381 [in] UINT StartSlot
,
1383 [out] ID3D11ShaderResourceView
**ppShaderResourceViews
);
1385 [in] UINT StartSlot
,
1386 [in] UINT NumSamplers
,
1387 [out] ID3D11SamplerState
**ppSamplers
);
1388 void GetPredication
(
1389 [out] ID3D11Predicate
**ppPredicate
,
1390 [out] BOOL
*pPredicateValue
);
1391 void GSGetShaderResources
(
1392 [in] UINT StartSlot
,
1394 [out] ID3D11ShaderResourceView
**ppShaderResourceViews
);
1396 [in] UINT StartSlot
,
1397 [in] UINT NumSamplers
,
1398 [out] ID3D11SamplerState
**ppSamplers
);
1399 void OMGetRenderTargets
(
1401 [out] ID3D11RenderTargetView
**ppRenderTargetViews
,
1402 [out] ID3D11DepthStencilView
**ppDepthStencilView
);
1403 void OMGetRenderTargetsAndUnorderedAccessViews
(
1405 [out] ID3D11RenderTargetView
**ppRenderTargetViews
,
1406 [out] ID3D11DepthStencilView
**ppDepthStencilView
,
1407 [in] UINT UAVStartSlot
,
1409 [out] ID3D11UnorderedAccessView
**ppUnorderedAccessViews
);
1410 void OMGetBlendState
(
1411 [out] ID3D11BlendState
**ppBlendState
,
1412 [out] FLOAT BlendFactor
[4],
1413 [out] UINT
*pSampleMask
);
1414 void OMGetDepthStencilState
(
1415 [out] ID3D11DepthStencilState
**ppDepthStencilState
,
1416 [out] UINT
*pStencilRef
);
1418 [in] UINT NumBuffers
,
1419 [out] ID3D11Buffer
**ppSOTargets
);
1421 [out] ID3D11RasterizerState
**ppRasterizerState
);
1422 void RSGetViewports
(
1423 [in, out] UINT
*pNumViewports
,
1424 [out] D3D11_VIEWPORT
*pViewports
);
1425 void RSGetScissorRects
(
1426 [in, out] UINT
*pNumRects
,
1427 [out] D3D11_RECT
*pRects
);
1428 void HSGetShaderResources
(
1429 [in] UINT StartSlot
,
1431 [out] ID3D11ShaderResourceView
**ppShaderResourceViews
);
1433 [out] ID3D11HullShader
**ppHullShader
,
1434 [out] ID3D11ClassInstance
**ppClassInstances
,
1435 [in, out] UINT
*pNumClassInstances
);
1437 [in] UINT StartSlot
,
1438 [in] UINT NumSamplers
,
1439 [out] ID3D11SamplerState
**ppSamplers
);
1440 void HSGetConstantBuffers
(
1441 [in] UINT StartSlot
,
1442 [in] UINT NumBuffers
,
1443 [out] ID3D11Buffer
**ppConstantBuffers
);
1444 void DSGetShaderResources
(
1445 [in] UINT StartSlot
,
1447 [out] ID3D11ShaderResourceView
**ppShaderResourceViews
);
1449 [out] ID3D11DomainShader
**ppDomainShader
,
1450 [out] ID3D11ClassInstance
**ppClassInstances
,
1451 [in, out] UINT
*pNumClassInstances
);
1453 [in] UINT StartSlot
,
1454 [in] UINT NumSamplers
,
1455 [out] ID3D11SamplerState
**ppSamplers
);
1456 void DSGetConstantBuffers
(
1457 [in] UINT StartSlot
,
1458 [in] UINT NumBuffers
,
1459 [out] ID3D11Buffer
**ppConstantBuffers
);
1460 void CSGetShaderResources
(
1461 [in] UINT StartSlot
,
1463 [out] ID3D11ShaderResourceView
**ppShaderResourceViews
);
1464 void CSGetUnorderedAccessViews
(
1465 [in] UINT StartSlot
,
1467 [out] ID3D11UnorderedAccessView
**ppUnorderedAccessViews
);
1469 [out] ID3D11ComputeShader
**ppComputeShader
,
1470 [out] ID3D11ClassInstance
**ppClassInstances
,
1471 [in, out] UINT
*pNumClassInstances
);
1473 [in] UINT StartSlot
,
1474 [in] UINT NumSamplers
,
1475 [out] ID3D11SamplerState
**ppSamplers
);
1476 void CSGetConstantBuffers
(
1477 [in] UINT StartSlot
,
1478 [in] UINT NumBuffers
,
1479 [out] ID3D11Buffer
**ppConstantBuffers
);
1482 D3D11_DEVICE_CONTEXT_TYPE GetType
();
1483 UINT GetContextFlags
();
1484 HRESULT FinishCommandList
(
1485 BOOL RestoreDeferredContextState
,
1486 [out] ID3D11CommandList
**ppCommandList
);
1492 uuid(db6f6ddb
-ac77
-4e88
-8253-819df9bbf140
)
1494 interface ID3D11Device
: IUnknown
1496 HRESULT CreateBuffer
(
1497 [in] const D3D11_BUFFER_DESC
*pDesc
,
1498 [in] const D3D11_SUBRESOURCE_DATA
*pInitialData
,
1499 [out] ID3D11Buffer
**ppBuffer
);
1500 HRESULT CreateTexture1D
(
1501 [in] const D3D11_TEXTURE1D_DESC
*pDesc
,
1502 [in] const D3D11_SUBRESOURCE_DATA
*pInitialData
,
1503 [out] ID3D11Texture1D
**ppTexture1D
);
1504 HRESULT CreateTexture2D
(
1505 [in] const D3D11_TEXTURE2D_DESC
*pDesc
,
1506 [in] const D3D11_SUBRESOURCE_DATA
*pInitialData
,
1507 [out] ID3D11Texture2D
**ppTexture2D
);
1508 HRESULT CreateTexture3D
(
1509 [in] const D3D11_TEXTURE3D_DESC
*pDesc
,
1510 [in] const D3D11_SUBRESOURCE_DATA
*pInitialData
,
1511 [out] ID3D11Texture3D
**ppTexture3D
);
1512 HRESULT CreateShaderResourceView
(
1513 [in] ID3D11Resource
*pResource
,
1514 [in] const D3D11_SHADER_RESOURCE_VIEW_DESC
*pDesc
,
1515 [out] ID3D11ShaderResourceView
**ppSRView
);
1516 HRESULT CreateUnorderedAccessView
(
1517 [in] ID3D11Resource
*pResource
,
1518 [in] const D3D11_UNORDERED_ACCESS_VIEW_DESC
*pDesc
,
1519 [out] ID3D11UnorderedAccessView
**ppUAView
);
1520 HRESULT CreateRenderTargetView
(
1521 [in] ID3D11Resource
*pResource
,
1522 [in] const D3D11_RENDER_TARGET_VIEW_DESC
*pDesc
,
1523 [out] ID3D11RenderTargetView
**ppRTView
);
1524 HRESULT CreateDepthStencilView
(
1525 [in] ID3D11Resource
*pResource
,
1526 [in] const D3D11_DEPTH_STENCIL_VIEW_DESC
*pDesc
,
1527 [out] ID3D11DepthStencilView
**ppDepthStencilView
);
1528 HRESULT CreateInputLayout
(
1529 [in] const D3D11_INPUT_ELEMENT_DESC
*pInputElementDescs
,
1530 [in] UINT NumElements
,
1531 [in] const void *pShaderBytecodeWithInputSignature
,
1532 [in] SIZE_T BytecodeLength
,
1533 [out] ID3D11InputLayout
**ppInputLayout
);
1534 HRESULT CreateVertexShader
(
1535 [in] const void *pShaderBytecode
,
1536 [in] SIZE_T BytecodeLength
,
1537 [in] ID3D11ClassLinkage
*pClassLinkage
,
1538 [out] ID3D11VertexShader
**ppVertexShader
);
1539 HRESULT CreateGeometryShader
(
1540 [in] const void *pShaderBytecode
,
1541 [in] SIZE_T BytecodeLength
,
1542 [in] ID3D11ClassLinkage
*pClassLinkage
,
1543 [out] ID3D11GeometryShader
**ppGeometryShader
);
1544 HRESULT CreateGeometryShaderWithStreamOutput
(
1545 [in] const void *pShaderBytecode
,
1546 [in] SIZE_T BytecodeLength
,
1547 [in] const D3D11_SO_DECLARATION_ENTRY
*pSODeclaration
,
1548 [in] UINT NumEntries
,
1549 [in] const UINT
*pBufferStrides
,
1550 [in] UINT NumStrides
,
1551 [in] UINT RasterizedStream
,
1552 [in] ID3D11ClassLinkage
*pClassLinkage
,
1553 [out] ID3D11GeometryShader
**ppGeometryShader
);
1554 HRESULT CreatePixelShader
(
1555 [in] const void *pShaderBytecode
,
1556 [in] SIZE_T BytecodeLength
,
1557 [in] ID3D11ClassLinkage
*pClassLinkage
,
1558 [out] ID3D11PixelShader
**ppPixelShader
);
1559 HRESULT CreateHullShader
(
1560 [in] const void *pShaderBytecode
,
1561 [in] SIZE_T BytecodeLength
,
1562 [in] ID3D11ClassLinkage
*pClassLinkage
,
1563 [out] ID3D11HullShader
**ppHullShader
);
1564 HRESULT CreateDomainShader
(
1565 [in] const void *pShaderBytecode
,
1566 [in] SIZE_T BytecodeLength
,
1567 [in] ID3D11ClassLinkage
*pClassLinkage
,
1568 [out] ID3D11DomainShader
**ppDomainShader
);
1569 HRESULT CreateComputeShader
(
1570 [in] const void *pShaderBytecode
,
1571 [in] SIZE_T BytecodeLength
,
1572 [in] ID3D11ClassLinkage
*pClassLinkage
,
1573 [out] ID3D11ComputeShader
**ppComputeShader
);
1574 HRESULT CreateClassLinkage
(
1575 [out] ID3D11ClassLinkage
**ppLinkage
);
1576 HRESULT CreateBlendState
(
1577 [in] const D3D11_BLEND_DESC
*pBlendStateDesc
,
1578 [out] ID3D11BlendState
**ppBlendState
);
1579 HRESULT CreateDepthStencilState
(
1580 [in] const D3D11_DEPTH_STENCIL_DESC
*pDepthStencilDesc
,
1581 [out] ID3D11DepthStencilState
**ppDepthStencilState
);
1582 HRESULT CreateRasterizerState
(
1583 [in] const D3D11_RASTERIZER_DESC
*pRasterizerDesc
,
1584 [out] ID3D11RasterizerState
**ppRasterizerState
);
1585 HRESULT CreateSamplerState
(
1586 [in] const D3D11_SAMPLER_DESC
*pSamplerDesc
,
1587 [out] ID3D11SamplerState
**ppSamplerState
);
1588 HRESULT CreateQuery
(
1589 [in] const D3D11_QUERY_DESC
*pQueryDesc
,
1590 [out] ID3D11Query
**ppQuery
);
1591 HRESULT CreatePredicate
(
1592 [in] const D3D11_QUERY_DESC
*pPredicateDesc
,
1593 [out] ID3D11Predicate
**ppPredicate
);
1594 HRESULT CreateCounter
(
1595 [in] const D3D11_COUNTER_DESC
*pCounterDesc
,
1596 [out] ID3D11Counter
**ppCounter
);
1597 HRESULT CreateDeferredContext
(
1599 [out] ID3D11DeviceContext
**ppDeferredContext
);
1600 HRESULT OpenSharedResource
(
1601 [in] HANDLE hResource
,
1602 [in] REFIID ReturnedInterface
,
1603 [out] void **ppResource
);
1604 HRESULT CheckFormatSupport
(
1605 [in] DXGI_FORMAT Format
,
1606 [out] UINT
*pFormatSupport
);
1607 HRESULT CheckMultisampleQualityLevels
(
1608 [in] DXGI_FORMAT Format
,
1609 [in] UINT SampleCount
,
1610 [out] UINT
*pNumQualityLevels
);
1611 void CheckCounterInfo
(
1612 [out] D3D11_COUNTER_INFO
*pCounterInfo
);
1613 HRESULT CheckCounter
(
1614 [in] const D3D11_COUNTER_DESC
*pDesc
,
1615 [out] D3D11_COUNTER_TYPE
*pType
,
1616 [out] UINT
*pActiveCounters
,
1618 [in, out] UINT
*pNameLength
,
1619 [out] LPSTR szUnits
,
1620 [in, out] UINT
*pUnitsLength
,
1621 [out] LPSTR szDescription
,
1622 [in, out] UINT
*pDescriptionLength
);
1623 HRESULT CheckFeatureSupport
(
1624 D3D11_FEATURE Feature
,
1625 [out] void *pFeatureSupportData
,
1626 UINT FeatureSupportDataSize
);
1627 HRESULT GetPrivateData
(
1629 [in, out] UINT
*pDataSize
,
1631 HRESULT SetPrivateData
(
1634 [in] const void *pData
);
1635 HRESULT SetPrivateDataInterface
(
1637 [in] const IUnknown
*pData
);
1638 D3D_FEATURE_LEVEL GetFeatureLevel
();
1639 UINT GetCreationFlags
();
1640 HRESULT GetDeviceRemovedReason
();
1641 void GetImmediateContext
(
1642 [out] ID3D11DeviceContext
**ppImmediateContext
);
1643 HRESULT SetExceptionMode
(UINT RaiseFlags
);
1644 UINT GetExceptionMode
();
1647 cpp_quote
("#include <d3d10_1.h>")
1648 cpp_quote
("#ifndef D3D11_IGNORE_SDK_LAYERS")
1649 cpp_quote
("/* FIXME: # include <d3d11sdklayers.h> */")
1651 cpp_quote
("#include <d3d10misc.h>")
1652 cpp_quote
("#include <d3d10shader.h>")
1653 cpp_quote
("#include <d3d10effect.h>")
1654 cpp_quote
("#include <d3d10_1shader.h>")