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