~steve-sk2/mingw-w64/oneiric

« back to all changes in this revision

Viewing changes to mingw-w64-headers/direct-x/include/d3d10.idl

  • Committer: Bazaar Package Importer
  • Author(s): Stephen Kitt
  • Date: 2010-11-18 00:04:46 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20101118000446-xe24b423su55onyl
Tags: 1.0+20101003-1
* New maintainer. (Closes: #594371.)
* New upstream snapshot:
  - Includes getopt.h. (Closes: #569914.)
* Build g++ for Win64. (Closes: #600451.)
* Standards-Version 3.9.1 (new packaging).
* Include patch from
  http://mingw-w64.svn.sourceforge.net/viewvc/mingw-w64?view=revision&revision=3715
  as suggested by Rafaël Carré.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Copyright 2007 Andras Kovacs
 
3
 *
 
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.
 
8
 *
 
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.
 
13
 *
 
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
 
17
 */
 
18
 
 
19
import "oaidl.idl";
 
20
import "ocidl.idl";
 
21
import "dxgi.idl";
 
22
 
 
23
cpp_quote("#ifndef _D3D10_CONSTANTS")
 
24
cpp_quote("#define _D3D10_CONSTANTS")
 
25
const float D3D10_DEFAULT_BLEND_FACTOR_ALPHA                                            = 1.0;
 
26
const float D3D10_DEFAULT_BLEND_FACTOR_BLUE                                             = 1.0;
 
27
const float D3D10_DEFAULT_BLEND_FACTOR_GREEN                                            = 1.0;
 
28
const float D3D10_DEFAULT_BLEND_FACTOR_RED                                              = 1.0;
 
29
const float D3D10_DEFAULT_BORDER_COLOR_COMPONENT                                        = 0.0;
 
30
const float D3D10_DEFAULT_SLOPE_SCALED_DEPTH_BIAS                                       = 0.0;
 
31
const float D3D10_DEFAULT_DEPTH_BIAS_CLAMP                                              = 0.0;
 
32
const float D3D10_DEFAULT_MAX_ANISOTROPY                                                = 16.0;
 
33
const float D3D10_DEFAULT_MIP_LOD_BIAS                                                  = 0.0;
 
34
const float D3D10_DEFAULT_VIEWPORT_MAX_DEPTH                                            = 0.0;
 
35
const float D3D10_DEFAULT_VIEWPORT_MIN_DEPTH                                            = 0.0;
 
36
const float D3D10_FLOAT16_FUSED_TOLERANCE_IN_ULP                                        = 0.6;
 
37
const float D3D10_FLOAT32_MAX                                                           = 3.402823466e+38;
 
38
const float D3D10_FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP                                   = 0.6;
 
39
const float D3D10_FLOAT_TO_SRGB_EXPONENT_DENOMINATOR                                    = 2.4;
 
40
const float D3D10_FLOAT_TO_SRGB_EXPONENT_NUMERATOR                                      = 1.0;
 
41
const float D3D10_FLOAT_TO_SRGB_OFFSET                                                  = 0.055;
 
42
const float D3D10_FLOAT_TO_SRGB_SCALE_1                                                 = 12.92;
 
43
const float D3D10_FLOAT_TO_SRGB_SCALE_2                                                 = 1.055;
 
44
const float D3D10_FLOAT_TO_SRGB_THRESHOLD                                               = 0.0031308;
 
45
const float D3D10_FTOI_INSTRUCTION_MAX_INPUT                                            = 2147483647.999;
 
46
const float D3D10_FTOI_INSTRUCTION_MIN_INPUT                                            = -2147483648.999;
 
47
const float D3D10_FTOU_INSTRUCTION_MAX_INPUT                                            = 4294967295.999;
 
48
const float D3D10_FTOU_INSTRUCTION_MIN_INPUT                                            = 0.0;
 
49
const float D3D10_LINEAR_GAMMA                                                          = 1.0;
 
50
const float D3D10_MAX_BORDER_COLOR_COMPONENT                                            = 1.0;
 
51
const float D3D10_MAX_DEPTH                                                             = 1.0;
 
52
const float D3D10_MAX_POSITION_VALUE                                                    = 3.402823466e+34;
 
53
const float D3D10_MIN_BORDER_COLOR_COMPONENT                                            = 0.0;
 
54
const float D3D10_MIN_DEPTH                                                             = 0.0;
 
55
const float D3D10_MIP_LOD_BIAS_MAX                                                      = 15.99;
 
56
const float D3D10_MIP_LOD_BIAS_MIN                                                      = -16.0;
 
57
const float D3D10_PS_PIXEL_CENTER_FRACTIONAL_COMPONENT                                  = 0.5;
 
58
const float D3D10_MULTISAMPLE_ANTIALIAS_LINE_WIDTH                                      = 1.4;
 
59
const float D3D10_SRGB_GAMMA                                                            = 2.2;
 
60
const float D3D10_SRGB_TO_FLOAT_DENOMINATOR_1                                           = 12.92;
 
61
const float D3D10_SRGB_TO_FLOAT_DENOMINATOR_2                                           = 1.055;
 
62
const float D3D10_SRGB_TO_FLOAT_EXPONENT                                                = 2.4;
 
63
const float D3D10_SRGB_TO_FLOAT_OFFSET                                                  = 0.055;
 
64
const float D3D10_SRGB_TO_FLOAT_THRESHOLD                                               = 0.04045;
 
65
const float D3D10_SRGB_TO_FLOAT_TOLERANCE_IN_ULP                                        = 0.5;
 
66
const float D3D10_PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT                           = 0.0;
 
67
const float D3D_SPEC_VERSION                                                            = 1.050005;
 
68
const unsigned int D3D10_16BIT_INDEX_STRIP_CUT_VALUE                                    = 0xffff;
 
69
const unsigned int D3D10_32BIT_INDEX_STRIP_CUT_VALUE                                    = 0xffffffff;
 
70
const unsigned int D3D10_8BIT_INDEX_STRIP_CUT_VALUE                                     = 0xff;
 
71
const unsigned int D3D10_ARRAY_AXIS_ADDRESS_RANGE_BIT_COUNT                             = 9;
 
72
const unsigned int D3D10_CLIP_OR_CULL_DISTANCE_COUNT                                    = 8;
 
73
const unsigned int D3D10_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT                            = 2;
 
74
const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT                    = 14;
 
75
const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_COMPONENTS                        = 4;
 
76
const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT               = 32;
 
77
const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT                     = 15;
 
78
const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS               = 4;
 
79
const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT                    = 15;
 
80
const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST           = 1;
 
81
const unsigned int D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS               = 1;
 
82
const unsigned int D3D10_COMMONSHADER_FLOWCONTROL_NESTING_LIMIT                         = 64;
 
83
const unsigned int D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS     = 4;
 
84
const unsigned int D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT          = 1;
 
85
const unsigned int D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST = 1;
 
86
const unsigned int D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS     = 1;
 
87
const unsigned int D3D10_COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT               = 32;
 
88
const unsigned int D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS                = 1;
 
89
const unsigned int D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT                     = 128;
 
90
const unsigned int D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST            = 1;
 
91
const unsigned int D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS                = 1;
 
92
const unsigned int D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT                         = 128;
 
93
const unsigned int D3D10_COMMONSHADER_SAMPLER_REGISTER_COMPONENTS                       = 1;
 
94
const unsigned int D3D10_COMMONSHADER_SAMPLER_REGISTER_COUNT                            = 16;
 
95
const unsigned int D3D10_COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST                   = 1;
 
96
const unsigned int D3D10_COMMONSHADER_SAMPLER_REGISTER_READ_PORTS                       = 1;
 
97
const unsigned int D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT                                = 16;
 
98
const unsigned int D3D10_COMMONSHADER_SUBROUTINE_NESTING_LIMIT                          = 32;
 
99
const unsigned int D3D10_COMMONSHADER_TEMP_REGISTER_COMPONENTS                          = 4;
 
100
const unsigned int D3D10_COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT                 = 32;
 
101
const unsigned int D3D10_COMMONSHADER_TEMP_REGISTER_COUNT                               = 4096;
 
102
const unsigned int D3D10_COMMONSHADER_TEMP_REGISTER_READS_PER_INST                      = 3;
 
103
const unsigned int D3D10_COMMONSHADER_TEMP_REGISTER_READ_PORTS                          = 3;
 
104
const unsigned int D3D10_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX                      = 10;
 
105
const int D3D10_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN                               = -10;
 
106
const int D3D10_COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE                                  = -8;
 
107
const unsigned int D3D10_COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE                         = 7;
 
108
const unsigned int D3D10_DEFAULT_DEPTH_BIAS                                             = 0;
 
109
const unsigned int D3D10_DEFAULT_RENDER_TARGET_ARRAY_INDEX                              = 0;
 
110
const unsigned int D3D10_DEFAULT_SAMPLE_MASK                                            = 0xffffffff;
 
111
const unsigned int D3D10_DEFAULT_SCISSOR_ENDX                                           = 0;
 
112
const unsigned int D3D10_DEFAULT_SCISSOR_ENDY                                           = 0;
 
113
const unsigned int D3D10_DEFAULT_SCISSOR_STARTX                                         = 0;
 
114
const unsigned int D3D10_DEFAULT_SCISSOR_STARTY                                         = 0;
 
115
const unsigned int D3D10_DEFAULT_STENCIL_READ_MASK                                      = 0xff;
 
116
const unsigned int D3D10_DEFAULT_STENCIL_REFERENCE                                      = 0;
 
117
const unsigned int D3D10_DEFAULT_STENCIL_WRITE_MASK                                     = 0xff;
 
118
const unsigned int D3D10_DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX                         = 0;
 
119
const unsigned int D3D10_DEFAULT_VIEWPORT_HEIGHT                                        = 0;
 
120
const unsigned int D3D10_DEFAULT_VIEWPORT_TOPLEFTX                                      = 0;
 
121
const unsigned int D3D10_DEFAULT_VIEWPORT_TOPLEFTY                                      = 0;
 
122
const unsigned int D3D10_DEFAULT_VIEWPORT_WIDTH                                         = 0;
 
123
const unsigned int D3D10_GS_INPUT_PRIM_CONST_REGISTER_COMPONENTS                        = 1;
 
124
const unsigned int D3D10_GS_INPUT_PRIM_CONST_REGISTER_COMPONENT_BIT_COUNT               = 32;
 
125
const unsigned int D3D10_GS_INPUT_PRIM_CONST_REGISTER_COUNT                             = 1;
 
126
const unsigned int D3D10_GS_INPUT_PRIM_CONST_REGISTER_READS_PER_INST                    = 2;
 
127
const unsigned int D3D10_GS_INPUT_PRIM_CONST_REGISTER_READ_PORTS                        = 1;
 
128
const unsigned int D3D10_GS_INPUT_REGISTER_COMPONENTS                                   = 4;
 
129
const unsigned int D3D10_GS_INPUT_REGISTER_COMPONENT_BIT_COUNT                          =32;
 
130
const unsigned int D3D10_GS_INPUT_REGISTER_COUNT                                        = 16;
 
131
const unsigned int D3D10_GS_INPUT_REGISTER_READS_PER_INST                               = 2;
 
132
const unsigned int D3D10_GS_INPUT_REGISTER_READ_PORTS                                   = 1;
 
133
const unsigned int D3D10_GS_INPUT_REGISTER_VERTICES                                     = 6;
 
134
const unsigned int D3D10_GS_OUTPUT_ELEMENTS                                             = 32;
 
135
const unsigned int D3D10_GS_OUTPUT_REGISTER_COMPONENTS                                  = 4;
 
136
const unsigned int D3D10_GS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT                         = 32;
 
137
const unsigned int D3D10_GS_OUTPUT_REGISTER_COUNT                                       = 32;
 
138
const unsigned int D3D10_IA_DEFAULT_INDEX_BUFFER_OFFSET_IN_BYTES                        = 0;
 
139
const unsigned int D3D10_IA_DEFAULT_PRIMITIVE_TOPOLOGY                                  = 0;
 
140
const unsigned int D3D10_IA_DEFAULT_VERTEX_BUFFER_OFFSET_IN_BYTES                       = 0;
 
141
const unsigned int D3D10_IA_INDEX_INPUT_RESOURCE_SLOT_COUNT                             = 1;
 
142
const unsigned int D3D10_IA_INSTANCE_ID_BIT_COUNT                                       = 32;
 
143
const unsigned int D3D10_IA_INTEGER_ARITHMETIC_BIT_COUNT                                = 32;
 
144
const unsigned int D3D10_IA_PRIMITIVE_ID_BIT_COUNT                                      = 32;
 
145
const unsigned int D3D10_IA_VERTEX_ID_BIT_COUNT                                         = 32;
 
146
const unsigned int D3D10_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT                            = 16;
 
147
const unsigned int D3D10_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS                  = 64;
 
148
const unsigned int D3D10_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT                        = 16;
 
149
const unsigned int D3D10_INTEGER_DIVIDE_BY_ZERO_QUOTIENT                                = 0xffffffff;
 
150
const unsigned int D3D10_INTEGER_DIVIDE_BY_ZERO_REMAINDER                               = 0xffffffff;
 
151
const unsigned int D3D10_MAX_MAXANISOTROPY                                              = 16;
 
152
const unsigned int D3D10_MAX_MULTISAMPLE_SAMPLE_COUNT                                   = 32;
 
153
const unsigned int D3D10_MAX_TEXTURE_DIMENSION_2_TO_EXP                                 = 17;
 
154
const unsigned int D3D10_MIN_MAXANISOTROPY                                              = 0;
 
155
const unsigned int D3D10_MIP_LOD_FRACTIONAL_BIT_COUNT                                   = 6;
 
156
const unsigned int D3D10_MIP_LOD_RANGE_BIT_COUNT                                        = 8;
 
157
const unsigned int D3D10_NONSAMPLE_FETCH_OUT_OF_RANGE_ACCESS_RESULT                     = 0;
 
158
const unsigned int D3D10_PIXEL_ADDRESS_RANGE_BIT_COUNT                                  = 13;
 
159
const unsigned int D3D10_PRE_SCISSOR_PIXEL_ADDRESS_RANGE_BIT_COUNT                      = 15;
 
160
const unsigned int D3D10_PS_FRONTFACING_DEFAULT_VALUE                                   = 0xffffffff;
 
161
const unsigned int D3D10_PS_FRONTFACING_FALSE_VALUE                                     = 0;
 
162
const unsigned int D3D10_PS_FRONTFACING_TRUE_VALUE                                      = 0xffffffff;
 
163
const unsigned int D3D10_PS_INPUT_REGISTER_COMPONENTS                                   = 4;
 
164
const unsigned int D3D10_PS_INPUT_REGISTER_COMPONENT_BIT_COUNT                          = 32;
 
165
const unsigned int D3D10_PS_INPUT_REGISTER_COUNT                                        = 32;
 
166
const unsigned int D3D10_PS_INPUT_REGISTER_READS_PER_INST                               = 2;
 
167
const unsigned int D3D10_PS_INPUT_REGISTER_READ_PORTS                                   = 1;
 
168
const unsigned int D3D10_PS_OUTPUT_DEPTH_REGISTER_COMPONENTS                            = 1;
 
169
const unsigned int D3D10_PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT                   = 32;
 
170
const unsigned int D3D10_PS_OUTPUT_DEPTH_REGISTER_COUNT                                 = 1;
 
171
const unsigned int D3D10_PS_OUTPUT_REGISTER_COMPONENTS                                  = 4;
 
172
const unsigned int D3D10_PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT                         = 32;
 
173
const unsigned int D3D10_PS_OUTPUT_REGISTER_COUNT                                       = 8;
 
174
const unsigned int D3D10_REQ_BLEND_OBJECT_COUNT_PER_CONTEXT                             = 4096;
 
175
const unsigned int D3D10_REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP                       = 27;
 
176
const unsigned int D3D10_REQ_CONSTANT_BUFFER_ELEMENT_COUNT                              = 4096;
 
177
const unsigned int D3D10_REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_CONTEXT                     = 4096;
 
178
const unsigned int D3D10_REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP                           = 32;
 
179
const unsigned int D3D10_REQ_DRAW_VERTEX_COUNT_2_TO_EXP                                 = 32;
 
180
const unsigned int D3D10_REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION                = 8192;
 
181
const unsigned int D3D10_REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT                 = 1024;
 
182
const unsigned int D3D10_REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT                    = 4096;
 
183
const unsigned int D3D10_REQ_MAXANISOTROPY                                              = 16;
 
184
const unsigned int D3D10_REQ_MIP_LEVELS                                                 = 14;
 
185
const unsigned int D3D10_REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES                      = 2048;
 
186
const unsigned int D3D10_REQ_RASTERIZER_OBJECT_COUNT_PER_CONTEXT                        = 4096;
 
187
const unsigned int D3D10_REQ_RENDER_TO_BUFFER_WINDOW_WIDTH                              = 8192;
 
188
const unsigned int D3D10_REQ_RESOURCE_SIZE_IN_MEGABYTES                                 = 128;
 
189
const unsigned int D3D10_REQ_RESOURCE_VIEW_COUNT_PER_CONTEXT_2_TO_EXP                   = 20;
 
190
const unsigned int D3D10_REQ_SAMPLER_OBJECT_COUNT_PER_CONTEXT                           = 4096;
 
191
const unsigned int D3D10_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION                             = 512;
 
192
const unsigned int D3D10_REQ_TEXTURE1D_U_DIMENSION                                      = 8192;
 
193
const unsigned int D3D10_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION                             = 512;
 
194
const unsigned int D3D10_REQ_TEXTURE2D_U_OR_V_DIMENSION                                 = 8192;
 
195
const unsigned int D3D10_REQ_TEXTURE3D_U_V_OR_W_DIMENSION                               = 2048;
 
196
const unsigned int D3D10_REQ_TEXTURECUBE_DIMENSION                                      = 8192;
 
197
const unsigned int D3D10_RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL                   = 0;
 
198
const unsigned int D3D10_SHADER_MAJOR_VERSION                                           = 4;
 
199
const unsigned int D3D10_SHADER_MINOR_VERSION                                           = 0;
 
200
const unsigned int D3D10_SHIFT_INSTRUCTION_PAD_VALUE                                    = 0;
 
201
const unsigned int D3D10_SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT                        = 5;
 
202
const unsigned int D3D10_SIMULTANEOUS_RENDER_TARGET_COUNT                               = 8;
 
203
const unsigned int D3D10_SO_BUFFER_MAX_STRIDE_IN_BYTES                                  = 2048;
 
204
const unsigned int D3D10_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES                            = 256;
 
205
const unsigned int D3D10_SO_BUFFER_SLOT_COUNT                                           = 4;
 
206
const unsigned int D3D10_SO_DDI_REGISTER_INDEX_DENOTING_GAP                             = 0xffffffff;
 
207
const unsigned int D3D10_SO_MULTIPLE_BUFFER_ELEMENTS_PER_BUFFER                         = 1;
 
208
const unsigned int D3D10_SO_SINGLE_BUFFER_COMPONENT_LIMIT                               = 64;
 
209
const unsigned int D3D10_STANDARD_COMPONENT_BIT_COUNT                                   = 32;
 
210
const unsigned int D3D10_STANDARD_COMPONENT_BIT_COUNT_DOUBLED                           = 64;
 
211
const unsigned int D3D10_STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE               = 4;
 
212
const unsigned int D3D10_STANDARD_PIXEL_COMPONENT_COUNT                                 = 128;
 
213
const unsigned int D3D10_STANDARD_PIXEL_ELEMENT_COUNT                                   = 32;
 
214
const unsigned int D3D10_STANDARD_VECTOR_SIZE                                           = 4;
 
215
const unsigned int D3D10_STANDARD_VERTEX_ELEMENT_COUNT                                  = 16;
 
216
const unsigned int D3D10_STANDARD_VERTEX_TOTAL_COMPONENT_COUNT                          = 64;
 
217
const unsigned int D3D10_SUBPIXEL_FRACTIONAL_BIT_COUNT                                  = 8;
 
218
const unsigned int D3D10_SUBTEXEL_FRACTIONAL_BIT_COUNT                                  = 6;
 
219
const unsigned int D3D10_TEXEL_ADDRESS_RANGE_BIT_COUNT                                  = 18;
 
220
const unsigned int D3D10_UNBOUND_MEMORY_ACCESS_RESULT                                   = 0;
 
221
const unsigned int D3D10_VIEWPORT_AND_SCISSORRECT_MAX_INDEX                             = 15;
 
222
const unsigned int D3D10_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE             = 16;
 
223
const unsigned int D3D10_VIEWPORT_BOUNDS_MAX                                            = 16383;
 
224
const int D3D10_VIEWPORT_BOUNDS_MIN                                                     = -16384;
 
225
const unsigned int D3D10_VS_INPUT_REGISTER_COMPONENTS                                   = 4;
 
226
const unsigned int D3D10_VS_INPUT_REGISTER_COMPONENT_BIT_COUNT                          = 32;
 
227
const unsigned int D3D10_VS_INPUT_REGISTER_COUNT                                        = 16;
 
228
const unsigned int D3D10_VS_INPUT_REGISTER_READS_PER_INST                               = 2;
 
229
const unsigned int D3D10_VS_INPUT_REGISTER_READ_PORTS                                   = 1;
 
230
const unsigned int D3D10_VS_OUTPUT_REGISTER_COMPONENTS                                  = 4;
 
231
const unsigned int D3D10_VS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT                         = 32;
 
232
const unsigned int D3D10_VS_OUTPUT_REGISTER_COUNT                                       = 16;
 
233
const unsigned int D3D10_WHQL_CONTEXT_COUNT_FOR_RESOURCE_LIMIT                          = 10;
 
234
const unsigned int D3D10_WHQL_DRAWINDEXED_INDEX_COUNT_2_TO_EXP                          = 25;
 
235
const unsigned int D3D10_WHQL_DRAW_VERTEX_COUNT_2_TO_EXP                                = 25;
 
236
const unsigned int D3D_MAJOR_VERSION                                                    = 10;
 
237
const unsigned int D3D_MINOR_VERSION                                                    = 0;
 
238
const unsigned int D3D_SPEC_DATE_DAY                                                    = 8;
 
239
const unsigned int D3D_SPEC_DATE_MONTH                                                  = 8;
 
240
const unsigned int D3D_SPEC_DATE_YEAR                                                   = 2006;
 
241
cpp_quote("#endif")
 
242
 
 
243
const unsigned int D3D10_APPEND_ALIGNED_ELEMENT                                         = 0xffffffff;
 
244
const unsigned int _FACD3D10                                                            = 0x87;
 
245
const unsigned int _FACD3D10DEBUG                                                       = _FACD3D10 + 1;
 
246
const unsigned int D3D10_FILTER_TYPE_MASK                                               = 0x3;
 
247
const unsigned int D3D10_SDK_VERSION                                                    = 29;
 
248
 
 
249
cpp_quote("#define MAKE_D3D10_HRESULT(code)                   MAKE_HRESULT( 1, _FACD3D10, code)")
 
250
cpp_quote("#define MAKE_D3D10_STATUS(code)                    MAKE_HRESULT( 0, _FACD3D10, code)")
 
251
cpp_quote("#define D3D10_ERROR_TOO_MANY_UNIQUE_STATE_OBJECTS  MAKE_D3D10_HRESULT(1)")
 
252
cpp_quote("#define D3D10_ERROR_FILE_NOT_FOUND                 MAKE_D3D10_HRESULT(2)")
 
253
 
 
254
typedef enum D3D10_BLEND {
 
255
    D3D10_BLEND_ZERO             = 1,
 
256
    D3D10_BLEND_ONE              = 2,
 
257
    D3D10_BLEND_SRC_COLOR        = 3,
 
258
    D3D10_BLEND_INV_SRC_COLOR    = 4,
 
259
    D3D10_BLEND_SRC_ALPHA        = 5,
 
260
    D3D10_BLEND_INV_SRC_ALPHA    = 6,
 
261
    D3D10_BLEND_DEST_ALPHA       = 7,
 
262
    D3D10_BLEND_INV_DEST_ALPHA   = 8,
 
263
    D3D10_BLEND_DEST_COLOR       = 9,
 
264
    D3D10_BLEND_INV_DEST_COLOR   = 10,
 
265
    D3D10_BLEND_SRC_ALPHA_SAT    = 11,
 
266
    D3D10_BLEND_BLEND_FACTOR     = 14,
 
267
    D3D10_BLEND_INV_BLEND_FACTOR = 15,
 
268
    D3D10_BLEND_SRC1_COLOR       = 16,
 
269
    D3D10_BLEND_INV_SRC1_COLOR   = 17,
 
270
    D3D10_BLEND_SRC1_ALPHA       = 18,
 
271
    D3D10_BLEND_INV_SRC1_ALPHA   = 19
 
272
} D3D10_BLEND;
 
273
 
 
274
typedef enum D3D10_BLEND_OP {
 
275
    D3D10_BLEND_OP_ADD = 1,
 
276
    D3D10_BLEND_OP_SUBTRACT,
 
277
    D3D10_BLEND_OP_REV_SUBTRACT,
 
278
    D3D10_BLEND_OP_MIN,
 
279
    D3D10_BLEND_OP_MAX,
 
280
} D3D10_BLEND_OP;
 
281
 
 
282
typedef struct D3D10_BLEND_DESC {
 
283
    BOOL AlphaToCoverageEnable;
 
284
    BOOL BlendEnable[8];
 
285
    D3D10_BLEND SrcBlend;
 
286
    D3D10_BLEND DestBlend;
 
287
    D3D10_BLEND_OP BlendOp;
 
288
    D3D10_BLEND SrcBlendAlpha;
 
289
    D3D10_BLEND DestBlendAlpha;
 
290
    D3D10_BLEND_OP BlendOpAlpha;
 
291
    UINT8 RenderTargetWriteMask[8];
 
292
} D3D10_BLEND_DESC;
 
293
 
 
294
typedef enum D3D10_DEPTH_WRITE_MASK {
 
295
    D3D10_DEPTH_WRITE_MASK_ZERO,
 
296
    D3D10_DEPTH_WRITE_MASK_ALL,
 
297
} D3D10_DEPTH_WRITE_MASK;
 
298
 
 
299
typedef enum D3D10_COMPARISON_FUNC {
 
300
    D3D10_COMPARISON_NEVER = 1,
 
301
    D3D10_COMPARISON_LESS,
 
302
    D3D10_COMPARISON_EQUAL,
 
303
    D3D10_COMPARISON_LESS_EQUAL,
 
304
    D3D10_COMPARISON_GREATER,
 
305
    D3D10_COMPARISON_NOT_EQUAL,
 
306
    D3D10_COMPARISON_GREATER_EQUAL,
 
307
    D3D10_COMPARISON_ALWAYS,
 
308
} D3D10_COMPARISON_FUNC;
 
309
 
 
310
typedef enum D3D10_STENCIL_OP {
 
311
    D3D10_STENCIL_OP_KEEP = 1,
 
312
    D3D10_STENCIL_OP_ZERO,
 
313
    D3D10_STENCIL_OP_REPLACE,
 
314
    D3D10_STENCIL_OP_INCR_SAT,
 
315
    D3D10_STENCIL_OP_DECR_SAT,
 
316
    D3D10_STENCIL_OP_INVERT,
 
317
    D3D10_STENCIL_OP_INCR,
 
318
    D3D10_STENCIL_OP_DECR,
 
319
} D3D10_STENCIL_OP;
 
320
 
 
321
typedef struct D3D10_DEPTH_STENCILOP_DESC {
 
322
    D3D10_STENCIL_OP StencilFailOp;
 
323
    D3D10_STENCIL_OP StencilDepthFailOp;
 
324
    D3D10_STENCIL_OP StencilPassOp;
 
325
    D3D10_COMPARISON_FUNC StencilFunc;
 
326
} D3D10_DEPTH_STENCILOP_DESC;
 
327
 
 
328
typedef struct D3D10_DEPTH_STENCIL_DESC {
 
329
    BOOL DepthEnable;
 
330
    D3D10_DEPTH_WRITE_MASK DepthWriteMask;
 
331
    D3D10_COMPARISON_FUNC DepthFunc;
 
332
    BOOL StencilEnable;
 
333
    UINT8 StencilReadMask;
 
334
    UINT8 StencilWriteMask;
 
335
    D3D10_DEPTH_STENCILOP_DESC FrontFace;
 
336
    D3D10_DEPTH_STENCILOP_DESC BackFace;
 
337
} D3D10_DEPTH_STENCIL_DESC;
 
338
 
 
339
typedef enum D3D10_FILL_MODE {
 
340
    D3D10_FILL_WIREFRAME = 2,
 
341
    D3D10_FILL_SOLID,
 
342
} D3D10_FILL_MODE;
 
343
 
 
344
typedef enum D3D10_CULL_MODE {
 
345
    D3D10_CULL_NONE = 1,
 
346
    D3D10_CULL_FRONT,
 
347
    D3D10_CULL_BACK,
 
348
} D3D10_CULL_MODE;
 
349
 
 
350
typedef struct D3D10_RASTERIZER_DESC {
 
351
    D3D10_FILL_MODE FillMode;
 
352
    D3D10_CULL_MODE CullMode;
 
353
    BOOL FrontCounterClockwise;
 
354
    INT DepthBias;
 
355
    FLOAT DepthBiasClamp;
 
356
    FLOAT SlopeScaledDepthBias;
 
357
    BOOL DepthClipEnable;
 
358
    BOOL ScissorEnable;
 
359
    BOOL MultisampleEnable;
 
360
    BOOL AntialiasedLineEnable;
 
361
} D3D10_RASTERIZER_DESC;
 
362
 
 
363
typedef enum D3D10_FILTER {
 
364
    D3D10_FILTER_MIN_MAG_MIP_POINT                          = 0,
 
365
    D3D10_FILTER_MIN_MAG_POINT_MIP_LINEAR                   = 0x1,
 
366
    D3D10_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT             = 0x4,
 
367
    D3D10_FILTER_MIN_POINT_MAG_MIP_LINEAR                   = 0x5,
 
368
    D3D10_FILTER_MIN_LINEAR_MAG_MIP_POINT                   = 0x10,
 
369
    D3D10_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR            = 0x11,
 
370
    D3D10_FILTER_MIN_MAG_LINEAR_MIP_POINT                   = 0x14,
 
371
    D3D10_FILTER_MIN_MAG_MIP_LINEAR                         = 0x15,
 
372
    D3D10_FILTER_ANISOTROPIC                                = 0x55,
 
373
    D3D10_FILTER_COMPARISON_MIN_MAG_MIP_POINT               = 0x80,
 
374
    D3D10_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR        = 0x81,
 
375
    D3D10_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT  = 0x84,
 
376
    D3D10_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR        = 0x85,
 
377
    D3D10_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT        = 0x90,
 
378
    D3D10_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x91,
 
379
    D3D10_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT        = 0x94,
 
380
    D3D10_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR              = 0x95,
 
381
    D3D10_FILTER_COMPARISON_ANISOTROPIC                     = 0xd5,
 
382
    D3D10_FILTER_TEXT_1BIT                                  = 0x80000000
 
383
} D3D10_FILTER;
 
384
 
 
385
typedef enum D3D10_TEXTURE_ADDRESS_MODE {
 
386
    D3D10_TEXTURE_ADDRESS_WRAP = 1,
 
387
    D3D10_TEXTURE_ADDRESS_MIRROR,
 
388
    D3D10_TEXTURE_ADDRESS_CLAMP,
 
389
    D3D10_TEXTURE_ADDRESS_BORDER,
 
390
    D3D10_TEXTURE_ADDRESS_MIRROR_ONCE,
 
391
} D3D10_TEXTURE_ADDRESS_MODE;
 
392
 
 
393
typedef struct D3D10_SAMPLER_DESC {
 
394
    D3D10_FILTER Filter;
 
395
    D3D10_TEXTURE_ADDRESS_MODE AddressU;
 
396
    D3D10_TEXTURE_ADDRESS_MODE AddressV;
 
397
    D3D10_TEXTURE_ADDRESS_MODE AddressW;
 
398
    FLOAT MipLODBias;
 
399
    UINT MaxAnisotropy;
 
400
    D3D10_COMPARISON_FUNC ComparisonFunc;
 
401
    FLOAT BorderColor[4];
 
402
    FLOAT MinLOD;
 
403
    FLOAT MaxLOD;
 
404
} D3D10_SAMPLER_DESC;
 
405
 
 
406
typedef enum D3D10_COUNTER {
 
407
    D3D10_COUNTER_GPU_IDLE,
 
408
    D3D10_COUNTER_VERTEX_PROCESSING,
 
409
    D3D10_COUNTER_GEOMETRY_PROCESSING,
 
410
    D3D10_COUNTER_PIXEL_PROCESSING,
 
411
    D3D10_COUNTER_OTHER_GPU_PROCESSING,
 
412
    D3D10_COUNTER_HOST_ADAPTER_BANDWIDTH_UTILIZATION,
 
413
    D3D10_COUNTER_LOCAL_VIDMEM_BANDWIDTH_UTILIZATION,
 
414
    D3D10_COUNTER_VERTEX_THROUGHPUT_UTILIZATION,
 
415
    D3D10_COUNTER_TRIANGLE_SETUP_THROUGHPUT_UTILIZATION,
 
416
    D3D10_COUNTER_FILLRATE_THROUGHPUT_UTILIZATION,
 
417
    D3D10_COUNTER_VS_MEMORY_LIMITED,
 
418
    D3D10_COUNTER_VS_COMPUTATION_LIMITED,
 
419
    D3D10_COUNTER_GS_MEMORY_LIMITED,
 
420
    D3D10_COUNTER_GS_COMPUTATION_LIMITED,
 
421
    D3D10_COUNTER_PS_MEMORY_LIMITED,
 
422
    D3D10_COUNTER_PS_COMPUTATION_LIMITED,
 
423
    D3D10_COUNTER_POST_TRANSFORM_CACHE_HIT_RATE,
 
424
    D3D10_COUNTER_TEXTURE_CACHE_HIT_RATE,
 
425
    D3D10_COUNTER_DEVICE_DEPENDENT_0 = 0x40000000
 
426
} D3D10_COUNTER;
 
427
 
 
428
typedef struct D3D10_COUNTER_DESC {
 
429
    D3D10_COUNTER Counter;
 
430
    UINT MiscFlags;
 
431
} D3D10_COUNTER_DESC;
 
432
 
 
433
typedef enum D3D10_COUNTER_TYPE {
 
434
    D3D10_COUNTER_TYPE_FLOAT32,
 
435
    D3D10_COUNTER_TYPE_UINT16,
 
436
    D3D10_COUNTER_TYPE_UINT32,
 
437
    D3D10_COUNTER_TYPE_UINT64,
 
438
} D3D10_COUNTER_TYPE;
 
439
 
 
440
typedef struct D3D10_COUNTER_INFO {
 
441
    D3D10_COUNTER LastDeviceDependentCounter;
 
442
    UINT NumSimultaneousCounters;
 
443
    UINT8 NumDetectableParallelUnits;
 
444
} D3D10_COUNTER_INFO;
 
445
 
 
446
typedef enum D3D10_RESOURCE_DIMENSION {
 
447
    D3D10_RESOURCE_DIMENSION_UNKNOWN,
 
448
    D3D10_RESOURCE_DIMENSION_BUFFER,
 
449
    D3D10_RESOURCE_DIMENSION_TEXTURE1D,
 
450
    D3D10_RESOURCE_DIMENSION_TEXTURE2D,
 
451
    D3D10_RESOURCE_DIMENSION_TEXTURE3D,
 
452
} D3D10_RESOURCE_DIMENSION;
 
453
 
 
454
typedef enum D3D10_USAGE {
 
455
    D3D10_USAGE_DEFAULT,
 
456
    D3D10_USAGE_IMMUTABLE,
 
457
    D3D10_USAGE_DYNAMIC,
 
458
    D3D10_USAGE_STAGING,
 
459
} D3D10_USAGE;
 
460
 
 
461
typedef struct D3D10_BUFFER_DESC {
 
462
    UINT ByteWidth;
 
463
    D3D10_USAGE Usage;
 
464
    UINT BindFlags;
 
465
    UINT CPUAccessFlags;
 
466
    UINT MiscFlags;
 
467
} D3D10_BUFFER_DESC;
 
468
 
 
469
typedef enum D3D10_MAP {
 
470
    D3D10_MAP_READ = 1,
 
471
    D3D10_MAP_WRITE,
 
472
    D3D10_MAP_READ_WRITE,
 
473
    D3D10_MAP_WRITE_DISCARD,
 
474
    D3D10_MAP_WRITE_NO_OVERWRITE,
 
475
} D3D10_MAP;
 
476
 
 
477
typedef struct D3D10_TEXTURE1D_DESC {
 
478
    UINT Width;
 
479
    UINT MipLevels;
 
480
    UINT ArraySize;
 
481
    DXGI_FORMAT Format;
 
482
    D3D10_USAGE Usage;
 
483
    UINT BindFlags;
 
484
    UINT CPUAccessFlags;
 
485
    UINT MiscFlags;
 
486
} D3D10_TEXTURE1D_DESC;
 
487
 
 
488
typedef struct D3D10_TEXTURE2D_DESC {
 
489
    UINT Width;
 
490
    UINT Height;
 
491
    UINT MipLevels;
 
492
    UINT ArraySize;
 
493
    DXGI_FORMAT Format;
 
494
    DXGI_SAMPLE_DESC SampleDesc;
 
495
    D3D10_USAGE Usage;
 
496
    UINT BindFlags;
 
497
    UINT CPUAccessFlags;
 
498
    UINT MiscFlags;
 
499
} D3D10_TEXTURE2D_DESC;
 
500
 
 
501
typedef struct D3D10_TEXTURE3D_DESC {
 
502
    UINT Width;
 
503
    UINT Height;
 
504
    UINT Depth;
 
505
    UINT MipLevels;
 
506
    DXGI_FORMAT Format;
 
507
    D3D10_USAGE Usage;
 
508
    UINT BindFlags;
 
509
    UINT CPUAccessFlags;
 
510
    UINT MiscFlags;
 
511
} D3D10_TEXTURE3D_DESC;
 
512
 
 
513
typedef enum D3D10_DSV_DIMENSION
 
514
{
 
515
    D3D10_DSV_DIMENSION_UNKNOWN,
 
516
    D3D10_DSV_DIMENSION_TEXTURE1D,
 
517
    D3D10_DSV_DIMENSION_TEXTURE1DARRAY,
 
518
    D3D10_DSV_DIMENSION_TEXTURE2D,
 
519
    D3D10_DSV_DIMENSION_TEXTURE2DARRAY,
 
520
    D3D10_DSV_DIMENSION_TEXTURE2DMS,
 
521
    D3D10_DSV_DIMENSION_TEXTURE2DMSARRAY,
 
522
} D3D10_DSV_DIMENSION;
 
523
 
 
524
typedef struct D3D10_TEX1D_DSV {
 
525
    UINT MipSlice;
 
526
} D3D10_TEX1D_DSV;
 
527
 
 
528
typedef struct D3D10_TEX1D_ARRAY_DSV {
 
529
    UINT MipSlice;
 
530
    UINT FirstArraySlice;
 
531
    UINT ArraySize;
 
532
} D3D10_TEX1D_ARRAY_DSV;
 
533
 
 
534
typedef struct D3D10_TEX2D_DSV {
 
535
    UINT MipSlice;
 
536
} D3D10_TEX2D_DSV;
 
537
 
 
538
typedef struct D3D10_TEX2D_ARRAY_DSV {
 
539
    UINT MipSlice;
 
540
    UINT FirstArraySlice;
 
541
    UINT ArraySize;
 
542
} D3D10_TEX2D_ARRAY_DSV;
 
543
 
 
544
typedef struct D3D10_TEX2DMS_DSV {
 
545
    UINT UnusedField_NothingToDefine;
 
546
} D3D10_TEX2DMS_DSV;
 
547
 
 
548
typedef struct D3D10_TEX2DMS_ARRAY_DSV {
 
549
    UINT FirstArraySlice;
 
550
    UINT ArraySize;
 
551
} D3D10_TEX2DMS_ARRAY_DSV;
 
552
 
 
553
typedef struct D3D10_DEPTH_STENCIL_VIEW_DESC {
 
554
    DXGI_FORMAT Format;
 
555
    D3D10_DSV_DIMENSION ViewDimension;
 
556
    union {
 
557
        D3D10_TEX1D_DSV Texture1D;
 
558
        D3D10_TEX1D_ARRAY_DSV Texture1DArray;
 
559
        D3D10_TEX2D_DSV Texture2D;
 
560
        D3D10_TEX2D_ARRAY_DSV Texture2DArray;
 
561
        D3D10_TEX2DMS_DSV Texture2DMS;
 
562
        D3D10_TEX2DMS_ARRAY_DSV Texture2DMSArray;
 
563
    } DUMMYUNIONNAME;
 
564
} D3D10_DEPTH_STENCIL_VIEW_DESC;
 
565
 
 
566
typedef enum D3D10_RTV_DIMENSION {
 
567
    D3D10_RTV_DIMENSION_UNKNOWN,
 
568
    D3D10_RTV_DIMENSION_BUFFER,
 
569
    D3D10_RTV_DIMENSION_TEXTURE1D,
 
570
    D3D10_RTV_DIMENSION_TEXTURE1DARRAY,
 
571
    D3D10_RTV_DIMENSION_TEXTURE2D,
 
572
    D3D10_RTV_DIMENSION_TEXTURE2DARRAY,
 
573
    D3D10_RTV_DIMENSION_TEXTURE2DMS,
 
574
    D3D10_RTV_DIMENSION_TEXTURE2DMSARRAY,
 
575
    D3D10_RTV_DIMENSION_TEXTURE3D,
 
576
} D3D10_RTV_DIMENSION;
 
577
 
 
578
typedef struct D3D10_BUFFER_RTV {
 
579
    UINT ElementOffset;
 
580
    UINT ElementWidth;
 
581
} D3D10_BUFFER_RTV;
 
582
 
 
583
typedef struct D3D10_TEX1D_RTV {
 
584
    UINT MipSlice;
 
585
} D3D10_TEX1D_RTV;
 
586
 
 
587
typedef struct D3D10_TEX1D_ARRAY_RTV {
 
588
    UINT MipSlice;
 
589
    UINT FirstArraySlice;
 
590
    UINT ArraySize;
 
591
} D3D10_TEX1D_ARRAY_RTV;
 
592
 
 
593
typedef struct D3D10_TEX2D_RTV {
 
594
    UINT MipSlice;
 
595
} D3D10_TEX2D_RTV;
 
596
 
 
597
typedef struct D3D10_TEX2D_ARRAY_RTV {
 
598
    UINT MipSlice;
 
599
    UINT FirstArraySlice;
 
600
    UINT ArraySize;
 
601
} D3D10_TEX2D_ARRAY_RTV;
 
602
 
 
603
typedef struct D3D10_TEX2DMS_RTV {
 
604
    UINT UnusedField_NothingToDefine;
 
605
} D3D10_TEX2DMS_RTV;
 
606
 
 
607
typedef struct D3D10_TEX2DMS_ARRAY_RTV {
 
608
    UINT FirstArraySlice;
 
609
    UINT ArraySize;
 
610
} D3D10_TEX2DMS_ARRAY_RTV;
 
611
 
 
612
typedef struct D3D10_TEX3D_RTV {
 
613
    UINT MipSlice;
 
614
    UINT FirstWSlice;
 
615
    UINT WSize;
 
616
} D3D10_TEX3D_RTV;
 
617
 
 
618
typedef struct D3D10_RENDER_TARGET_VIEW_DESC {
 
619
    DXGI_FORMAT Format;
 
620
    D3D10_RTV_DIMENSION ViewDimension;
 
621
    union {
 
622
        D3D10_BUFFER_RTV Buffer;
 
623
        D3D10_TEX1D_RTV Texture1D;
 
624
        D3D10_TEX1D_ARRAY_RTV Texture1DArray;
 
625
        D3D10_TEX2D_RTV Texture2D;
 
626
        D3D10_TEX2D_ARRAY_RTV Texture2DArray;
 
627
        D3D10_TEX2DMS_RTV Texture2DMS;
 
628
        D3D10_TEX2DMS_ARRAY_RTV Texture2DMSArray;
 
629
        D3D10_TEX3D_RTV Texture3D;
 
630
    } DUMMYUNIONNAME;
 
631
} D3D10_RENDER_TARGET_VIEW_DESC;
 
632
 
 
633
typedef enum D3D10_SRV_DIMENSION {
 
634
    D3D10_SRV_DIMENSION_UNKNOWN,
 
635
    D3D10_SRV_DIMENSION_BUFFER,
 
636
    D3D10_SRV_DIMENSION_TEXTURE1D,
 
637
    D3D10_SRV_DIMENSION_TEXTURE1DARRAY,
 
638
    D3D10_SRV_DIMENSION_TEXTURE2D,
 
639
    D3D10_SRV_DIMENSION_TEXTURE2DARRAY,
 
640
    D3D10_SRV_DIMENSION_TEXTURE2DMS,
 
641
    D3D10_SRV_DIMENSION_TEXTURE2DMSARRAY,
 
642
    D3D10_SRV_DIMENSION_TEXTURE3D,
 
643
    D3D10_SRV_DIMENSION_TEXTURECUBE,
 
644
} D3D10_SRV_DIMENSION;
 
645
 
 
646
typedef struct D3D10_BUFFER_SRV {
 
647
    UINT ElementOffset;
 
648
    UINT ElementWidth;
 
649
} D3D10_BUFFER_SRV;
 
650
 
 
651
typedef struct D3D10_TEX1D_SRV {
 
652
    UINT MostDetailedMip;
 
653
    UINT MipLevels;
 
654
} D3D10_TEX1D_SRV;
 
655
 
 
656
typedef struct D3D10_TEX1D_ARRAY_SRV {
 
657
    UINT MostDetailedMip;
 
658
    UINT MipLevels;
 
659
    UINT FirstArraySlice;
 
660
    UINT ArraySize;
 
661
} D3D10_TEX1D_ARRAY_SRV;
 
662
 
 
663
typedef struct D3D10_TEX2D_SRV {
 
664
    UINT MostDetailedMip;
 
665
    UINT MipLevels;
 
666
} D3D10_TEX2D_SRV;
 
667
 
 
668
typedef struct D3D10_TEX2D_ARRAY_SRV {
 
669
    UINT MostDetailedMip;
 
670
    UINT MipLevels;
 
671
    UINT FirstArraySlice;
 
672
    UINT ArraySize;
 
673
} D3D10_TEX2D_ARRAY_SRV;
 
674
 
 
675
typedef struct D3D10_TEX2DMS_SRV {
 
676
    UINT UnusedField_NothingToDefine;
 
677
} D3D10_TEX2DMS_SRV;
 
678
 
 
679
typedef struct D3D10_TEX2DMS_ARRAY_SRV {
 
680
    UINT FirstArraySlice;
 
681
    UINT ArraySize;
 
682
} D3D10_TEX2DMS_ARRAY_SRV;
 
683
 
 
684
typedef struct D3D10_TEX3D_SRV {
 
685
    UINT MostDetailedMip;
 
686
    UINT MipLevels;
 
687
} D3D10_TEX3D_SRV;
 
688
 
 
689
typedef struct D3D10_TEXCUBE_SRV {
 
690
    UINT MostDetailedMip;
 
691
    UINT MipLevels;
 
692
} D3D10_TEXCUBE_SRV;
 
693
 
 
694
typedef struct D3D10_SHADER_RESOURCE_VIEW_DESC {
 
695
    DXGI_FORMAT Format;
 
696
    D3D10_SRV_DIMENSION ViewDimension;
 
697
    union {
 
698
        D3D10_BUFFER_SRV Buffer;
 
699
        D3D10_TEX1D_SRV Texture1D;
 
700
        D3D10_TEX1D_ARRAY_SRV Texture1DArray;
 
701
        D3D10_TEX2D_SRV Texture2D;
 
702
        D3D10_TEX2D_ARRAY_SRV Texture2DArray;
 
703
        D3D10_TEX2DMS_SRV Texture2DMS;
 
704
        D3D10_TEX2DMS_ARRAY_SRV Texture2DMSArray;
 
705
        D3D10_TEX3D_SRV Texture3D;
 
706
        D3D10_TEXCUBE_SRV TextureCube;
 
707
    } DUMMYUNIONNAME;
 
708
} D3D10_SHADER_RESOURCE_VIEW_DESC;
 
709
 
 
710
typedef struct D3D10_BOX {
 
711
    UINT left;
 
712
    UINT top;
 
713
    UINT front;
 
714
    UINT right;
 
715
    UINT bottom;
 
716
    UINT back;
 
717
} D3D10_BOX;
 
718
 
 
719
typedef struct D3D10_SUBRESOURCE_DATA {
 
720
    const void *pSysMem;
 
721
    UINT SysMemPitch;
 
722
    UINT SysMemSlicePitch;
 
723
} D3D10_SUBRESOURCE_DATA;
 
724
 
 
725
typedef struct D3D10_SO_DECLARATION_ENTRY {
 
726
    LPCSTR SemanticName;
 
727
    UINT SemanticIndex;
 
728
    BYTE StartComponent;
 
729
    BYTE ComponentCount;
 
730
    BYTE OutputSlot;
 
731
} D3D10_SO_DECLARATION_ENTRY;
 
732
 
 
733
typedef enum D3D10_INPUT_CLASSIFICATION {
 
734
    D3D10_INPUT_PER_VERTEX_DATA,
 
735
    D3D10_INPUT_PER_INSTANCE_DATA,
 
736
} D3D10_INPUT_CLASSIFICATION;
 
737
 
 
738
typedef struct D3D10_INPUT_ELEMENT_DESC {
 
739
    LPCSTR SemanticName;
 
740
    UINT SemanticIndex;
 
741
    DXGI_FORMAT Format;
 
742
    UINT InputSlot;
 
743
    UINT AlignedByteOffset;
 
744
    D3D10_INPUT_CLASSIFICATION InputSlotClass;
 
745
    UINT InstanceDataStepRate;
 
746
} D3D10_INPUT_ELEMENT_DESC;
 
747
 
 
748
typedef enum D3D10_QUERY {
 
749
    D3D10_QUERY_EVENT,
 
750
    D3D10_QUERY_OCCLUSION,
 
751
    D3D10_QUERY_TIMESTAMP,
 
752
    D3D10_QUERY_TIMESTAMP_DISJOINT,
 
753
    D3D10_QUERY_PIPELINE_STATISTICS,
 
754
    D3D10_QUERY_OCCLUSION_PREDICATE,
 
755
    D3D10_QUERY_SO_STATISTICS,
 
756
    D3D10_QUERY_SO_OVERFLOW_PREDICATE,
 
757
} D3D10_QUERY;
 
758
 
 
759
typedef struct D3D10_QUERY_DESC {
 
760
    D3D10_QUERY Query;
 
761
    UINT MiscFlags;
 
762
} D3D10_QUERY_DESC;
 
763
 
 
764
typedef enum D3D10_PRIMITIVE_TOPOLOGY {
 
765
    D3D10_PRIMITIVE_TOPOLOGY_UNDEFINED         = 0,
 
766
    D3D10_PRIMITIVE_TOPOLOGY_POINTLIST         = 1,
 
767
    D3D10_PRIMITIVE_TOPOLOGY_LINELIST          = 2,
 
768
    D3D10_PRIMITIVE_TOPOLOGY_LINESTRIP         = 3,
 
769
    D3D10_PRIMITIVE_TOPOLOGY_TRIANGLELIST      = 4,
 
770
    D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP     = 5,
 
771
    D3D10_PRIMITIVE_TOPOLOGY_LINELIST_ADJ      = 10,
 
772
    D3D10_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ     = 11,
 
773
    D3D10_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ  = 12,
 
774
    D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ = 13
 
775
} D3D10_PRIMITIVE_TOPOLOGY;
 
776
 
 
777
typedef RECT D3D10_RECT;
 
778
 
 
779
typedef struct D3D10_VIEWPORT {
 
780
    INT TopLeftX;
 
781
    INT TopLeftY;
 
782
    UINT Width;
 
783
    UINT Height;
 
784
    FLOAT MinDepth;
 
785
    FLOAT MaxDepth;
 
786
} D3D10_VIEWPORT;
 
787
 
 
788
typedef struct D3D10_MAPPED_TEXTURE2D {
 
789
    void *pData;
 
790
    UINT RowPitch;
 
791
} D3D10_MAPPED_TEXTURE2D;
 
792
 
 
793
typedef struct D3D10_MAPPED_TEXTURE3D {
 
794
    void *pData;
 
795
    UINT RowPitch;
 
796
    UINT DepthPitch;
 
797
} D3D10_MAPPED_TEXTURE3D;
 
798
 
 
799
typedef enum D3D10_BIND_FLAG {
 
800
    D3D10_BIND_VERTEX_BUFFER   = 0x1,
 
801
    D3D10_BIND_INDEX_BUFFER    = 0x2,
 
802
    D3D10_BIND_CONSTANT_BUFFER = 0x4,
 
803
    D3D10_BIND_SHADER_RESOURCE = 0x8,
 
804
    D3D10_BIND_STREAM_OUTPUT   = 0x10,
 
805
    D3D10_BIND_RENDER_TARGET   = 0x20,
 
806
    D3D10_BIND_DEPTH_STENCIL   = 0x40
 
807
} D3D10_BIND_FLAG;
 
808
 
 
809
typedef enum D3D10_CPU_ACCESS_FLAG {
 
810
    D3D10_CPU_ACCESS_WRITE = 0x10000,
 
811
    D3D10_CPU_ACCESS_READ  = 0x20000
 
812
} D3D10_CPU_ACCESS_FLAG;
 
813
 
 
814
typedef enum D3D10_RESOURCE_MISC_FLAG {
 
815
    D3D10_RESOURCE_MISC_GENERATE_MIPS = 0x1,
 
816
    D3D10_RESOURCE_MISC_SHARED        = 0x2,
 
817
    D3D10_RESOURCE_MISC_TEXTURECUBE   = 0x4
 
818
} D3D10_RESOURCE_MISC_FLAG;
 
819
 
 
820
typedef enum D3D10_MAP_FLAG {
 
821
    D3D10_MAP_FLAG_DO_NOT_WAIT = 0x100000,
 
822
} D3D10_MAP_FLAG;
 
823
 
 
824
typedef enum D3D10_CLEAR_FLAG {
 
825
    D3D10_CLEAR_DEPTH   = 0x1,
 
826
    D3D10_CLEAR_STENCIL = 0x2
 
827
} D3D10_CLEAR_FLAG;
 
828
 
 
829
typedef enum D3D10_COLOR_WRITE_ENABLE {
 
830
    D3D10_COLOR_WRITE_ENABLE_RED   = 0x1,
 
831
    D3D10_COLOR_WRITE_ENABLE_GREEN = 0x2,
 
832
    D3D10_COLOR_WRITE_ENABLE_BLUE  = 0x4,
 
833
    D3D10_COLOR_WRITE_ENABLE_ALPHA = 0x8,
 
834
    D3D10_COLOR_WRITE_ENABLE_ALL   = (D3D10_COLOR_WRITE_ENABLE_RED  | D3D10_COLOR_WRITE_ENABLE_GREEN |
 
835
                                      D3D10_COLOR_WRITE_ENABLE_BLUE | D3D10_COLOR_WRITE_ENABLE_ALPHA)
 
836
} D3D10_COLOR_WRITE_ENABLE;
 
837
 
 
838
typedef enum D3D10_TEXTURECUBE_FACE {
 
839
    D3D10_TEXTURECUBE_FACE_POSITIVE_X,
 
840
    D3D10_TEXTURECUBE_FACE_NEGATIVE_X,
 
841
    D3D10_TEXTURECUBE_FACE_POSITIVE_Y,
 
842
    D3D10_TEXTURECUBE_FACE_NEGATIVE_Y,
 
843
    D3D10_TEXTURECUBE_FACE_POSITIVE_Z,
 
844
    D3D10_TEXTURECUBE_FACE_NEGATIVE_Z,
 
845
} D3D10_TEXTURECUBE_FACE;
 
846
 
 
847
typedef enum D3D10_ASYNC_GETDATA_FLAG {
 
848
    D3D10_ASYNC_GETDATA_DONOTFLUSH = 0x1,
 
849
} D3D10_ASYNC_GETDATA_FLAG;
 
850
 
 
851
typedef enum D3D10_FILTER_TYPE {
 
852
    D3D10_FILTER_TYPE_POINT,
 
853
    D3D10_FILTER_TYPE_LINEAR
 
854
} D3D10_FILTER_TYPE;
 
855
 
 
856
typedef enum D3D10_QUERY_MISC_FLAG {
 
857
    D3D10_QUERY_MISC_PREDICATEHINT = 0x1
 
858
} D3D10_QUERY_MISC_FLAG;
 
859
 
 
860
typedef struct D3D10_QUERY_DATA_TIMESTAMP_DISJOINT {
 
861
    UINT64 Frequency;
 
862
    BOOL Disjoint;
 
863
} D3D10_QUERY_DATA_TIMESTAMP_DISJOINT;
 
864
 
 
865
typedef struct D3D10_QUERY_DATA_PIPELINE_STATISTICS {
 
866
    UINT64 IAVertices;
 
867
    UINT64 IAPrimitives;
 
868
    UINT64 VSInvocations;
 
869
    UINT64 GSInvocations;
 
870
    UINT64 GSPrimitives;
 
871
    UINT64 CInvocations;
 
872
    UINT64 CPrimitives;
 
873
    UINT64 PSInvocations;
 
874
} D3D10_QUERY_DATA_PIPELINE_STATISTICS;
 
875
 
 
876
typedef struct D3D10_QUERY_DATA_SO_STATISTICS {
 
877
    UINT64 NumPrimitivesWritten;
 
878
    UINT64 PrimitivesStorageNeeded;
 
879
} D3D10_QUERY_DATA_SO_STATISTICS;
 
880
 
 
881
typedef enum D3D10_CREATE_DEVICE_FLAG {
 
882
    D3D10_CREATE_DEVICE_SINGLETHREADED                           = 0x1,
 
883
    D3D10_CREATE_DEVICE_DEBUG                                    = 0x2,
 
884
    D3D10_CREATE_DEVICE_SWITCH_TO_REF                            = 0x4,
 
885
    D3D10_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS = 0x8
 
886
} D3D10_CREATE_DEVICE_FLAG;
 
887
 
 
888
/* Core */
 
889
 
 
890
interface ID3D10Device;
 
891
 
 
892
[
 
893
    object,
 
894
    local,
 
895
    uuid(9b7e4c00-342c-4106-a19f-4f2704f689f0)
 
896
]
 
897
interface ID3D10DeviceChild : IUnknown
 
898
{
 
899
        void GetDevice(
 
900
            [out] ID3D10Device **ppDevice);
 
901
        HRESULT GetPrivateData(
 
902
            [in] REFGUID guid,
 
903
            [in, out] UINT *pDataSize,
 
904
            [out] void *pData);
 
905
        HRESULT SetPrivateData(
 
906
            [in] REFGUID guid,
 
907
            [in] UINT DataSize,
 
908
            [in] const void *pData);
 
909
        HRESULT SetPrivateDataInterface(
 
910
            [in] REFGUID guid,
 
911
            [in] const IUnknown *pData);
 
912
}
 
913
 
 
914
/* Resource */
 
915
 
 
916
[
 
917
    object,
 
918
    local,
 
919
    uuid(9b7e4c01-342c-4106-a19f-4f2704f689f0)
 
920
]
 
921
interface ID3D10Resource : ID3D10DeviceChild
 
922
{
 
923
        void GetType(
 
924
            [out] D3D10_RESOURCE_DIMENSION *rType);
 
925
        void SetEvictionPriority(
 
926
            [in] UINT EvictionPriority);
 
927
        UINT GetEvictionPriority();
 
928
}
 
929
 
 
930
[
 
931
    object,
 
932
    local,
 
933
    uuid(9b7e4c02-342c-4106-a19f-4f2704f689f0)
 
934
]
 
935
interface ID3D10Buffer : ID3D10Resource
 
936
{
 
937
        HRESULT Map(
 
938
            [in] D3D10_MAP MapType,
 
939
            [in] UINT MapFlags,
 
940
            [out] void **ppData);
 
941
        void Unmap();
 
942
        void GetDesc(
 
943
            [out] D3D10_BUFFER_DESC *pDesc);
 
944
}
 
945
 
 
946
[
 
947
    object,
 
948
    local,
 
949
    uuid(9b7e4c03-342c-4106-a19f-4f2704f689F0)
 
950
]
 
951
interface ID3D10Texture1D : ID3D10Resource
 
952
{
 
953
        HRESULT Map(
 
954
            [in] UINT Subresource,
 
955
            [in] D3D10_MAP MapType,
 
956
            [in] UINT MapFlags,
 
957
            [out] void **ppData);
 
958
        void Unmap(
 
959
            [in] UINT Subresource);
 
960
        void GetDesc(
 
961
            [out] D3D10_TEXTURE1D_DESC *pDesc);
 
962
}
 
963
 
 
964
[
 
965
    object,
 
966
    local,
 
967
    uuid(9b7e4c04-342c-4106-a19f-4f2704f689F0)
 
968
]
 
969
interface ID3D10Texture2D : ID3D10Resource
 
970
{
 
971
        HRESULT Map(
 
972
            [in] UINT Subresource,
 
973
            [in] D3D10_MAP MapType,
 
974
            [in] UINT MapFlags,
 
975
            [out] D3D10_MAPPED_TEXTURE2D *pMappedTex2D);
 
976
        void Unmap(
 
977
            [in] UINT Subresource);
 
978
        void GetDesc(
 
979
            [out] D3D10_TEXTURE2D_DESC *pDesc);
 
980
}
 
981
 
 
982
[
 
983
    object,
 
984
    local,
 
985
    uuid(9b7e4c05-342c-4106-a19f-4f2704f689F0)
 
986
]
 
987
interface ID3D10Texture3D : ID3D10Resource
 
988
{
 
989
        HRESULT Map(
 
990
            [in] UINT Subresource,
 
991
            [in] D3D10_MAP MapType,
 
992
            [in] UINT MapFlags,
 
993
            [out] D3D10_MAPPED_TEXTURE3D *pMappedTex3D);
 
994
        void Unmap(
 
995
            [in] UINT Subresource);
 
996
        void GetDesc(
 
997
            [out] D3D10_TEXTURE3D_DESC *pDesc);
 
998
}
 
999
 
 
1000
[
 
1001
    object,
 
1002
    local,
 
1003
    uuid(c902b03f-60a7-49ba-9936-2a3ab37a7e33)
 
1004
]
 
1005
interface ID3D10View : ID3D10DeviceChild
 
1006
{
 
1007
        void GetResource(
 
1008
            [out] ID3D10Resource **ppResource);
 
1009
}
 
1010
 
 
1011
[
 
1012
    object,
 
1013
    local,
 
1014
    uuid(9b7e4c09-342c-4106-a19f-4f2704f689f0)
 
1015
]
 
1016
interface ID3D10DepthStencilView : ID3D10View
 
1017
{
 
1018
        void GetDesc(
 
1019
            [out] D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc);
 
1020
}
 
1021
 
 
1022
 
 
1023
[
 
1024
    object,
 
1025
    local,
 
1026
    uuid(9b7e4c08-342c-4106-a19f-4f2704f689f0)
 
1027
]
 
1028
interface ID3D10RenderTargetView : ID3D10View
 
1029
{
 
1030
        void GetDesc(
 
1031
            [out] D3D10_RENDER_TARGET_VIEW_DESC *pDesc);
 
1032
}
 
1033
 
 
1034
[
 
1035
    object,
 
1036
    local,
 
1037
    uuid(9b7e4c07-342c-4106-a19f-4f2704f689f0)
 
1038
]
 
1039
interface ID3D10ShaderResourceView  : ID3D10View
 
1040
{
 
1041
        void GetDesc(
 
1042
            [out] D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc);
 
1043
}
 
1044
 
 
1045
/* Resource End */
 
1046
 
 
1047
[
 
1048
    object,
 
1049
    local,
 
1050
    uuid(edad8d19-8a35-4d6d-8566-2ea276cde161)
 
1051
]
 
1052
interface ID3D10BlendState : ID3D10DeviceChild
 
1053
{
 
1054
    void GetDesc(
 
1055
            [out] D3D10_BLEND_DESC *pDesc);
 
1056
}
 
1057
 
 
1058
[
 
1059
    object,
 
1060
    local,
 
1061
    uuid(2b4b1cc8-a4ad-41f8-8322-ca86fc3ec675)
 
1062
]
 
1063
interface ID3D10DepthStencilState : ID3D10DeviceChild
 
1064
{
 
1065
    void GetDesc(
 
1066
            [out] D3D10_DEPTH_STENCIL_DESC *pDesc);
 
1067
}
 
1068
 
 
1069
[
 
1070
    object,
 
1071
    local,
 
1072
    uuid(6316be88-54cd-4040-ab44-20461bc81f68)
 
1073
]
 
1074
interface ID3D10GeometryShader  : ID3D10DeviceChild
 
1075
{
 
1076
}
 
1077
 
 
1078
[
 
1079
    object,
 
1080
    local,
 
1081
    uuid(9b7e4c0b-342c-4106-a19f-4f2704f689f0)
 
1082
]
 
1083
interface ID3D10InputLayout  : ID3D10DeviceChild
 
1084
{
 
1085
}
 
1086
 
 
1087
[
 
1088
    object,
 
1089
    local,
 
1090
    uuid(4968b601-9d00-4cde-8346-8e7f675819b6)
 
1091
]
 
1092
interface ID3D10PixelShader  : ID3D10DeviceChild
 
1093
{
 
1094
}
 
1095
 
 
1096
[
 
1097
    object,
 
1098
    local,
 
1099
    uuid(a2a07292-89af-4345-be2e-c53d9fbb6e9f)
 
1100
]
 
1101
interface ID3D10RasterizerState  : ID3D10DeviceChild
 
1102
{
 
1103
    void GetDesc(
 
1104
            [out] D3D10_RASTERIZER_DESC *pDesc);
 
1105
}
 
1106
 
 
1107
[
 
1108
    object,
 
1109
    local,
 
1110
    uuid(9b7e4c0c-342c-4106-a19f-4f2704f689f0)
 
1111
]
 
1112
interface ID3D10SamplerState  : ID3D10DeviceChild
 
1113
{
 
1114
    void GetDesc(
 
1115
            [out] D3D10_SAMPLER_DESC *pDesc);
 
1116
}
 
1117
 
 
1118
[
 
1119
    object,
 
1120
    local,
 
1121
    uuid(9b7e4c0a-342c-4106-a19f-4f2704f689f0)
 
1122
]
 
1123
interface ID3D10VertexShader  : ID3D10DeviceChild
 
1124
{
 
1125
}
 
1126
 
 
1127
[
 
1128
    object,
 
1129
    local,
 
1130
    uuid(9b7e4c0d-342c-4106-a19f-4f2704f689f0)
 
1131
]
 
1132
interface ID3D10Asynchronous  : ID3D10DeviceChild
 
1133
{
 
1134
    void Begin();
 
1135
    void End();
 
1136
    HRESULT GetData(
 
1137
            [out] void *pData,
 
1138
            [in] UINT DataSize,
 
1139
            [in] UINT GetDataFlags);
 
1140
    UINT GetDataSize();
 
1141
}
 
1142
 
 
1143
[
 
1144
    object,
 
1145
    local,
 
1146
    uuid(9b7e4c11-342c-4106-a19f-4f2704f689f0)
 
1147
]
 
1148
interface ID3D10Counter  : ID3D10Asynchronous
 
1149
{
 
1150
    void GetDesc(
 
1151
            [out] D3D10_COUNTER_DESC *pDesc);
 
1152
}
 
1153
 
 
1154
[
 
1155
    object,
 
1156
    local,
 
1157
    uuid(9b7e4C0e-342C-4106-a19f-4f2704f689f0)
 
1158
]
 
1159
interface ID3D10Query : ID3D10Asynchronous
 
1160
{
 
1161
    void GetDesc(
 
1162
            [out] D3D10_QUERY_DESC *pDesc);
 
1163
}
 
1164
 
 
1165
[
 
1166
    object,
 
1167
    local,
 
1168
    uuid(9b7e4c10-342c-4106-a19f-4f2704f689f0)
 
1169
]
 
1170
interface ID3D10Predicate : ID3D10Query
 
1171
{
 
1172
}
 
1173
 
 
1174
[
 
1175
    object,
 
1176
    local,
 
1177
    uuid(9b7e4c0f-342c-4106-a19f-4f2704f689f0)
 
1178
]
 
1179
interface ID3D10Device : IUnknown
 
1180
{
 
1181
        void VSSetConstantBuffers(
 
1182
            [in] UINT StartSlot,
 
1183
            [in] UINT NumBuffers,
 
1184
            [in] ID3D10Buffer *const *ppConstantBuffers);
 
1185
        void PSSetShaderResources(
 
1186
            [in] UINT StartSlot,
 
1187
            [in] UINT NumViews,
 
1188
            [in] ID3D10ShaderResourceView *const *ppShaderResourceViews);
 
1189
        void PSSetShader(
 
1190
            [in] ID3D10PixelShader *pPixelShader);
 
1191
        void PSSetSamplers(
 
1192
            [in] UINT StartSlot,
 
1193
            [in] UINT NumSamplers,
 
1194
            [in]ID3D10SamplerState *const *ppSamplers);
 
1195
        void VSSetShader(
 
1196
            [in] ID3D10VertexShader *pVertexShader);
 
1197
        void DrawIndexed(
 
1198
            [in] UINT IndexCount,
 
1199
            [in] UINT StartIndexLocation,
 
1200
            [in] INT BaseVertexLocation);
 
1201
        void Draw(
 
1202
            [in] UINT VertexCount,
 
1203
            [in] UINT StartVertexLocation);
 
1204
        void PSSetConstantBuffers(
 
1205
            [in] UINT StartSlot,
 
1206
            [in] UINT NumBuffers,
 
1207
            [in] ID3D10Buffer *const *ppConstantBuffers);
 
1208
        void IASetInputLayout(
 
1209
            [in] ID3D10InputLayout *pInputLayout);
 
1210
        void IASetVertexBuffers(
 
1211
            [in] UINT StartSlot,
 
1212
            [in] UINT NumBuffers,
 
1213
            [in] ID3D10Buffer *const *ppVertexBuffers,
 
1214
            [in] const UINT *pStrides,
 
1215
            [in] const UINT *pOffsets);
 
1216
        void IASetIndexBuffer(
 
1217
            [in] ID3D10Buffer *pIndexBuffer,
 
1218
            [in] DXGI_FORMAT Format,
 
1219
            [in] UINT Offset);
 
1220
        void DrawIndexedInstanced(
 
1221
            [in] UINT IndexCountPerInstance,
 
1222
            [in] UINT InstanceCount,
 
1223
            [in] UINT StartIndexLocation,
 
1224
            [in] INT BaseVertexLocation,
 
1225
            [in] UINT StartInstanceLocation);
 
1226
        void DrawInstanced(
 
1227
            [in] UINT VertexCountPerInstance,
 
1228
            [in] UINT InstanceCount,
 
1229
            [in] UINT StartVertexLocation,
 
1230
            [in] UINT StartInstanceLocation);
 
1231
        void GSSetConstantBuffers(
 
1232
            [in] UINT StartSlot,
 
1233
            [in] UINT NumBuffers,
 
1234
            [in] ID3D10Buffer *const *ppConstantBuffers);
 
1235
        void GSSetShader(
 
1236
            [in] ID3D10GeometryShader *pShader);
 
1237
        void IASetPrimitiveTopology(
 
1238
            [in] D3D10_PRIMITIVE_TOPOLOGY Topology);
 
1239
        void VSSetShaderResources(
 
1240
            [in] UINT StartSlot,
 
1241
            [in] UINT NumViews,
 
1242
            [in] ID3D10ShaderResourceView *const *ppShaderResourceViews);
 
1243
        void VSSetSamplers(
 
1244
            [in] UINT StartSlot,
 
1245
            [in] UINT NumSamplers,
 
1246
            [in] ID3D10SamplerState *const *ppSamplers);
 
1247
        void SetPredication(
 
1248
            [in] ID3D10Predicate *pPredicate,
 
1249
            [in] BOOL PredicateValue);
 
1250
        void GSSetShaderResources(
 
1251
            [in] UINT StartSlot,
 
1252
            [in] UINT NumViews,
 
1253
            [in] ID3D10ShaderResourceView * const *ppShaderResourceViews);
 
1254
        void GSSetSamplers(
 
1255
            [in] UINT StartSlot,
 
1256
            [in] UINT NumSamplers,
 
1257
            [in] ID3D10SamplerState *const *ppSamplers);
 
1258
        void OMSetRenderTargets(
 
1259
            [in] UINT NumViews,
 
1260
            [in] ID3D10RenderTargetView *const *ppRenderTargetViews,
 
1261
            [in] ID3D10DepthStencilView *pDepthStencilView);
 
1262
        void OMSetBlendState(
 
1263
            [in] ID3D10BlendState *pBlendState,
 
1264
            [in] const FLOAT BlendFactor[4],
 
1265
            [in] UINT SampleMask);
 
1266
        void OMSetDepthStencilState(
 
1267
            [in] ID3D10DepthStencilState *pDepthStencilState,
 
1268
            [in] UINT StencilRef);
 
1269
        void SOSetTargets(
 
1270
            [in] UINT NumBuffers,
 
1271
            [in] ID3D10Buffer *const *ppSOTargets,
 
1272
            [in] const UINT *pOffsets);
 
1273
        void DrawAuto();
 
1274
        void RSSetState(
 
1275
            [in] ID3D10RasterizerState *pRasterizerState);
 
1276
        void RSSetViewports(
 
1277
            [in] UINT NumViewports,
 
1278
            [in] const D3D10_VIEWPORT *pViewports);
 
1279
        void RSSetScissorRects(
 
1280
            [in] UINT NumRects,
 
1281
            [in] const D3D10_RECT *pRects);
 
1282
        void CopySubresourceRegion(
 
1283
            [in] ID3D10Resource *pDstResource,
 
1284
            [in] UINT DstSubresource,
 
1285
            [in] UINT DstX,
 
1286
            [in] UINT DstY,
 
1287
            [in] UINT DstZ,
 
1288
            [in] ID3D10Resource *pSrcResource,
 
1289
            [in] UINT SrcSubresource,
 
1290
            [in] const D3D10_BOX *pSrcBox);
 
1291
        void CopyResource(
 
1292
            [in] ID3D10Resource *pDstResource,
 
1293
            [in] ID3D10Resource *pSrcResource);
 
1294
        void UpdateSubresource(
 
1295
            [in] ID3D10Resource *pDstResource,
 
1296
            [in] UINT DstSubresource,
 
1297
            [in] const D3D10_BOX *pDstBox,
 
1298
            [in] const void *pSrcData,
 
1299
            [in] UINT SrcRowPitch,
 
1300
            [in] UINT SrcDepthPitch);
 
1301
        void ClearRenderTargetView(
 
1302
            [in] ID3D10RenderTargetView *pRenderTargetView,
 
1303
            [in] const FLOAT ColorRGBA[4]);
 
1304
        void ClearDepthStencilView(
 
1305
            [in] ID3D10DepthStencilView *pDepthStencilView,
 
1306
            [in] UINT ClearFlags,
 
1307
            [in] FLOAT Depth,
 
1308
            [in] UINT8 Stencil);
 
1309
        void GenerateMips(
 
1310
            [in] ID3D10ShaderResourceView *pShaderResourceView);
 
1311
        void ResolveSubresource(
 
1312
            [in] ID3D10Resource *pDstResource,
 
1313
            [in] UINT DstSubresource,
 
1314
            [in] ID3D10Resource *pSrcResource,
 
1315
            [in] UINT SrcSubresource,
 
1316
            [in] DXGI_FORMAT Format);
 
1317
        void VSGetConstantBuffers(
 
1318
            [in] UINT StartSlot,
 
1319
            [in] UINT NumBuffers,
 
1320
            [out] ID3D10Buffer **ppConstantBuffers);
 
1321
        void PSGetShaderResources(
 
1322
            [in] UINT StartSlot,
 
1323
            [in] UINT NumViews,
 
1324
            [out] ID3D10ShaderResourceView **ppShaderResourceViews);
 
1325
        void PSGetShader(
 
1326
            [out] ID3D10PixelShader **ppPixelShader);
 
1327
        void PSGetSamplers(
 
1328
            [in] UINT StartSlot,
 
1329
            [in] UINT NumSamplers,
 
1330
            [out] ID3D10SamplerState **ppSamplers);
 
1331
        void VSGetShader(
 
1332
            [out] ID3D10VertexShader **ppVertexShader);
 
1333
        void PSGetConstantBuffers(
 
1334
            [in] UINT StartSlot,
 
1335
            [in] UINT NumBuffers,
 
1336
            [out] ID3D10Buffer **ppConstantBuffers);
 
1337
        void IAGetInputLayout(
 
1338
            [out] ID3D10InputLayout **ppInputLayout);
 
1339
        void IAGetVertexBuffers(
 
1340
            [in] UINT StartSlot,
 
1341
            [in] UINT NumBuffers,
 
1342
            [out] ID3D10Buffer **ppVertexBuffers,
 
1343
            [out] UINT *pStrides,
 
1344
            [out] UINT *pOffsets);
 
1345
        void IAGetIndexBuffer(
 
1346
            [out] ID3D10Buffer **pIndexBuffer,
 
1347
            [out] DXGI_FORMAT *Format,
 
1348
            [out] UINT *Offset);
 
1349
        void GSGetConstantBuffers(
 
1350
            [in] UINT StartSlot,
 
1351
            [in] UINT NumBuffers,
 
1352
            [out] ID3D10Buffer **ppConstantBuffers);
 
1353
        void GSGetShader(
 
1354
            [out] ID3D10GeometryShader **ppGeometryShader);
 
1355
        void IAGetPrimitiveTopology(
 
1356
            [out] D3D10_PRIMITIVE_TOPOLOGY *pTopology);
 
1357
        void VSGetShaderResources(
 
1358
            [in] UINT StartSlot,
 
1359
            [in] UINT NumViews,
 
1360
            [out] ID3D10ShaderResourceView **ppShaderResourceViews);
 
1361
        void VSGetSamplers(
 
1362
            [in] UINT StartSlot,
 
1363
            [in] UINT NumSamplers,
 
1364
            [out] ID3D10SamplerState **ppSamplers);
 
1365
        void GetPredication(
 
1366
            [out] ID3D10Predicate **ppPredicate,
 
1367
            [out] BOOL *pPredicateValue);
 
1368
        void GSGetShaderResources(
 
1369
            [in] UINT StartSlot,
 
1370
            [in] UINT NumViews,
 
1371
            [out] ID3D10ShaderResourceView **ppShaderResourceViews);
 
1372
        void GSGetSamplers(
 
1373
            [in] UINT StartSlot,
 
1374
            [in] UINT NumSamplers,
 
1375
            [out] ID3D10SamplerState **ppSamplers);
 
1376
        void OMGetRenderTargets(
 
1377
            [in] UINT NumViews,
 
1378
            [out] ID3D10RenderTargetView **ppRenderTargetViews,
 
1379
            [out] ID3D10DepthStencilView **ppDepthStencilView);
 
1380
        void OMGetBlendState(
 
1381
            [out] ID3D10BlendState **ppBlendState,
 
1382
            [out] FLOAT BlendFactor[4],
 
1383
            [out] UINT *pSampleMask);
 
1384
        void OMGetDepthStencilState(
 
1385
            [out] ID3D10DepthStencilState **ppDepthStencilState,
 
1386
            [out] UINT *pStencilRef);
 
1387
        void SOGetTargets(
 
1388
            [in] UINT NumBuffers,
 
1389
            [out] ID3D10Buffer **ppSOTargets,
 
1390
            [out] UINT *pOffsets);
 
1391
        void RSGetState(
 
1392
            [out] ID3D10RasterizerState **ppRasterizerState);
 
1393
        void RSGetViewports(
 
1394
            [in, out] UINT *NumViewports,
 
1395
            [out] D3D10_VIEWPORT *pViewports);
 
1396
        void RSGetScissorRects(
 
1397
            [in, out] UINT *NumRects,
 
1398
            [out] D3D10_RECT *pRects);
 
1399
        HRESULT GetDeviceRemovedReason();
 
1400
        HRESULT SetExceptionMode(
 
1401
            [in] UINT RaiseFlags);
 
1402
        UINT GetExceptionMode();
 
1403
        HRESULT GetPrivateData(
 
1404
            [in] REFGUID guid,
 
1405
            [in, out] UINT *pDataSize,
 
1406
            [out] void *pData);
 
1407
        HRESULT SetPrivateData(
 
1408
            [in] REFGUID guid,
 
1409
            [in] UINT DataSize,
 
1410
            [in] const void *pData);
 
1411
        HRESULT SetPrivateDataInterface(
 
1412
            [in] REFGUID guid,
 
1413
            [in] const IUnknown *pData);
 
1414
        void ClearState();
 
1415
        void Flush();
 
1416
        HRESULT CreateBuffer(
 
1417
            [in] const D3D10_BUFFER_DESC *pDesc,
 
1418
            [in] const D3D10_SUBRESOURCE_DATA *pInitialData,
 
1419
            [out] ID3D10Buffer **ppBuffer);
 
1420
        HRESULT CreateTexture1D(
 
1421
            [in] const D3D10_TEXTURE1D_DESC *pDesc,
 
1422
            [in] const D3D10_SUBRESOURCE_DATA *pInitialData,
 
1423
            [out] ID3D10Texture1D **ppTexture1D);
 
1424
        HRESULT CreateTexture2D(
 
1425
            [in] const D3D10_TEXTURE2D_DESC *pDesc,
 
1426
            [in] const D3D10_SUBRESOURCE_DATA *pInitialData,
 
1427
            [out] ID3D10Texture2D **ppTexture2D);
 
1428
        HRESULT CreateTexture3D(
 
1429
            [in] const D3D10_TEXTURE3D_DESC *pDesc,
 
1430
            [in] const D3D10_SUBRESOURCE_DATA *pInitialData,
 
1431
            [out] ID3D10Texture3D **ppTexture3D);
 
1432
        HRESULT CreateShaderResourceView(
 
1433
            [in] ID3D10Resource *pResource,
 
1434
            [in] const D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc,
 
1435
            [out] ID3D10ShaderResourceView **ppSRView);
 
1436
        HRESULT CreateRenderTargetView(
 
1437
            [in] ID3D10Resource *pResource,
 
1438
            [in] const D3D10_RENDER_TARGET_VIEW_DESC *pDesc,
 
1439
            [out] ID3D10RenderTargetView **ppRTView);
 
1440
        HRESULT CreateDepthStencilView(
 
1441
            [in] ID3D10Resource *pResource,
 
1442
            [in] const D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc,
 
1443
            [out] ID3D10DepthStencilView **ppDepthStencilView);
 
1444
        HRESULT CreateInputLayout(
 
1445
            [in] const D3D10_INPUT_ELEMENT_DESC *pInputElementDescs,
 
1446
            [in] UINT NumElements,
 
1447
            [in] const void *pShaderBytecodeWithInputSignature,
 
1448
            [in] SIZE_T BytecodeLength,
 
1449
            [out] ID3D10InputLayout **ppInputLayout);
 
1450
        HRESULT CreateVertexShader(
 
1451
            [in] const void *pShaderBytecode,
 
1452
            [in] SIZE_T BytecodeLength,
 
1453
            [out] ID3D10VertexShader **ppVertexShader);
 
1454
        HRESULT CreateGeometryShader(
 
1455
            [in] const void *pShaderBytecode,
 
1456
            [in] SIZE_T BytecodeLength,
 
1457
            [out] ID3D10GeometryShader **ppGeometryShader);
 
1458
        HRESULT CreateGeometryShaderWithStreamOutput(
 
1459
            [in] const void *pShaderBytecode,
 
1460
            [in] SIZE_T BytecodeLength,
 
1461
            [in] const D3D10_SO_DECLARATION_ENTRY *pSODeclaration,
 
1462
            [in] UINT NumEntries,
 
1463
            [in] UINT OutputStreamStride,
 
1464
            [out] ID3D10GeometryShader **ppGeometryShader);
 
1465
        HRESULT CreatePixelShader(
 
1466
            [in] const void *pShaderBytecode,
 
1467
            [in] SIZE_T BytecodeLength,
 
1468
            [out] ID3D10PixelShader **ppPixelShader);
 
1469
        HRESULT CreateBlendState(
 
1470
            [in] const D3D10_BLEND_DESC *pBlendStateDesc,
 
1471
            [out] ID3D10BlendState **ppBlendState);
 
1472
        HRESULT CreateDepthStencilState(
 
1473
            [in] const D3D10_DEPTH_STENCIL_DESC *pDepthStencilDesc,
 
1474
            [out] ID3D10DepthStencilState **ppDepthStencilState);
 
1475
        HRESULT CreateRasterizerState(
 
1476
            [in] const D3D10_RASTERIZER_DESC *pRasterizerDesc,
 
1477
            [out] ID3D10RasterizerState **ppRasterizerState);
 
1478
        HRESULT CreateSamplerState(
 
1479
            [in] const D3D10_SAMPLER_DESC *pSamplerDesc,
 
1480
            [out] ID3D10SamplerState **ppSamplerState);
 
1481
        HRESULT CreateQuery(
 
1482
            [in] const D3D10_QUERY_DESC *pQueryDesc,
 
1483
            [out] ID3D10Query **ppQuery);
 
1484
        HRESULT CreatePredicate(
 
1485
            [in] const D3D10_QUERY_DESC *pPredicateDesc,
 
1486
            [out] ID3D10Predicate **ppPredicate);
 
1487
        HRESULT CreateCounter(
 
1488
            [in] const D3D10_COUNTER_DESC *pCounterDesc,
 
1489
            [out] ID3D10Counter **ppCounter);
 
1490
        HRESULT CheckFormatSupport(
 
1491
            [in] DXGI_FORMAT Format,
 
1492
            [out] UINT *pFormatSupport);
 
1493
        HRESULT CheckMultisampleQualityLevels(
 
1494
            [in] DXGI_FORMAT Format,
 
1495
            [in] UINT SampleCount,
 
1496
            [out] UINT *pNumQualityLevels);
 
1497
        void CheckCounterInfo(
 
1498
            [out] D3D10_COUNTER_INFO *pCounterInfo);
 
1499
        HRESULT CheckCounter(
 
1500
            [in] const D3D10_COUNTER_DESC *pDesc,
 
1501
            [out] D3D10_COUNTER_TYPE *pType,
 
1502
            [out] UINT *pActiveCounters,
 
1503
            [out] LPSTR szName,
 
1504
            [in, out] UINT *pNameLength,
 
1505
            [out] LPSTR szUnits,
 
1506
            [in, out] UINT *pUnitsLength,
 
1507
            [out] LPSTR szDescription,
 
1508
            [in, out] UINT *pDescriptionLength);
 
1509
        UINT GetCreationFlags();
 
1510
        HRESULT OpenSharedResource(
 
1511
            [in] HANDLE hResource,
 
1512
            [in] REFIID ReturnedInterface,
 
1513
            [out] void **ppResource);
 
1514
        void SetTextFilterSize(
 
1515
            [in] UINT Width,
 
1516
            [in] UINT Height);
 
1517
        void GetTextFilterSize(
 
1518
            [out] UINT *pWidth,
 
1519
            [out] UINT *pHeight);
 
1520
}
 
1521
 
 
1522
[
 
1523
    object,
 
1524
    local,
 
1525
    uuid(9b7e4e00-342c-4106-a19f-4f2704f689f0)
 
1526
]
 
1527
interface ID3D10Multithread : IUnknown
 
1528
{
 
1529
        void Enter();
 
1530
        void Leave();
 
1531
        BOOL SetMultithreadProtected(
 
1532
            [in] BOOL bMTProtect);
 
1533
        BOOL GetMultithreadProtected();
 
1534
}
 
1535
 
 
1536
cpp_quote("#include \"d3d10misc.h\"")
 
1537
cpp_quote("#include \"d3d10shader.h\"")
 
1538
cpp_quote("#include \"d3d10effect.h\"")
 
1539
/* TODO: Include "d310sdklayers.h" as soon as it exists */