2 * Copyright 2010 Jacek Caban for CodeWeavers
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
22 cpp_quote
("#ifndef _D3D10_1_CONSTANTS")
23 cpp_quote
("#define _D3D10_1_CONSTANTS")
24 const UINT D3D10_1_DEFAULT_SAMPLE_MASK
= 0xffffffff;
25 const UINT D3D10_1_GS_INPUT_REGISTER_COUNT
= 32;
26 const UINT D3D10_1_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT
= 32;
27 const UINT D3D10_1_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS
= 128;
28 const UINT D3D10_1_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT
= 32;
29 const UINT D3D10_1_PS_OUTPUT_MASK_REGISTER_COMPONENTS
= 1;
30 const UINT D3D10_1_PS_OUTPUT_MASK_REGISTER_COMPONENT_BIT_COUNT
= 32;
31 const UINT D3D10_1_PS_OUTPUT_MASK_REGISTER_COUNT
= 1;
32 const UINT D3D10_1_SHADER_MAJOR_VERSION
= 4;
33 const UINT D3D10_1_SHADER_MINOR_VERSION
= 1;
34 const UINT D3D10_1_SO_BUFFER_MAX_STRIDE_IN_BYTES
= 2048;
35 const UINT D3D10_1_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES
= 256;
36 const UINT D3D10_1_SO_BUFFER_SLOT_COUNT
= 4;
37 const UINT D3D10_1_SO_MULTIPLE_BUFFER_ELEMENTS_PER_BUFFER
= 1;
38 const UINT D3D10_1_SO_SINGLE_BUFFER_COMPONENT_LIMIT
= 64;
39 const UINT D3D10_1_STANDARD_VERTEX_ELEMENT_COUNT
= 32;
40 const UINT D3D10_1_SUBPIXEL_FRACTIONAL_BIT_COUNT
= 8;
41 const UINT D3D10_1_VS_INPUT_REGISTER_COUNT
= 32;
42 const UINT D3D10_1_VS_OUTPUT_REGISTER_COUNT
= 32;
45 cpp_quote
("#define D3D10_1_FLOAT16_FUSED_TOLERANCE_IN_ULP (0.6)")
46 cpp_quote
("#define D3D10_1_FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP (0.6f)")
49 cpp_quote
("#include <d3d10_1shader.h>")
51 const UINT D3D10_1_SHADER_MAJOR_VERSION
= 4;
52 const UINT D3D10_1_SHADER_MINOR_VERSION
= 1;
54 typedef enum D3D10_FEATURE_LEVEL1
56 D3D10_FEATURE_LEVEL_10_0
= 0xa000,
57 D3D10_FEATURE_LEVEL_10_1
= 0xa100,
58 D3D10_FEATURE_LEVEL_9_1
= 0x9100,
59 D3D10_FEATURE_LEVEL_9_2
= 0x9200,
60 D3D10_FEATURE_LEVEL_9_3
= 0x9300
61 } D3D10_FEATURE_LEVEL1
;
63 typedef struct D3D10_RENDER_TARGET_BLEND_DESC1
67 D3D10_BLEND DestBlend
;
68 D3D10_BLEND_OP BlendOp
;
69 D3D10_BLEND SrcBlendAlpha
;
70 D3D10_BLEND DestBlendAlpha
;
71 D3D10_BLEND_OP BlendOpAlpha
;
72 UINT8 RenderTargetWriteMask
;
73 } D3D10_RENDER_TARGET_BLEND_DESC1
;
75 typedef struct D3D10_BLEND_DESC1
77 BOOL AlphaToCoverageEnable
;
78 BOOL IndependentBlendEnable
;
79 D3D10_RENDER_TARGET_BLEND_DESC1 RenderTarget
[D3D10_SIMULTANEOUS_RENDER_TARGET_COUNT
];
83 uuid(edad8d99
-8a35
-4d6d
-8566-2ea276cde161
),
86 pointer_default(unique)
88 interface ID3D10BlendState1
: ID3D10BlendState
90 void GetDesc1
([out] D3D10_BLEND_DESC1
*pDesc
);
93 typedef struct D3D10_TEXCUBE_ARRAY_SRV1
97 UINT First2DArrayFace
;
99 } D3D10_TEXCUBE_ARRAY_SRV1
;
101 typedef D3D_SRV_DIMENSION D3D10_SRV_DIMENSION1
;
103 typedef struct D3D10_SHADER_RESOURCE_VIEW_DESC1
106 D3D10_SRV_DIMENSION1 ViewDimension
;
108 D3D10_BUFFER_SRV Buffer
;
109 D3D10_TEX1D_SRV Texture1D
;
110 D3D10_TEX1D_ARRAY_SRV Texture1DArray
;
111 D3D10_TEX2D_SRV Texture2D
;
112 D3D10_TEX2D_ARRAY_SRV Texture2DArray
;
113 D3D10_TEX2DMS_SRV Texture2DMS
;
114 D3D10_TEX2DMS_ARRAY_SRV Texture2DMSArray
;
115 D3D10_TEX3D_SRV Texture3D
;
116 D3D10_TEXCUBE_SRV TextureCube
;
117 D3D10_TEXCUBE_ARRAY_SRV1 TextureCubeArray
;
119 } D3D10_SHADER_RESOURCE_VIEW_DESC1
;
122 uuid(9b7e4c87
-342c
-4106-a19f
-4f2704f689f0
),
125 pointer_default(unique)
127 interface ID3D10ShaderResourceView1
: ID3D10ShaderResourceView
129 void GetDesc1
([out] D3D10_SHADER_RESOURCE_VIEW_DESC1
*pDesc
);
133 uuid(9b7e4c8f
-342c
-4106-a19f
-4f2704f689f0
),
136 pointer_default(unique)
138 interface ID3D10Device1
: ID3D10Device
140 HRESULT CreateShaderResourceView1
(
141 [in] ID3D10Resource
*pResource
,
142 [in, out] const D3D10_SHADER_RESOURCE_VIEW_DESC1
*pDesc
,
143 [out] ID3D10ShaderResourceView1
**ppSRView
);
145 HRESULT CreateBlendState1
(
146 [in] const D3D10_BLEND_DESC1
*pBlendStateDesc
,
147 [out] ID3D10BlendState1
**ppBlendState
);
149 D3D10_FEATURE_LEVEL1 GetFeatureLevel
();
152 const UINT D3D10_1_SDK_VERSION
= 0x20;
154 cpp_quote
("HRESULT WINAPI D3D10CreateDevice1(IDXGIAdapter*,D3D10_DRIVER_TYPE,")
155 cpp_quote
(" HMODULE,UINT,D3D10_FEATURE_LEVEL1,UINT,ID3D10Device1**);")