master
   1/*** Autogenerated by WIDL 10.4 from include/d3d10effect.idl - Do not edit ***/
   2
   3#ifdef _WIN32
   4#ifndef __REQUIRED_RPCNDR_H_VERSION__
   5#define __REQUIRED_RPCNDR_H_VERSION__ 475
   6#endif
   7#include <rpc.h>
   8#include <rpcndr.h>
   9#endif
  10
  11#ifndef COM_NO_WINDOWS_H
  12#include <windows.h>
  13#include <ole2.h>
  14#endif
  15
  16#ifndef __d3d10effect_h__
  17#define __d3d10effect_h__
  18
  19/* Forward declarations */
  20
  21#ifndef __ID3D10EffectType_FWD_DEFINED__
  22#define __ID3D10EffectType_FWD_DEFINED__
  23typedef interface ID3D10EffectType ID3D10EffectType;
  24#ifdef __cplusplus
  25interface ID3D10EffectType;
  26#endif /* __cplusplus */
  27#endif
  28
  29#ifndef __ID3D10EffectVariable_FWD_DEFINED__
  30#define __ID3D10EffectVariable_FWD_DEFINED__
  31typedef interface ID3D10EffectVariable ID3D10EffectVariable;
  32#ifdef __cplusplus
  33interface ID3D10EffectVariable;
  34#endif /* __cplusplus */
  35#endif
  36
  37#ifndef __ID3D10EffectConstantBuffer_FWD_DEFINED__
  38#define __ID3D10EffectConstantBuffer_FWD_DEFINED__
  39typedef interface ID3D10EffectConstantBuffer ID3D10EffectConstantBuffer;
  40#ifdef __cplusplus
  41interface ID3D10EffectConstantBuffer;
  42#endif /* __cplusplus */
  43#endif
  44
  45#ifndef __ID3D10EffectScalarVariable_FWD_DEFINED__
  46#define __ID3D10EffectScalarVariable_FWD_DEFINED__
  47typedef interface ID3D10EffectScalarVariable ID3D10EffectScalarVariable;
  48#ifdef __cplusplus
  49interface ID3D10EffectScalarVariable;
  50#endif /* __cplusplus */
  51#endif
  52
  53#ifndef __ID3D10EffectVectorVariable_FWD_DEFINED__
  54#define __ID3D10EffectVectorVariable_FWD_DEFINED__
  55typedef interface ID3D10EffectVectorVariable ID3D10EffectVectorVariable;
  56#ifdef __cplusplus
  57interface ID3D10EffectVectorVariable;
  58#endif /* __cplusplus */
  59#endif
  60
  61#ifndef __ID3D10EffectMatrixVariable_FWD_DEFINED__
  62#define __ID3D10EffectMatrixVariable_FWD_DEFINED__
  63typedef interface ID3D10EffectMatrixVariable ID3D10EffectMatrixVariable;
  64#ifdef __cplusplus
  65interface ID3D10EffectMatrixVariable;
  66#endif /* __cplusplus */
  67#endif
  68
  69#ifndef __ID3D10EffectStringVariable_FWD_DEFINED__
  70#define __ID3D10EffectStringVariable_FWD_DEFINED__
  71typedef interface ID3D10EffectStringVariable ID3D10EffectStringVariable;
  72#ifdef __cplusplus
  73interface ID3D10EffectStringVariable;
  74#endif /* __cplusplus */
  75#endif
  76
  77#ifndef __ID3D10EffectShaderResourceVariable_FWD_DEFINED__
  78#define __ID3D10EffectShaderResourceVariable_FWD_DEFINED__
  79typedef interface ID3D10EffectShaderResourceVariable ID3D10EffectShaderResourceVariable;
  80#ifdef __cplusplus
  81interface ID3D10EffectShaderResourceVariable;
  82#endif /* __cplusplus */
  83#endif
  84
  85#ifndef __ID3D10EffectRenderTargetViewVariable_FWD_DEFINED__
  86#define __ID3D10EffectRenderTargetViewVariable_FWD_DEFINED__
  87typedef interface ID3D10EffectRenderTargetViewVariable ID3D10EffectRenderTargetViewVariable;
  88#ifdef __cplusplus
  89interface ID3D10EffectRenderTargetViewVariable;
  90#endif /* __cplusplus */
  91#endif
  92
  93#ifndef __ID3D10EffectDepthStencilViewVariable_FWD_DEFINED__
  94#define __ID3D10EffectDepthStencilViewVariable_FWD_DEFINED__
  95typedef interface ID3D10EffectDepthStencilViewVariable ID3D10EffectDepthStencilViewVariable;
  96#ifdef __cplusplus
  97interface ID3D10EffectDepthStencilViewVariable;
  98#endif /* __cplusplus */
  99#endif
 100
 101#ifndef __ID3D10EffectShaderVariable_FWD_DEFINED__
 102#define __ID3D10EffectShaderVariable_FWD_DEFINED__
 103typedef interface ID3D10EffectShaderVariable ID3D10EffectShaderVariable;
 104#ifdef __cplusplus
 105interface ID3D10EffectShaderVariable;
 106#endif /* __cplusplus */
 107#endif
 108
 109#ifndef __ID3D10EffectBlendVariable_FWD_DEFINED__
 110#define __ID3D10EffectBlendVariable_FWD_DEFINED__
 111typedef interface ID3D10EffectBlendVariable ID3D10EffectBlendVariable;
 112#ifdef __cplusplus
 113interface ID3D10EffectBlendVariable;
 114#endif /* __cplusplus */
 115#endif
 116
 117#ifndef __ID3D10EffectDepthStencilVariable_FWD_DEFINED__
 118#define __ID3D10EffectDepthStencilVariable_FWD_DEFINED__
 119typedef interface ID3D10EffectDepthStencilVariable ID3D10EffectDepthStencilVariable;
 120#ifdef __cplusplus
 121interface ID3D10EffectDepthStencilVariable;
 122#endif /* __cplusplus */
 123#endif
 124
 125#ifndef __ID3D10EffectRasterizerVariable_FWD_DEFINED__
 126#define __ID3D10EffectRasterizerVariable_FWD_DEFINED__
 127typedef interface ID3D10EffectRasterizerVariable ID3D10EffectRasterizerVariable;
 128#ifdef __cplusplus
 129interface ID3D10EffectRasterizerVariable;
 130#endif /* __cplusplus */
 131#endif
 132
 133#ifndef __ID3D10EffectSamplerVariable_FWD_DEFINED__
 134#define __ID3D10EffectSamplerVariable_FWD_DEFINED__
 135typedef interface ID3D10EffectSamplerVariable ID3D10EffectSamplerVariable;
 136#ifdef __cplusplus
 137interface ID3D10EffectSamplerVariable;
 138#endif /* __cplusplus */
 139#endif
 140
 141#ifndef __ID3D10EffectTechnique_FWD_DEFINED__
 142#define __ID3D10EffectTechnique_FWD_DEFINED__
 143typedef interface ID3D10EffectTechnique ID3D10EffectTechnique;
 144#ifdef __cplusplus
 145interface ID3D10EffectTechnique;
 146#endif /* __cplusplus */
 147#endif
 148
 149#ifndef __ID3D10Effect_FWD_DEFINED__
 150#define __ID3D10Effect_FWD_DEFINED__
 151typedef interface ID3D10Effect ID3D10Effect;
 152#ifdef __cplusplus
 153interface ID3D10Effect;
 154#endif /* __cplusplus */
 155#endif
 156
 157#ifndef __ID3D10EffectPool_FWD_DEFINED__
 158#define __ID3D10EffectPool_FWD_DEFINED__
 159typedef interface ID3D10EffectPool ID3D10EffectPool;
 160#ifdef __cplusplus
 161interface ID3D10EffectPool;
 162#endif /* __cplusplus */
 163#endif
 164
 165#ifndef __ID3D10EffectPass_FWD_DEFINED__
 166#define __ID3D10EffectPass_FWD_DEFINED__
 167typedef interface ID3D10EffectPass ID3D10EffectPass;
 168#ifdef __cplusplus
 169interface ID3D10EffectPass;
 170#endif /* __cplusplus */
 171#endif
 172
 173#ifndef __ID3D10StateBlock_FWD_DEFINED__
 174#define __ID3D10StateBlock_FWD_DEFINED__
 175typedef interface ID3D10StateBlock ID3D10StateBlock;
 176#ifdef __cplusplus
 177interface ID3D10StateBlock;
 178#endif /* __cplusplus */
 179#endif
 180
 181/* Headers for imported files */
 182
 183#include <d3d10.h>
 184#include <d3d10shader.h>
 185
 186#ifdef __cplusplus
 187extern "C" {
 188#endif
 189
 190#ifndef __ID3D10EffectConstantBuffer_FWD_DEFINED__
 191#define __ID3D10EffectConstantBuffer_FWD_DEFINED__
 192typedef interface ID3D10EffectConstantBuffer ID3D10EffectConstantBuffer;
 193#ifdef __cplusplus
 194interface ID3D10EffectConstantBuffer;
 195#endif /* __cplusplus */
 196#endif
 197
 198#ifndef __ID3D10EffectBlendVariable_FWD_DEFINED__
 199#define __ID3D10EffectBlendVariable_FWD_DEFINED__
 200typedef interface ID3D10EffectBlendVariable ID3D10EffectBlendVariable;
 201#ifdef __cplusplus
 202interface ID3D10EffectBlendVariable;
 203#endif /* __cplusplus */
 204#endif
 205
 206#ifndef __ID3D10EffectDepthStencilVariable_FWD_DEFINED__
 207#define __ID3D10EffectDepthStencilVariable_FWD_DEFINED__
 208typedef interface ID3D10EffectDepthStencilVariable ID3D10EffectDepthStencilVariable;
 209#ifdef __cplusplus
 210interface ID3D10EffectDepthStencilVariable;
 211#endif /* __cplusplus */
 212#endif
 213
 214#ifndef __ID3D10EffectDepthStencilViewVariable_FWD_DEFINED__
 215#define __ID3D10EffectDepthStencilViewVariable_FWD_DEFINED__
 216typedef interface ID3D10EffectDepthStencilViewVariable ID3D10EffectDepthStencilViewVariable;
 217#ifdef __cplusplus
 218interface ID3D10EffectDepthStencilViewVariable;
 219#endif /* __cplusplus */
 220#endif
 221
 222#ifndef __ID3D10EffectMatrixVariable_FWD_DEFINED__
 223#define __ID3D10EffectMatrixVariable_FWD_DEFINED__
 224typedef interface ID3D10EffectMatrixVariable ID3D10EffectMatrixVariable;
 225#ifdef __cplusplus
 226interface ID3D10EffectMatrixVariable;
 227#endif /* __cplusplus */
 228#endif
 229
 230#ifndef __ID3D10EffectPass_FWD_DEFINED__
 231#define __ID3D10EffectPass_FWD_DEFINED__
 232typedef interface ID3D10EffectPass ID3D10EffectPass;
 233#ifdef __cplusplus
 234interface ID3D10EffectPass;
 235#endif /* __cplusplus */
 236#endif
 237
 238#ifndef __ID3D10EffectRasterizerVariable_FWD_DEFINED__
 239#define __ID3D10EffectRasterizerVariable_FWD_DEFINED__
 240typedef interface ID3D10EffectRasterizerVariable ID3D10EffectRasterizerVariable;
 241#ifdef __cplusplus
 242interface ID3D10EffectRasterizerVariable;
 243#endif /* __cplusplus */
 244#endif
 245
 246#ifndef __ID3D10EffectRenderTargetViewVariable_FWD_DEFINED__
 247#define __ID3D10EffectRenderTargetViewVariable_FWD_DEFINED__
 248typedef interface ID3D10EffectRenderTargetViewVariable ID3D10EffectRenderTargetViewVariable;
 249#ifdef __cplusplus
 250interface ID3D10EffectRenderTargetViewVariable;
 251#endif /* __cplusplus */
 252#endif
 253
 254#ifndef __ID3D10EffectSamplerVariable_FWD_DEFINED__
 255#define __ID3D10EffectSamplerVariable_FWD_DEFINED__
 256typedef interface ID3D10EffectSamplerVariable ID3D10EffectSamplerVariable;
 257#ifdef __cplusplus
 258interface ID3D10EffectSamplerVariable;
 259#endif /* __cplusplus */
 260#endif
 261
 262#ifndef __ID3D10EffectScalarVariable_FWD_DEFINED__
 263#define __ID3D10EffectScalarVariable_FWD_DEFINED__
 264typedef interface ID3D10EffectScalarVariable ID3D10EffectScalarVariable;
 265#ifdef __cplusplus
 266interface ID3D10EffectScalarVariable;
 267#endif /* __cplusplus */
 268#endif
 269
 270#ifndef __ID3D10EffectShaderVariable_FWD_DEFINED__
 271#define __ID3D10EffectShaderVariable_FWD_DEFINED__
 272typedef interface ID3D10EffectShaderVariable ID3D10EffectShaderVariable;
 273#ifdef __cplusplus
 274interface ID3D10EffectShaderVariable;
 275#endif /* __cplusplus */
 276#endif
 277
 278#ifndef __ID3D10EffectShaderResourceVariable_FWD_DEFINED__
 279#define __ID3D10EffectShaderResourceVariable_FWD_DEFINED__
 280typedef interface ID3D10EffectShaderResourceVariable ID3D10EffectShaderResourceVariable;
 281#ifdef __cplusplus
 282interface ID3D10EffectShaderResourceVariable;
 283#endif /* __cplusplus */
 284#endif
 285
 286#ifndef __ID3D10EffectStringVariable_FWD_DEFINED__
 287#define __ID3D10EffectStringVariable_FWD_DEFINED__
 288typedef interface ID3D10EffectStringVariable ID3D10EffectStringVariable;
 289#ifdef __cplusplus
 290interface ID3D10EffectStringVariable;
 291#endif /* __cplusplus */
 292#endif
 293
 294#ifndef __ID3D10EffectVectorVariable_FWD_DEFINED__
 295#define __ID3D10EffectVectorVariable_FWD_DEFINED__
 296typedef interface ID3D10EffectVectorVariable ID3D10EffectVectorVariable;
 297#ifdef __cplusplus
 298interface ID3D10EffectVectorVariable;
 299#endif /* __cplusplus */
 300#endif
 301
 302#ifndef D3D10_BYTES_FROM_BITS
 303#define D3D10_BYTES_FROM_BITS(x) (((x) + 7) >> 3)
 304#endif
 305#define D3D10_EFFECT_VARIABLE_POOLED (0x1)
 306
 307#define D3D10_EFFECT_VARIABLE_ANNOTATION (0x2)
 308
 309#define D3D10_EFFECT_VARIABLE_EXPLICIT_BIND_POINT (0x4)
 310
 311typedef enum _D3D10_DEVICE_STATE_TYPES {
 312    D3D10_DST_SO_BUFFERS = 1,
 313    D3D10_DST_OM_RENDER_TARGETS = 2,
 314    D3D10_DST_OM_DEPTH_STENCIL_STATE = 3,
 315    D3D10_DST_OM_BLEND_STATE = 4,
 316    D3D10_DST_VS = 5,
 317    D3D10_DST_VS_SAMPLERS = 6,
 318    D3D10_DST_VS_SHADER_RESOURCES = 7,
 319    D3D10_DST_VS_CONSTANT_BUFFERS = 8,
 320    D3D10_DST_GS = 9,
 321    D3D10_DST_GS_SAMPLERS = 10,
 322    D3D10_DST_GS_SHADER_RESOURCES = 11,
 323    D3D10_DST_GS_CONSTANT_BUFFERS = 12,
 324    D3D10_DST_PS = 13,
 325    D3D10_DST_PS_SAMPLERS = 14,
 326    D3D10_DST_PS_SHADER_RESOURCES = 15,
 327    D3D10_DST_PS_CONSTANT_BUFFERS = 16,
 328    D3D10_DST_IA_VERTEX_BUFFERS = 17,
 329    D3D10_DST_IA_INDEX_BUFFER = 18,
 330    D3D10_DST_IA_INPUT_LAYOUT = 19,
 331    D3D10_DST_IA_PRIMITIVE_TOPOLOGY = 20,
 332    D3D10_DST_RS_VIEWPORTS = 21,
 333    D3D10_DST_RS_SCISSOR_RECTS = 22,
 334    D3D10_DST_RS_RASTERIZER_STATE = 23,
 335    D3D10_DST_PREDICATION = 24
 336} D3D10_DEVICE_STATE_TYPES;
 337typedef struct _D3D10_EFFECT_TYPE_DESC {
 338    const char *TypeName;
 339    D3D10_SHADER_VARIABLE_CLASS Class;
 340    D3D10_SHADER_VARIABLE_TYPE Type;
 341    UINT Elements;
 342    UINT Members;
 343    UINT Rows;
 344    UINT Columns;
 345    UINT PackedSize;
 346    UINT UnpackedSize;
 347    UINT Stride;
 348} D3D10_EFFECT_TYPE_DESC;
 349typedef struct _D3D10_EFFECT_VARIABLE_DESC {
 350    const char *Name;
 351    const char *Semantic;
 352    UINT Flags;
 353    UINT Annotations;
 354    UINT BufferOffset;
 355    UINT ExplicitBindPoint;
 356} D3D10_EFFECT_VARIABLE_DESC;
 357typedef struct _D3D10_TECHNIQUE_DESC {
 358    const char *Name;
 359    UINT Passes;
 360    UINT Annotations;
 361} D3D10_TECHNIQUE_DESC;
 362typedef struct _D3D10_STATE_BLOCK_MASK {
 363    BYTE VS;
 364    BYTE VSSamplers[2];
 365    BYTE VSShaderResources[16];
 366    BYTE VSConstantBuffers[2];
 367    BYTE GS;
 368    BYTE GSSamplers[2];
 369    BYTE GSShaderResources[16];
 370    BYTE GSConstantBuffers[2];
 371    BYTE PS;
 372    BYTE PSSamplers[2];
 373    BYTE PSShaderResources[16];
 374    BYTE PSConstantBuffers[2];
 375    BYTE IAVertexBuffers[2];
 376    BYTE IAIndexBuffer;
 377    BYTE IAInputLayout;
 378    BYTE IAPrimitiveTopology;
 379    BYTE OMRenderTargets;
 380    BYTE OMDepthStencilState;
 381    BYTE OMBlendState;
 382    BYTE RSViewports;
 383    BYTE RSScissorRects;
 384    BYTE RSRasterizerState;
 385    BYTE SOBuffers;
 386    BYTE Predication;
 387} D3D10_STATE_BLOCK_MASK;
 388typedef struct _D3D10_EFFECT_DESC {
 389    WINBOOL IsChildEffect;
 390    UINT ConstantBuffers;
 391    UINT SharedConstantBuffers;
 392    UINT GlobalVariables;
 393    UINT SharedGlobalVariables;
 394    UINT Techniques;
 395} D3D10_EFFECT_DESC;
 396typedef struct _D3D10_EFFECT_SHADER_DESC {
 397    const BYTE *pInputSignature;
 398    WINBOOL IsInline;
 399    const BYTE *pBytecode;
 400    UINT BytecodeLength;
 401    const char *SODecl;
 402    UINT NumInputSignatureEntries;
 403    UINT NumOutputSignatureEntries;
 404} D3D10_EFFECT_SHADER_DESC;
 405typedef struct _D3D10_PASS_DESC {
 406    const char *Name;
 407    UINT Annotations;
 408    BYTE *pIAInputSignature;
 409    SIZE_T IAInputSignatureSize;
 410    UINT StencilRef;
 411    UINT SampleMask;
 412    FLOAT BlendFactor[4];
 413} D3D10_PASS_DESC;
 414typedef struct _D3D10_PASS_SHADER_DESC {
 415    ID3D10EffectShaderVariable *pShaderVariable;
 416    UINT ShaderIndex;
 417} D3D10_PASS_SHADER_DESC;
 418#define D3D10_EFFECT_COMPILE_CHILD_EFFECT (0x1)
 419
 420#define D3D10_EFFECT_COMPILE_ALLOW_SLOW_OPS (0x2)
 421
 422#define D3D10_EFFECT_SINGLE_THREADED (0x8)
 423
 424/*****************************************************************************
 425 * ID3D10EffectType interface
 426 */
 427#ifndef __ID3D10EffectType_INTERFACE_DEFINED__
 428#define __ID3D10EffectType_INTERFACE_DEFINED__
 429
 430DEFINE_GUID(IID_ID3D10EffectType, 0x4e9e1ddc, 0xcd9d, 0x4772, 0xa8,0x37, 0x00,0x18,0x0b,0x9b,0x88,0xfd);
 431#if defined(__cplusplus) && !defined(CINTERFACE)
 432MIDL_INTERFACE("4e9e1ddc-cd9d-4772-a837-00180b9b88fd")
 433ID3D10EffectType
 434{
 435
 436    BEGIN_INTERFACE
 437
 438    virtual WINBOOL STDMETHODCALLTYPE IsValid(
 439        ) = 0;
 440
 441    virtual HRESULT STDMETHODCALLTYPE GetDesc(
 442        D3D10_EFFECT_TYPE_DESC *desc) = 0;
 443
 444    virtual ID3D10EffectType * STDMETHODCALLTYPE GetMemberTypeByIndex(
 445        UINT index) = 0;
 446
 447    virtual ID3D10EffectType * STDMETHODCALLTYPE GetMemberTypeByName(
 448        const char *name) = 0;
 449
 450    virtual ID3D10EffectType * STDMETHODCALLTYPE GetMemberTypeBySemantic(
 451        const char *semantic) = 0;
 452
 453    virtual const char * STDMETHODCALLTYPE GetMemberName(
 454        UINT index) = 0;
 455
 456    virtual const char * STDMETHODCALLTYPE GetMemberSemantic(
 457        UINT index) = 0;
 458
 459    END_INTERFACE
 460
 461};
 462#ifdef __CRT_UUID_DECL
 463__CRT_UUID_DECL(ID3D10EffectType, 0x4e9e1ddc, 0xcd9d, 0x4772, 0xa8,0x37, 0x00,0x18,0x0b,0x9b,0x88,0xfd)
 464#endif
 465#else
 466typedef struct ID3D10EffectTypeVtbl {
 467    BEGIN_INTERFACE
 468
 469    /*** ID3D10EffectType methods ***/
 470    WINBOOL (STDMETHODCALLTYPE *IsValid)(
 471        ID3D10EffectType *This);
 472
 473    HRESULT (STDMETHODCALLTYPE *GetDesc)(
 474        ID3D10EffectType *This,
 475        D3D10_EFFECT_TYPE_DESC *desc);
 476
 477    ID3D10EffectType * (STDMETHODCALLTYPE *GetMemberTypeByIndex)(
 478        ID3D10EffectType *This,
 479        UINT index);
 480
 481    ID3D10EffectType * (STDMETHODCALLTYPE *GetMemberTypeByName)(
 482        ID3D10EffectType *This,
 483        const char *name);
 484
 485    ID3D10EffectType * (STDMETHODCALLTYPE *GetMemberTypeBySemantic)(
 486        ID3D10EffectType *This,
 487        const char *semantic);
 488
 489    const char * (STDMETHODCALLTYPE *GetMemberName)(
 490        ID3D10EffectType *This,
 491        UINT index);
 492
 493    const char * (STDMETHODCALLTYPE *GetMemberSemantic)(
 494        ID3D10EffectType *This,
 495        UINT index);
 496
 497    END_INTERFACE
 498} ID3D10EffectTypeVtbl;
 499
 500interface ID3D10EffectType {
 501    CONST_VTBL ID3D10EffectTypeVtbl* lpVtbl;
 502};
 503
 504#ifdef COBJMACROS
 505#ifndef WIDL_C_INLINE_WRAPPERS
 506/*** ID3D10EffectType methods ***/
 507#define ID3D10EffectType_IsValid(This) (This)->lpVtbl->IsValid(This)
 508#define ID3D10EffectType_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
 509#define ID3D10EffectType_GetMemberTypeByIndex(This,index) (This)->lpVtbl->GetMemberTypeByIndex(This,index)
 510#define ID3D10EffectType_GetMemberTypeByName(This,name) (This)->lpVtbl->GetMemberTypeByName(This,name)
 511#define ID3D10EffectType_GetMemberTypeBySemantic(This,semantic) (This)->lpVtbl->GetMemberTypeBySemantic(This,semantic)
 512#define ID3D10EffectType_GetMemberName(This,index) (This)->lpVtbl->GetMemberName(This,index)
 513#define ID3D10EffectType_GetMemberSemantic(This,index) (This)->lpVtbl->GetMemberSemantic(This,index)
 514#else
 515/*** ID3D10EffectType methods ***/
 516static inline WINBOOL ID3D10EffectType_IsValid(ID3D10EffectType* This) {
 517    return This->lpVtbl->IsValid(This);
 518}
 519static inline HRESULT ID3D10EffectType_GetDesc(ID3D10EffectType* This,D3D10_EFFECT_TYPE_DESC *desc) {
 520    return This->lpVtbl->GetDesc(This,desc);
 521}
 522static inline ID3D10EffectType * ID3D10EffectType_GetMemberTypeByIndex(ID3D10EffectType* This,UINT index) {
 523    return This->lpVtbl->GetMemberTypeByIndex(This,index);
 524}
 525static inline ID3D10EffectType * ID3D10EffectType_GetMemberTypeByName(ID3D10EffectType* This,const char *name) {
 526    return This->lpVtbl->GetMemberTypeByName(This,name);
 527}
 528static inline ID3D10EffectType * ID3D10EffectType_GetMemberTypeBySemantic(ID3D10EffectType* This,const char *semantic) {
 529    return This->lpVtbl->GetMemberTypeBySemantic(This,semantic);
 530}
 531static inline const char * ID3D10EffectType_GetMemberName(ID3D10EffectType* This,UINT index) {
 532    return This->lpVtbl->GetMemberName(This,index);
 533}
 534static inline const char * ID3D10EffectType_GetMemberSemantic(ID3D10EffectType* This,UINT index) {
 535    return This->lpVtbl->GetMemberSemantic(This,index);
 536}
 537#endif
 538#endif
 539
 540#endif
 541
 542
 543#endif  /* __ID3D10EffectType_INTERFACE_DEFINED__ */
 544
 545/*****************************************************************************
 546 * ID3D10EffectVariable interface
 547 */
 548#ifndef __ID3D10EffectVariable_INTERFACE_DEFINED__
 549#define __ID3D10EffectVariable_INTERFACE_DEFINED__
 550
 551DEFINE_GUID(IID_ID3D10EffectVariable, 0xae897105, 0x00e6, 0x45bf, 0xbb,0x8e, 0x28,0x1d,0xd6,0xdb,0x8e,0x1b);
 552#if defined(__cplusplus) && !defined(CINTERFACE)
 553MIDL_INTERFACE("ae897105-00e6-45bf-bb8e-281dd6db8e1b")
 554ID3D10EffectVariable
 555{
 556
 557    BEGIN_INTERFACE
 558
 559    virtual WINBOOL STDMETHODCALLTYPE IsValid(
 560        ) = 0;
 561
 562    virtual ID3D10EffectType * STDMETHODCALLTYPE GetType(
 563        ) = 0;
 564
 565    virtual HRESULT STDMETHODCALLTYPE GetDesc(
 566        D3D10_EFFECT_VARIABLE_DESC *desc) = 0;
 567
 568    virtual ID3D10EffectVariable * STDMETHODCALLTYPE GetAnnotationByIndex(
 569        UINT index) = 0;
 570
 571    virtual ID3D10EffectVariable * STDMETHODCALLTYPE GetAnnotationByName(
 572        const char *name) = 0;
 573
 574    virtual ID3D10EffectVariable * STDMETHODCALLTYPE GetMemberByIndex(
 575        UINT index) = 0;
 576
 577    virtual ID3D10EffectVariable * STDMETHODCALLTYPE GetMemberByName(
 578        const char *name) = 0;
 579
 580    virtual ID3D10EffectVariable * STDMETHODCALLTYPE GetMemberBySemantic(
 581        const char *semantic) = 0;
 582
 583    virtual ID3D10EffectVariable * STDMETHODCALLTYPE GetElement(
 584        UINT index) = 0;
 585
 586    virtual ID3D10EffectConstantBuffer * STDMETHODCALLTYPE GetParentConstantBuffer(
 587        ) = 0;
 588
 589    virtual ID3D10EffectScalarVariable * STDMETHODCALLTYPE AsScalar(
 590        ) = 0;
 591
 592    virtual ID3D10EffectVectorVariable * STDMETHODCALLTYPE AsVector(
 593        ) = 0;
 594
 595    virtual ID3D10EffectMatrixVariable * STDMETHODCALLTYPE AsMatrix(
 596        ) = 0;
 597
 598    virtual ID3D10EffectStringVariable * STDMETHODCALLTYPE AsString(
 599        ) = 0;
 600
 601    virtual ID3D10EffectShaderResourceVariable * STDMETHODCALLTYPE AsShaderResource(
 602        ) = 0;
 603
 604    virtual ID3D10EffectRenderTargetViewVariable * STDMETHODCALLTYPE AsRenderTargetView(
 605        ) = 0;
 606
 607    virtual ID3D10EffectDepthStencilViewVariable * STDMETHODCALLTYPE AsDepthStencilView(
 608        ) = 0;
 609
 610    virtual ID3D10EffectConstantBuffer * STDMETHODCALLTYPE AsConstantBuffer(
 611        ) = 0;
 612
 613    virtual ID3D10EffectShaderVariable * STDMETHODCALLTYPE AsShader(
 614        ) = 0;
 615
 616    virtual ID3D10EffectBlendVariable * STDMETHODCALLTYPE AsBlend(
 617        ) = 0;
 618
 619    virtual ID3D10EffectDepthStencilVariable * STDMETHODCALLTYPE AsDepthStencil(
 620        ) = 0;
 621
 622    virtual ID3D10EffectRasterizerVariable * STDMETHODCALLTYPE AsRasterizer(
 623        ) = 0;
 624
 625    virtual ID3D10EffectSamplerVariable * STDMETHODCALLTYPE AsSampler(
 626        ) = 0;
 627
 628    virtual HRESULT STDMETHODCALLTYPE SetRawValue(
 629        void *data,
 630        UINT offset,
 631        UINT count) = 0;
 632
 633    virtual HRESULT STDMETHODCALLTYPE GetRawValue(
 634        void *data,
 635        UINT offset,
 636        UINT count) = 0;
 637
 638    END_INTERFACE
 639
 640};
 641#ifdef __CRT_UUID_DECL
 642__CRT_UUID_DECL(ID3D10EffectVariable, 0xae897105, 0x00e6, 0x45bf, 0xbb,0x8e, 0x28,0x1d,0xd6,0xdb,0x8e,0x1b)
 643#endif
 644#else
 645typedef struct ID3D10EffectVariableVtbl {
 646    BEGIN_INTERFACE
 647
 648    /*** ID3D10EffectVariable methods ***/
 649    WINBOOL (STDMETHODCALLTYPE *IsValid)(
 650        ID3D10EffectVariable *This);
 651
 652    ID3D10EffectType * (STDMETHODCALLTYPE *GetType)(
 653        ID3D10EffectVariable *This);
 654
 655    HRESULT (STDMETHODCALLTYPE *GetDesc)(
 656        ID3D10EffectVariable *This,
 657        D3D10_EFFECT_VARIABLE_DESC *desc);
 658
 659    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByIndex)(
 660        ID3D10EffectVariable *This,
 661        UINT index);
 662
 663    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByName)(
 664        ID3D10EffectVariable *This,
 665        const char *name);
 666
 667    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByIndex)(
 668        ID3D10EffectVariable *This,
 669        UINT index);
 670
 671    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByName)(
 672        ID3D10EffectVariable *This,
 673        const char *name);
 674
 675    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberBySemantic)(
 676        ID3D10EffectVariable *This,
 677        const char *semantic);
 678
 679    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetElement)(
 680        ID3D10EffectVariable *This,
 681        UINT index);
 682
 683    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *GetParentConstantBuffer)(
 684        ID3D10EffectVariable *This);
 685
 686    ID3D10EffectScalarVariable * (STDMETHODCALLTYPE *AsScalar)(
 687        ID3D10EffectVariable *This);
 688
 689    ID3D10EffectVectorVariable * (STDMETHODCALLTYPE *AsVector)(
 690        ID3D10EffectVariable *This);
 691
 692    ID3D10EffectMatrixVariable * (STDMETHODCALLTYPE *AsMatrix)(
 693        ID3D10EffectVariable *This);
 694
 695    ID3D10EffectStringVariable * (STDMETHODCALLTYPE *AsString)(
 696        ID3D10EffectVariable *This);
 697
 698    ID3D10EffectShaderResourceVariable * (STDMETHODCALLTYPE *AsShaderResource)(
 699        ID3D10EffectVariable *This);
 700
 701    ID3D10EffectRenderTargetViewVariable * (STDMETHODCALLTYPE *AsRenderTargetView)(
 702        ID3D10EffectVariable *This);
 703
 704    ID3D10EffectDepthStencilViewVariable * (STDMETHODCALLTYPE *AsDepthStencilView)(
 705        ID3D10EffectVariable *This);
 706
 707    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *AsConstantBuffer)(
 708        ID3D10EffectVariable *This);
 709
 710    ID3D10EffectShaderVariable * (STDMETHODCALLTYPE *AsShader)(
 711        ID3D10EffectVariable *This);
 712
 713    ID3D10EffectBlendVariable * (STDMETHODCALLTYPE *AsBlend)(
 714        ID3D10EffectVariable *This);
 715
 716    ID3D10EffectDepthStencilVariable * (STDMETHODCALLTYPE *AsDepthStencil)(
 717        ID3D10EffectVariable *This);
 718
 719    ID3D10EffectRasterizerVariable * (STDMETHODCALLTYPE *AsRasterizer)(
 720        ID3D10EffectVariable *This);
 721
 722    ID3D10EffectSamplerVariable * (STDMETHODCALLTYPE *AsSampler)(
 723        ID3D10EffectVariable *This);
 724
 725    HRESULT (STDMETHODCALLTYPE *SetRawValue)(
 726        ID3D10EffectVariable *This,
 727        void *data,
 728        UINT offset,
 729        UINT count);
 730
 731    HRESULT (STDMETHODCALLTYPE *GetRawValue)(
 732        ID3D10EffectVariable *This,
 733        void *data,
 734        UINT offset,
 735        UINT count);
 736
 737    END_INTERFACE
 738} ID3D10EffectVariableVtbl;
 739
 740interface ID3D10EffectVariable {
 741    CONST_VTBL ID3D10EffectVariableVtbl* lpVtbl;
 742};
 743
 744#ifdef COBJMACROS
 745#ifndef WIDL_C_INLINE_WRAPPERS
 746/*** ID3D10EffectVariable methods ***/
 747#define ID3D10EffectVariable_IsValid(This) (This)->lpVtbl->IsValid(This)
 748#define ID3D10EffectVariable_GetType(This) (This)->lpVtbl->GetType(This)
 749#define ID3D10EffectVariable_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
 750#define ID3D10EffectVariable_GetAnnotationByIndex(This,index) (This)->lpVtbl->GetAnnotationByIndex(This,index)
 751#define ID3D10EffectVariable_GetAnnotationByName(This,name) (This)->lpVtbl->GetAnnotationByName(This,name)
 752#define ID3D10EffectVariable_GetMemberByIndex(This,index) (This)->lpVtbl->GetMemberByIndex(This,index)
 753#define ID3D10EffectVariable_GetMemberByName(This,name) (This)->lpVtbl->GetMemberByName(This,name)
 754#define ID3D10EffectVariable_GetMemberBySemantic(This,semantic) (This)->lpVtbl->GetMemberBySemantic(This,semantic)
 755#define ID3D10EffectVariable_GetElement(This,index) (This)->lpVtbl->GetElement(This,index)
 756#define ID3D10EffectVariable_GetParentConstantBuffer(This) (This)->lpVtbl->GetParentConstantBuffer(This)
 757#define ID3D10EffectVariable_AsScalar(This) (This)->lpVtbl->AsScalar(This)
 758#define ID3D10EffectVariable_AsVector(This) (This)->lpVtbl->AsVector(This)
 759#define ID3D10EffectVariable_AsMatrix(This) (This)->lpVtbl->AsMatrix(This)
 760#define ID3D10EffectVariable_AsString(This) (This)->lpVtbl->AsString(This)
 761#define ID3D10EffectVariable_AsShaderResource(This) (This)->lpVtbl->AsShaderResource(This)
 762#define ID3D10EffectVariable_AsRenderTargetView(This) (This)->lpVtbl->AsRenderTargetView(This)
 763#define ID3D10EffectVariable_AsDepthStencilView(This) (This)->lpVtbl->AsDepthStencilView(This)
 764#define ID3D10EffectVariable_AsConstantBuffer(This) (This)->lpVtbl->AsConstantBuffer(This)
 765#define ID3D10EffectVariable_AsShader(This) (This)->lpVtbl->AsShader(This)
 766#define ID3D10EffectVariable_AsBlend(This) (This)->lpVtbl->AsBlend(This)
 767#define ID3D10EffectVariable_AsDepthStencil(This) (This)->lpVtbl->AsDepthStencil(This)
 768#define ID3D10EffectVariable_AsRasterizer(This) (This)->lpVtbl->AsRasterizer(This)
 769#define ID3D10EffectVariable_AsSampler(This) (This)->lpVtbl->AsSampler(This)
 770#define ID3D10EffectVariable_SetRawValue(This,data,offset,count) (This)->lpVtbl->SetRawValue(This,data,offset,count)
 771#define ID3D10EffectVariable_GetRawValue(This,data,offset,count) (This)->lpVtbl->GetRawValue(This,data,offset,count)
 772#else
 773/*** ID3D10EffectVariable methods ***/
 774static inline WINBOOL ID3D10EffectVariable_IsValid(ID3D10EffectVariable* This) {
 775    return This->lpVtbl->IsValid(This);
 776}
 777static inline ID3D10EffectType * ID3D10EffectVariable_GetType(ID3D10EffectVariable* This) {
 778    return This->lpVtbl->GetType(This);
 779}
 780static inline HRESULT ID3D10EffectVariable_GetDesc(ID3D10EffectVariable* This,D3D10_EFFECT_VARIABLE_DESC *desc) {
 781    return This->lpVtbl->GetDesc(This,desc);
 782}
 783static inline ID3D10EffectVariable * ID3D10EffectVariable_GetAnnotationByIndex(ID3D10EffectVariable* This,UINT index) {
 784    return This->lpVtbl->GetAnnotationByIndex(This,index);
 785}
 786static inline ID3D10EffectVariable * ID3D10EffectVariable_GetAnnotationByName(ID3D10EffectVariable* This,const char *name) {
 787    return This->lpVtbl->GetAnnotationByName(This,name);
 788}
 789static inline ID3D10EffectVariable * ID3D10EffectVariable_GetMemberByIndex(ID3D10EffectVariable* This,UINT index) {
 790    return This->lpVtbl->GetMemberByIndex(This,index);
 791}
 792static inline ID3D10EffectVariable * ID3D10EffectVariable_GetMemberByName(ID3D10EffectVariable* This,const char *name) {
 793    return This->lpVtbl->GetMemberByName(This,name);
 794}
 795static inline ID3D10EffectVariable * ID3D10EffectVariable_GetMemberBySemantic(ID3D10EffectVariable* This,const char *semantic) {
 796    return This->lpVtbl->GetMemberBySemantic(This,semantic);
 797}
 798static inline ID3D10EffectVariable * ID3D10EffectVariable_GetElement(ID3D10EffectVariable* This,UINT index) {
 799    return This->lpVtbl->GetElement(This,index);
 800}
 801static inline ID3D10EffectConstantBuffer * ID3D10EffectVariable_GetParentConstantBuffer(ID3D10EffectVariable* This) {
 802    return This->lpVtbl->GetParentConstantBuffer(This);
 803}
 804static inline ID3D10EffectScalarVariable * ID3D10EffectVariable_AsScalar(ID3D10EffectVariable* This) {
 805    return This->lpVtbl->AsScalar(This);
 806}
 807static inline ID3D10EffectVectorVariable * ID3D10EffectVariable_AsVector(ID3D10EffectVariable* This) {
 808    return This->lpVtbl->AsVector(This);
 809}
 810static inline ID3D10EffectMatrixVariable * ID3D10EffectVariable_AsMatrix(ID3D10EffectVariable* This) {
 811    return This->lpVtbl->AsMatrix(This);
 812}
 813static inline ID3D10EffectStringVariable * ID3D10EffectVariable_AsString(ID3D10EffectVariable* This) {
 814    return This->lpVtbl->AsString(This);
 815}
 816static inline ID3D10EffectShaderResourceVariable * ID3D10EffectVariable_AsShaderResource(ID3D10EffectVariable* This) {
 817    return This->lpVtbl->AsShaderResource(This);
 818}
 819static inline ID3D10EffectRenderTargetViewVariable * ID3D10EffectVariable_AsRenderTargetView(ID3D10EffectVariable* This) {
 820    return This->lpVtbl->AsRenderTargetView(This);
 821}
 822static inline ID3D10EffectDepthStencilViewVariable * ID3D10EffectVariable_AsDepthStencilView(ID3D10EffectVariable* This) {
 823    return This->lpVtbl->AsDepthStencilView(This);
 824}
 825static inline ID3D10EffectConstantBuffer * ID3D10EffectVariable_AsConstantBuffer(ID3D10EffectVariable* This) {
 826    return This->lpVtbl->AsConstantBuffer(This);
 827}
 828static inline ID3D10EffectShaderVariable * ID3D10EffectVariable_AsShader(ID3D10EffectVariable* This) {
 829    return This->lpVtbl->AsShader(This);
 830}
 831static inline ID3D10EffectBlendVariable * ID3D10EffectVariable_AsBlend(ID3D10EffectVariable* This) {
 832    return This->lpVtbl->AsBlend(This);
 833}
 834static inline ID3D10EffectDepthStencilVariable * ID3D10EffectVariable_AsDepthStencil(ID3D10EffectVariable* This) {
 835    return This->lpVtbl->AsDepthStencil(This);
 836}
 837static inline ID3D10EffectRasterizerVariable * ID3D10EffectVariable_AsRasterizer(ID3D10EffectVariable* This) {
 838    return This->lpVtbl->AsRasterizer(This);
 839}
 840static inline ID3D10EffectSamplerVariable * ID3D10EffectVariable_AsSampler(ID3D10EffectVariable* This) {
 841    return This->lpVtbl->AsSampler(This);
 842}
 843static inline HRESULT ID3D10EffectVariable_SetRawValue(ID3D10EffectVariable* This,void *data,UINT offset,UINT count) {
 844    return This->lpVtbl->SetRawValue(This,data,offset,count);
 845}
 846static inline HRESULT ID3D10EffectVariable_GetRawValue(ID3D10EffectVariable* This,void *data,UINT offset,UINT count) {
 847    return This->lpVtbl->GetRawValue(This,data,offset,count);
 848}
 849#endif
 850#endif
 851
 852#endif
 853
 854
 855#endif  /* __ID3D10EffectVariable_INTERFACE_DEFINED__ */
 856
 857/*****************************************************************************
 858 * ID3D10EffectConstantBuffer interface
 859 */
 860#ifndef __ID3D10EffectConstantBuffer_INTERFACE_DEFINED__
 861#define __ID3D10EffectConstantBuffer_INTERFACE_DEFINED__
 862
 863DEFINE_GUID(IID_ID3D10EffectConstantBuffer, 0x56648f4d, 0xcc8b, 0x4444, 0xa5,0xad, 0xb5,0xa3,0xd7,0x6e,0x91,0xb3);
 864#if defined(__cplusplus) && !defined(CINTERFACE)
 865MIDL_INTERFACE("56648f4d-cc8b-4444-a5ad-b5a3d76e91b3")
 866ID3D10EffectConstantBuffer : public ID3D10EffectVariable
 867{
 868    virtual HRESULT STDMETHODCALLTYPE SetConstantBuffer(
 869        ID3D10Buffer *buffer) = 0;
 870
 871    virtual HRESULT STDMETHODCALLTYPE GetConstantBuffer(
 872        ID3D10Buffer **buffer) = 0;
 873
 874    virtual HRESULT STDMETHODCALLTYPE SetTextureBuffer(
 875        ID3D10ShaderResourceView *view) = 0;
 876
 877    virtual HRESULT STDMETHODCALLTYPE GetTextureBuffer(
 878        ID3D10ShaderResourceView **view) = 0;
 879
 880};
 881#ifdef __CRT_UUID_DECL
 882__CRT_UUID_DECL(ID3D10EffectConstantBuffer, 0x56648f4d, 0xcc8b, 0x4444, 0xa5,0xad, 0xb5,0xa3,0xd7,0x6e,0x91,0xb3)
 883#endif
 884#else
 885typedef struct ID3D10EffectConstantBufferVtbl {
 886    BEGIN_INTERFACE
 887
 888    /*** ID3D10EffectVariable methods ***/
 889    WINBOOL (STDMETHODCALLTYPE *IsValid)(
 890        ID3D10EffectConstantBuffer *This);
 891
 892    ID3D10EffectType * (STDMETHODCALLTYPE *GetType)(
 893        ID3D10EffectConstantBuffer *This);
 894
 895    HRESULT (STDMETHODCALLTYPE *GetDesc)(
 896        ID3D10EffectConstantBuffer *This,
 897        D3D10_EFFECT_VARIABLE_DESC *desc);
 898
 899    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByIndex)(
 900        ID3D10EffectConstantBuffer *This,
 901        UINT index);
 902
 903    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByName)(
 904        ID3D10EffectConstantBuffer *This,
 905        const char *name);
 906
 907    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByIndex)(
 908        ID3D10EffectConstantBuffer *This,
 909        UINT index);
 910
 911    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByName)(
 912        ID3D10EffectConstantBuffer *This,
 913        const char *name);
 914
 915    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberBySemantic)(
 916        ID3D10EffectConstantBuffer *This,
 917        const char *semantic);
 918
 919    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetElement)(
 920        ID3D10EffectConstantBuffer *This,
 921        UINT index);
 922
 923    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *GetParentConstantBuffer)(
 924        ID3D10EffectConstantBuffer *This);
 925
 926    ID3D10EffectScalarVariable * (STDMETHODCALLTYPE *AsScalar)(
 927        ID3D10EffectConstantBuffer *This);
 928
 929    ID3D10EffectVectorVariable * (STDMETHODCALLTYPE *AsVector)(
 930        ID3D10EffectConstantBuffer *This);
 931
 932    ID3D10EffectMatrixVariable * (STDMETHODCALLTYPE *AsMatrix)(
 933        ID3D10EffectConstantBuffer *This);
 934
 935    ID3D10EffectStringVariable * (STDMETHODCALLTYPE *AsString)(
 936        ID3D10EffectConstantBuffer *This);
 937
 938    ID3D10EffectShaderResourceVariable * (STDMETHODCALLTYPE *AsShaderResource)(
 939        ID3D10EffectConstantBuffer *This);
 940
 941    ID3D10EffectRenderTargetViewVariable * (STDMETHODCALLTYPE *AsRenderTargetView)(
 942        ID3D10EffectConstantBuffer *This);
 943
 944    ID3D10EffectDepthStencilViewVariable * (STDMETHODCALLTYPE *AsDepthStencilView)(
 945        ID3D10EffectConstantBuffer *This);
 946
 947    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *AsConstantBuffer)(
 948        ID3D10EffectConstantBuffer *This);
 949
 950    ID3D10EffectShaderVariable * (STDMETHODCALLTYPE *AsShader)(
 951        ID3D10EffectConstantBuffer *This);
 952
 953    ID3D10EffectBlendVariable * (STDMETHODCALLTYPE *AsBlend)(
 954        ID3D10EffectConstantBuffer *This);
 955
 956    ID3D10EffectDepthStencilVariable * (STDMETHODCALLTYPE *AsDepthStencil)(
 957        ID3D10EffectConstantBuffer *This);
 958
 959    ID3D10EffectRasterizerVariable * (STDMETHODCALLTYPE *AsRasterizer)(
 960        ID3D10EffectConstantBuffer *This);
 961
 962    ID3D10EffectSamplerVariable * (STDMETHODCALLTYPE *AsSampler)(
 963        ID3D10EffectConstantBuffer *This);
 964
 965    HRESULT (STDMETHODCALLTYPE *SetRawValue)(
 966        ID3D10EffectConstantBuffer *This,
 967        void *data,
 968        UINT offset,
 969        UINT count);
 970
 971    HRESULT (STDMETHODCALLTYPE *GetRawValue)(
 972        ID3D10EffectConstantBuffer *This,
 973        void *data,
 974        UINT offset,
 975        UINT count);
 976
 977    /*** ID3D10EffectConstantBuffer methods ***/
 978    HRESULT (STDMETHODCALLTYPE *SetConstantBuffer)(
 979        ID3D10EffectConstantBuffer *This,
 980        ID3D10Buffer *buffer);
 981
 982    HRESULT (STDMETHODCALLTYPE *GetConstantBuffer)(
 983        ID3D10EffectConstantBuffer *This,
 984        ID3D10Buffer **buffer);
 985
 986    HRESULT (STDMETHODCALLTYPE *SetTextureBuffer)(
 987        ID3D10EffectConstantBuffer *This,
 988        ID3D10ShaderResourceView *view);
 989
 990    HRESULT (STDMETHODCALLTYPE *GetTextureBuffer)(
 991        ID3D10EffectConstantBuffer *This,
 992        ID3D10ShaderResourceView **view);
 993
 994    END_INTERFACE
 995} ID3D10EffectConstantBufferVtbl;
 996
 997interface ID3D10EffectConstantBuffer {
 998    CONST_VTBL ID3D10EffectConstantBufferVtbl* lpVtbl;
 999};
1000
1001#ifdef COBJMACROS
1002#ifndef WIDL_C_INLINE_WRAPPERS
1003/*** ID3D10EffectVariable methods ***/
1004#define ID3D10EffectConstantBuffer_IsValid(This) (This)->lpVtbl->IsValid(This)
1005#define ID3D10EffectConstantBuffer_GetType(This) (This)->lpVtbl->GetType(This)
1006#define ID3D10EffectConstantBuffer_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
1007#define ID3D10EffectConstantBuffer_GetAnnotationByIndex(This,index) (This)->lpVtbl->GetAnnotationByIndex(This,index)
1008#define ID3D10EffectConstantBuffer_GetAnnotationByName(This,name) (This)->lpVtbl->GetAnnotationByName(This,name)
1009#define ID3D10EffectConstantBuffer_GetMemberByIndex(This,index) (This)->lpVtbl->GetMemberByIndex(This,index)
1010#define ID3D10EffectConstantBuffer_GetMemberByName(This,name) (This)->lpVtbl->GetMemberByName(This,name)
1011#define ID3D10EffectConstantBuffer_GetMemberBySemantic(This,semantic) (This)->lpVtbl->GetMemberBySemantic(This,semantic)
1012#define ID3D10EffectConstantBuffer_GetElement(This,index) (This)->lpVtbl->GetElement(This,index)
1013#define ID3D10EffectConstantBuffer_GetParentConstantBuffer(This) (This)->lpVtbl->GetParentConstantBuffer(This)
1014#define ID3D10EffectConstantBuffer_AsScalar(This) (This)->lpVtbl->AsScalar(This)
1015#define ID3D10EffectConstantBuffer_AsVector(This) (This)->lpVtbl->AsVector(This)
1016#define ID3D10EffectConstantBuffer_AsMatrix(This) (This)->lpVtbl->AsMatrix(This)
1017#define ID3D10EffectConstantBuffer_AsString(This) (This)->lpVtbl->AsString(This)
1018#define ID3D10EffectConstantBuffer_AsShaderResource(This) (This)->lpVtbl->AsShaderResource(This)
1019#define ID3D10EffectConstantBuffer_AsRenderTargetView(This) (This)->lpVtbl->AsRenderTargetView(This)
1020#define ID3D10EffectConstantBuffer_AsDepthStencilView(This) (This)->lpVtbl->AsDepthStencilView(This)
1021#define ID3D10EffectConstantBuffer_AsConstantBuffer(This) (This)->lpVtbl->AsConstantBuffer(This)
1022#define ID3D10EffectConstantBuffer_AsShader(This) (This)->lpVtbl->AsShader(This)
1023#define ID3D10EffectConstantBuffer_AsBlend(This) (This)->lpVtbl->AsBlend(This)
1024#define ID3D10EffectConstantBuffer_AsDepthStencil(This) (This)->lpVtbl->AsDepthStencil(This)
1025#define ID3D10EffectConstantBuffer_AsRasterizer(This) (This)->lpVtbl->AsRasterizer(This)
1026#define ID3D10EffectConstantBuffer_AsSampler(This) (This)->lpVtbl->AsSampler(This)
1027#define ID3D10EffectConstantBuffer_SetRawValue(This,data,offset,count) (This)->lpVtbl->SetRawValue(This,data,offset,count)
1028#define ID3D10EffectConstantBuffer_GetRawValue(This,data,offset,count) (This)->lpVtbl->GetRawValue(This,data,offset,count)
1029/*** ID3D10EffectConstantBuffer methods ***/
1030#define ID3D10EffectConstantBuffer_SetConstantBuffer(This,buffer) (This)->lpVtbl->SetConstantBuffer(This,buffer)
1031#define ID3D10EffectConstantBuffer_GetConstantBuffer(This,buffer) (This)->lpVtbl->GetConstantBuffer(This,buffer)
1032#define ID3D10EffectConstantBuffer_SetTextureBuffer(This,view) (This)->lpVtbl->SetTextureBuffer(This,view)
1033#define ID3D10EffectConstantBuffer_GetTextureBuffer(This,view) (This)->lpVtbl->GetTextureBuffer(This,view)
1034#else
1035/*** ID3D10EffectVariable methods ***/
1036static inline WINBOOL ID3D10EffectConstantBuffer_IsValid(ID3D10EffectConstantBuffer* This) {
1037    return This->lpVtbl->IsValid(This);
1038}
1039static inline ID3D10EffectType * ID3D10EffectConstantBuffer_GetType(ID3D10EffectConstantBuffer* This) {
1040    return This->lpVtbl->GetType(This);
1041}
1042static inline HRESULT ID3D10EffectConstantBuffer_GetDesc(ID3D10EffectConstantBuffer* This,D3D10_EFFECT_VARIABLE_DESC *desc) {
1043    return This->lpVtbl->GetDesc(This,desc);
1044}
1045static inline ID3D10EffectVariable * ID3D10EffectConstantBuffer_GetAnnotationByIndex(ID3D10EffectConstantBuffer* This,UINT index) {
1046    return This->lpVtbl->GetAnnotationByIndex(This,index);
1047}
1048static inline ID3D10EffectVariable * ID3D10EffectConstantBuffer_GetAnnotationByName(ID3D10EffectConstantBuffer* This,const char *name) {
1049    return This->lpVtbl->GetAnnotationByName(This,name);
1050}
1051static inline ID3D10EffectVariable * ID3D10EffectConstantBuffer_GetMemberByIndex(ID3D10EffectConstantBuffer* This,UINT index) {
1052    return This->lpVtbl->GetMemberByIndex(This,index);
1053}
1054static inline ID3D10EffectVariable * ID3D10EffectConstantBuffer_GetMemberByName(ID3D10EffectConstantBuffer* This,const char *name) {
1055    return This->lpVtbl->GetMemberByName(This,name);
1056}
1057static inline ID3D10EffectVariable * ID3D10EffectConstantBuffer_GetMemberBySemantic(ID3D10EffectConstantBuffer* This,const char *semantic) {
1058    return This->lpVtbl->GetMemberBySemantic(This,semantic);
1059}
1060static inline ID3D10EffectVariable * ID3D10EffectConstantBuffer_GetElement(ID3D10EffectConstantBuffer* This,UINT index) {
1061    return This->lpVtbl->GetElement(This,index);
1062}
1063static inline ID3D10EffectConstantBuffer * ID3D10EffectConstantBuffer_GetParentConstantBuffer(ID3D10EffectConstantBuffer* This) {
1064    return This->lpVtbl->GetParentConstantBuffer(This);
1065}
1066static inline ID3D10EffectScalarVariable * ID3D10EffectConstantBuffer_AsScalar(ID3D10EffectConstantBuffer* This) {
1067    return This->lpVtbl->AsScalar(This);
1068}
1069static inline ID3D10EffectVectorVariable * ID3D10EffectConstantBuffer_AsVector(ID3D10EffectConstantBuffer* This) {
1070    return This->lpVtbl->AsVector(This);
1071}
1072static inline ID3D10EffectMatrixVariable * ID3D10EffectConstantBuffer_AsMatrix(ID3D10EffectConstantBuffer* This) {
1073    return This->lpVtbl->AsMatrix(This);
1074}
1075static inline ID3D10EffectStringVariable * ID3D10EffectConstantBuffer_AsString(ID3D10EffectConstantBuffer* This) {
1076    return This->lpVtbl->AsString(This);
1077}
1078static inline ID3D10EffectShaderResourceVariable * ID3D10EffectConstantBuffer_AsShaderResource(ID3D10EffectConstantBuffer* This) {
1079    return This->lpVtbl->AsShaderResource(This);
1080}
1081static inline ID3D10EffectRenderTargetViewVariable * ID3D10EffectConstantBuffer_AsRenderTargetView(ID3D10EffectConstantBuffer* This) {
1082    return This->lpVtbl->AsRenderTargetView(This);
1083}
1084static inline ID3D10EffectDepthStencilViewVariable * ID3D10EffectConstantBuffer_AsDepthStencilView(ID3D10EffectConstantBuffer* This) {
1085    return This->lpVtbl->AsDepthStencilView(This);
1086}
1087static inline ID3D10EffectConstantBuffer * ID3D10EffectConstantBuffer_AsConstantBuffer(ID3D10EffectConstantBuffer* This) {
1088    return This->lpVtbl->AsConstantBuffer(This);
1089}
1090static inline ID3D10EffectShaderVariable * ID3D10EffectConstantBuffer_AsShader(ID3D10EffectConstantBuffer* This) {
1091    return This->lpVtbl->AsShader(This);
1092}
1093static inline ID3D10EffectBlendVariable * ID3D10EffectConstantBuffer_AsBlend(ID3D10EffectConstantBuffer* This) {
1094    return This->lpVtbl->AsBlend(This);
1095}
1096static inline ID3D10EffectDepthStencilVariable * ID3D10EffectConstantBuffer_AsDepthStencil(ID3D10EffectConstantBuffer* This) {
1097    return This->lpVtbl->AsDepthStencil(This);
1098}
1099static inline ID3D10EffectRasterizerVariable * ID3D10EffectConstantBuffer_AsRasterizer(ID3D10EffectConstantBuffer* This) {
1100    return This->lpVtbl->AsRasterizer(This);
1101}
1102static inline ID3D10EffectSamplerVariable * ID3D10EffectConstantBuffer_AsSampler(ID3D10EffectConstantBuffer* This) {
1103    return This->lpVtbl->AsSampler(This);
1104}
1105static inline HRESULT ID3D10EffectConstantBuffer_SetRawValue(ID3D10EffectConstantBuffer* This,void *data,UINT offset,UINT count) {
1106    return This->lpVtbl->SetRawValue(This,data,offset,count);
1107}
1108static inline HRESULT ID3D10EffectConstantBuffer_GetRawValue(ID3D10EffectConstantBuffer* This,void *data,UINT offset,UINT count) {
1109    return This->lpVtbl->GetRawValue(This,data,offset,count);
1110}
1111/*** ID3D10EffectConstantBuffer methods ***/
1112static inline HRESULT ID3D10EffectConstantBuffer_SetConstantBuffer(ID3D10EffectConstantBuffer* This,ID3D10Buffer *buffer) {
1113    return This->lpVtbl->SetConstantBuffer(This,buffer);
1114}
1115static inline HRESULT ID3D10EffectConstantBuffer_GetConstantBuffer(ID3D10EffectConstantBuffer* This,ID3D10Buffer **buffer) {
1116    return This->lpVtbl->GetConstantBuffer(This,buffer);
1117}
1118static inline HRESULT ID3D10EffectConstantBuffer_SetTextureBuffer(ID3D10EffectConstantBuffer* This,ID3D10ShaderResourceView *view) {
1119    return This->lpVtbl->SetTextureBuffer(This,view);
1120}
1121static inline HRESULT ID3D10EffectConstantBuffer_GetTextureBuffer(ID3D10EffectConstantBuffer* This,ID3D10ShaderResourceView **view) {
1122    return This->lpVtbl->GetTextureBuffer(This,view);
1123}
1124#endif
1125#endif
1126
1127#endif
1128
1129
1130#endif  /* __ID3D10EffectConstantBuffer_INTERFACE_DEFINED__ */
1131
1132/*****************************************************************************
1133 * ID3D10EffectScalarVariable interface
1134 */
1135#ifndef __ID3D10EffectScalarVariable_INTERFACE_DEFINED__
1136#define __ID3D10EffectScalarVariable_INTERFACE_DEFINED__
1137
1138DEFINE_GUID(IID_ID3D10EffectScalarVariable, 0x00e48f7b, 0xd2c8, 0x49e8, 0xa8,0x6c, 0x02,0x2d,0xee,0x53,0x43,0x1f);
1139#if defined(__cplusplus) && !defined(CINTERFACE)
1140MIDL_INTERFACE("00e48f7b-d2c8-49e8-a86c-022dee53431f")
1141ID3D10EffectScalarVariable : public ID3D10EffectVariable
1142{
1143    virtual HRESULT STDMETHODCALLTYPE SetFloat(
1144        float value) = 0;
1145
1146    virtual HRESULT STDMETHODCALLTYPE GetFloat(
1147        float *value) = 0;
1148
1149    virtual HRESULT STDMETHODCALLTYPE SetFloatArray(
1150        float *values,
1151        UINT offset,
1152        UINT count) = 0;
1153
1154    virtual HRESULT STDMETHODCALLTYPE GetFloatArray(
1155        float *values,
1156        UINT offset,
1157        UINT count) = 0;
1158
1159    virtual HRESULT STDMETHODCALLTYPE SetInt(
1160        int value) = 0;
1161
1162    virtual HRESULT STDMETHODCALLTYPE GetInt(
1163        int *value) = 0;
1164
1165    virtual HRESULT STDMETHODCALLTYPE SetIntArray(
1166        int *values,
1167        UINT offset,
1168        UINT count) = 0;
1169
1170    virtual HRESULT STDMETHODCALLTYPE GetIntArray(
1171        int *values,
1172        UINT offset,
1173        UINT count) = 0;
1174
1175    virtual HRESULT STDMETHODCALLTYPE SetBool(
1176        WINBOOL value) = 0;
1177
1178    virtual HRESULT STDMETHODCALLTYPE GetBool(
1179        WINBOOL *value) = 0;
1180
1181    virtual HRESULT STDMETHODCALLTYPE SetBoolArray(
1182        WINBOOL *values,
1183        UINT offset,
1184        UINT count) = 0;
1185
1186    virtual HRESULT STDMETHODCALLTYPE GetBoolArray(
1187        WINBOOL *values,
1188        UINT offset,
1189        UINT count) = 0;
1190
1191};
1192#ifdef __CRT_UUID_DECL
1193__CRT_UUID_DECL(ID3D10EffectScalarVariable, 0x00e48f7b, 0xd2c8, 0x49e8, 0xa8,0x6c, 0x02,0x2d,0xee,0x53,0x43,0x1f)
1194#endif
1195#else
1196typedef struct ID3D10EffectScalarVariableVtbl {
1197    BEGIN_INTERFACE
1198
1199    /*** ID3D10EffectVariable methods ***/
1200    WINBOOL (STDMETHODCALLTYPE *IsValid)(
1201        ID3D10EffectScalarVariable *This);
1202
1203    ID3D10EffectType * (STDMETHODCALLTYPE *GetType)(
1204        ID3D10EffectScalarVariable *This);
1205
1206    HRESULT (STDMETHODCALLTYPE *GetDesc)(
1207        ID3D10EffectScalarVariable *This,
1208        D3D10_EFFECT_VARIABLE_DESC *desc);
1209
1210    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByIndex)(
1211        ID3D10EffectScalarVariable *This,
1212        UINT index);
1213
1214    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByName)(
1215        ID3D10EffectScalarVariable *This,
1216        const char *name);
1217
1218    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByIndex)(
1219        ID3D10EffectScalarVariable *This,
1220        UINT index);
1221
1222    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByName)(
1223        ID3D10EffectScalarVariable *This,
1224        const char *name);
1225
1226    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberBySemantic)(
1227        ID3D10EffectScalarVariable *This,
1228        const char *semantic);
1229
1230    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetElement)(
1231        ID3D10EffectScalarVariable *This,
1232        UINT index);
1233
1234    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *GetParentConstantBuffer)(
1235        ID3D10EffectScalarVariable *This);
1236
1237    ID3D10EffectScalarVariable * (STDMETHODCALLTYPE *AsScalar)(
1238        ID3D10EffectScalarVariable *This);
1239
1240    ID3D10EffectVectorVariable * (STDMETHODCALLTYPE *AsVector)(
1241        ID3D10EffectScalarVariable *This);
1242
1243    ID3D10EffectMatrixVariable * (STDMETHODCALLTYPE *AsMatrix)(
1244        ID3D10EffectScalarVariable *This);
1245
1246    ID3D10EffectStringVariable * (STDMETHODCALLTYPE *AsString)(
1247        ID3D10EffectScalarVariable *This);
1248
1249    ID3D10EffectShaderResourceVariable * (STDMETHODCALLTYPE *AsShaderResource)(
1250        ID3D10EffectScalarVariable *This);
1251
1252    ID3D10EffectRenderTargetViewVariable * (STDMETHODCALLTYPE *AsRenderTargetView)(
1253        ID3D10EffectScalarVariable *This);
1254
1255    ID3D10EffectDepthStencilViewVariable * (STDMETHODCALLTYPE *AsDepthStencilView)(
1256        ID3D10EffectScalarVariable *This);
1257
1258    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *AsConstantBuffer)(
1259        ID3D10EffectScalarVariable *This);
1260
1261    ID3D10EffectShaderVariable * (STDMETHODCALLTYPE *AsShader)(
1262        ID3D10EffectScalarVariable *This);
1263
1264    ID3D10EffectBlendVariable * (STDMETHODCALLTYPE *AsBlend)(
1265        ID3D10EffectScalarVariable *This);
1266
1267    ID3D10EffectDepthStencilVariable * (STDMETHODCALLTYPE *AsDepthStencil)(
1268        ID3D10EffectScalarVariable *This);
1269
1270    ID3D10EffectRasterizerVariable * (STDMETHODCALLTYPE *AsRasterizer)(
1271        ID3D10EffectScalarVariable *This);
1272
1273    ID3D10EffectSamplerVariable * (STDMETHODCALLTYPE *AsSampler)(
1274        ID3D10EffectScalarVariable *This);
1275
1276    HRESULT (STDMETHODCALLTYPE *SetRawValue)(
1277        ID3D10EffectScalarVariable *This,
1278        void *data,
1279        UINT offset,
1280        UINT count);
1281
1282    HRESULT (STDMETHODCALLTYPE *GetRawValue)(
1283        ID3D10EffectScalarVariable *This,
1284        void *data,
1285        UINT offset,
1286        UINT count);
1287
1288    /*** ID3D10EffectScalarVariable methods ***/
1289    HRESULT (STDMETHODCALLTYPE *SetFloat)(
1290        ID3D10EffectScalarVariable *This,
1291        float value);
1292
1293    HRESULT (STDMETHODCALLTYPE *GetFloat)(
1294        ID3D10EffectScalarVariable *This,
1295        float *value);
1296
1297    HRESULT (STDMETHODCALLTYPE *SetFloatArray)(
1298        ID3D10EffectScalarVariable *This,
1299        float *values,
1300        UINT offset,
1301        UINT count);
1302
1303    HRESULT (STDMETHODCALLTYPE *GetFloatArray)(
1304        ID3D10EffectScalarVariable *This,
1305        float *values,
1306        UINT offset,
1307        UINT count);
1308
1309    HRESULT (STDMETHODCALLTYPE *SetInt)(
1310        ID3D10EffectScalarVariable *This,
1311        int value);
1312
1313    HRESULT (STDMETHODCALLTYPE *GetInt)(
1314        ID3D10EffectScalarVariable *This,
1315        int *value);
1316
1317    HRESULT (STDMETHODCALLTYPE *SetIntArray)(
1318        ID3D10EffectScalarVariable *This,
1319        int *values,
1320        UINT offset,
1321        UINT count);
1322
1323    HRESULT (STDMETHODCALLTYPE *GetIntArray)(
1324        ID3D10EffectScalarVariable *This,
1325        int *values,
1326        UINT offset,
1327        UINT count);
1328
1329    HRESULT (STDMETHODCALLTYPE *SetBool)(
1330        ID3D10EffectScalarVariable *This,
1331        WINBOOL value);
1332
1333    HRESULT (STDMETHODCALLTYPE *GetBool)(
1334        ID3D10EffectScalarVariable *This,
1335        WINBOOL *value);
1336
1337    HRESULT (STDMETHODCALLTYPE *SetBoolArray)(
1338        ID3D10EffectScalarVariable *This,
1339        WINBOOL *values,
1340        UINT offset,
1341        UINT count);
1342
1343    HRESULT (STDMETHODCALLTYPE *GetBoolArray)(
1344        ID3D10EffectScalarVariable *This,
1345        WINBOOL *values,
1346        UINT offset,
1347        UINT count);
1348
1349    END_INTERFACE
1350} ID3D10EffectScalarVariableVtbl;
1351
1352interface ID3D10EffectScalarVariable {
1353    CONST_VTBL ID3D10EffectScalarVariableVtbl* lpVtbl;
1354};
1355
1356#ifdef COBJMACROS
1357#ifndef WIDL_C_INLINE_WRAPPERS
1358/*** ID3D10EffectVariable methods ***/
1359#define ID3D10EffectScalarVariable_IsValid(This) (This)->lpVtbl->IsValid(This)
1360#define ID3D10EffectScalarVariable_GetType(This) (This)->lpVtbl->GetType(This)
1361#define ID3D10EffectScalarVariable_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
1362#define ID3D10EffectScalarVariable_GetAnnotationByIndex(This,index) (This)->lpVtbl->GetAnnotationByIndex(This,index)
1363#define ID3D10EffectScalarVariable_GetAnnotationByName(This,name) (This)->lpVtbl->GetAnnotationByName(This,name)
1364#define ID3D10EffectScalarVariable_GetMemberByIndex(This,index) (This)->lpVtbl->GetMemberByIndex(This,index)
1365#define ID3D10EffectScalarVariable_GetMemberByName(This,name) (This)->lpVtbl->GetMemberByName(This,name)
1366#define ID3D10EffectScalarVariable_GetMemberBySemantic(This,semantic) (This)->lpVtbl->GetMemberBySemantic(This,semantic)
1367#define ID3D10EffectScalarVariable_GetElement(This,index) (This)->lpVtbl->GetElement(This,index)
1368#define ID3D10EffectScalarVariable_GetParentConstantBuffer(This) (This)->lpVtbl->GetParentConstantBuffer(This)
1369#define ID3D10EffectScalarVariable_AsScalar(This) (This)->lpVtbl->AsScalar(This)
1370#define ID3D10EffectScalarVariable_AsVector(This) (This)->lpVtbl->AsVector(This)
1371#define ID3D10EffectScalarVariable_AsMatrix(This) (This)->lpVtbl->AsMatrix(This)
1372#define ID3D10EffectScalarVariable_AsString(This) (This)->lpVtbl->AsString(This)
1373#define ID3D10EffectScalarVariable_AsShaderResource(This) (This)->lpVtbl->AsShaderResource(This)
1374#define ID3D10EffectScalarVariable_AsRenderTargetView(This) (This)->lpVtbl->AsRenderTargetView(This)
1375#define ID3D10EffectScalarVariable_AsDepthStencilView(This) (This)->lpVtbl->AsDepthStencilView(This)
1376#define ID3D10EffectScalarVariable_AsConstantBuffer(This) (This)->lpVtbl->AsConstantBuffer(This)
1377#define ID3D10EffectScalarVariable_AsShader(This) (This)->lpVtbl->AsShader(This)
1378#define ID3D10EffectScalarVariable_AsBlend(This) (This)->lpVtbl->AsBlend(This)
1379#define ID3D10EffectScalarVariable_AsDepthStencil(This) (This)->lpVtbl->AsDepthStencil(This)
1380#define ID3D10EffectScalarVariable_AsRasterizer(This) (This)->lpVtbl->AsRasterizer(This)
1381#define ID3D10EffectScalarVariable_AsSampler(This) (This)->lpVtbl->AsSampler(This)
1382#define ID3D10EffectScalarVariable_SetRawValue(This,data,offset,count) (This)->lpVtbl->SetRawValue(This,data,offset,count)
1383#define ID3D10EffectScalarVariable_GetRawValue(This,data,offset,count) (This)->lpVtbl->GetRawValue(This,data,offset,count)
1384/*** ID3D10EffectScalarVariable methods ***/
1385#define ID3D10EffectScalarVariable_SetFloat(This,value) (This)->lpVtbl->SetFloat(This,value)
1386#define ID3D10EffectScalarVariable_GetFloat(This,value) (This)->lpVtbl->GetFloat(This,value)
1387#define ID3D10EffectScalarVariable_SetFloatArray(This,values,offset,count) (This)->lpVtbl->SetFloatArray(This,values,offset,count)
1388#define ID3D10EffectScalarVariable_GetFloatArray(This,values,offset,count) (This)->lpVtbl->GetFloatArray(This,values,offset,count)
1389#define ID3D10EffectScalarVariable_SetInt(This,value) (This)->lpVtbl->SetInt(This,value)
1390#define ID3D10EffectScalarVariable_GetInt(This,value) (This)->lpVtbl->GetInt(This,value)
1391#define ID3D10EffectScalarVariable_SetIntArray(This,values,offset,count) (This)->lpVtbl->SetIntArray(This,values,offset,count)
1392#define ID3D10EffectScalarVariable_GetIntArray(This,values,offset,count) (This)->lpVtbl->GetIntArray(This,values,offset,count)
1393#define ID3D10EffectScalarVariable_SetBool(This,value) (This)->lpVtbl->SetBool(This,value)
1394#define ID3D10EffectScalarVariable_GetBool(This,value) (This)->lpVtbl->GetBool(This,value)
1395#define ID3D10EffectScalarVariable_SetBoolArray(This,values,offset,count) (This)->lpVtbl->SetBoolArray(This,values,offset,count)
1396#define ID3D10EffectScalarVariable_GetBoolArray(This,values,offset,count) (This)->lpVtbl->GetBoolArray(This,values,offset,count)
1397#else
1398/*** ID3D10EffectVariable methods ***/
1399static inline WINBOOL ID3D10EffectScalarVariable_IsValid(ID3D10EffectScalarVariable* This) {
1400    return This->lpVtbl->IsValid(This);
1401}
1402static inline ID3D10EffectType * ID3D10EffectScalarVariable_GetType(ID3D10EffectScalarVariable* This) {
1403    return This->lpVtbl->GetType(This);
1404}
1405static inline HRESULT ID3D10EffectScalarVariable_GetDesc(ID3D10EffectScalarVariable* This,D3D10_EFFECT_VARIABLE_DESC *desc) {
1406    return This->lpVtbl->GetDesc(This,desc);
1407}
1408static inline ID3D10EffectVariable * ID3D10EffectScalarVariable_GetAnnotationByIndex(ID3D10EffectScalarVariable* This,UINT index) {
1409    return This->lpVtbl->GetAnnotationByIndex(This,index);
1410}
1411static inline ID3D10EffectVariable * ID3D10EffectScalarVariable_GetAnnotationByName(ID3D10EffectScalarVariable* This,const char *name) {
1412    return This->lpVtbl->GetAnnotationByName(This,name);
1413}
1414static inline ID3D10EffectVariable * ID3D10EffectScalarVariable_GetMemberByIndex(ID3D10EffectScalarVariable* This,UINT index) {
1415    return This->lpVtbl->GetMemberByIndex(This,index);
1416}
1417static inline ID3D10EffectVariable * ID3D10EffectScalarVariable_GetMemberByName(ID3D10EffectScalarVariable* This,const char *name) {
1418    return This->lpVtbl->GetMemberByName(This,name);
1419}
1420static inline ID3D10EffectVariable * ID3D10EffectScalarVariable_GetMemberBySemantic(ID3D10EffectScalarVariable* This,const char *semantic) {
1421    return This->lpVtbl->GetMemberBySemantic(This,semantic);
1422}
1423static inline ID3D10EffectVariable * ID3D10EffectScalarVariable_GetElement(ID3D10EffectScalarVariable* This,UINT index) {
1424    return This->lpVtbl->GetElement(This,index);
1425}
1426static inline ID3D10EffectConstantBuffer * ID3D10EffectScalarVariable_GetParentConstantBuffer(ID3D10EffectScalarVariable* This) {
1427    return This->lpVtbl->GetParentConstantBuffer(This);
1428}
1429static inline ID3D10EffectScalarVariable * ID3D10EffectScalarVariable_AsScalar(ID3D10EffectScalarVariable* This) {
1430    return This->lpVtbl->AsScalar(This);
1431}
1432static inline ID3D10EffectVectorVariable * ID3D10EffectScalarVariable_AsVector(ID3D10EffectScalarVariable* This) {
1433    return This->lpVtbl->AsVector(This);
1434}
1435static inline ID3D10EffectMatrixVariable * ID3D10EffectScalarVariable_AsMatrix(ID3D10EffectScalarVariable* This) {
1436    return This->lpVtbl->AsMatrix(This);
1437}
1438static inline ID3D10EffectStringVariable * ID3D10EffectScalarVariable_AsString(ID3D10EffectScalarVariable* This) {
1439    return This->lpVtbl->AsString(This);
1440}
1441static inline ID3D10EffectShaderResourceVariable * ID3D10EffectScalarVariable_AsShaderResource(ID3D10EffectScalarVariable* This) {
1442    return This->lpVtbl->AsShaderResource(This);
1443}
1444static inline ID3D10EffectRenderTargetViewVariable * ID3D10EffectScalarVariable_AsRenderTargetView(ID3D10EffectScalarVariable* This) {
1445    return This->lpVtbl->AsRenderTargetView(This);
1446}
1447static inline ID3D10EffectDepthStencilViewVariable * ID3D10EffectScalarVariable_AsDepthStencilView(ID3D10EffectScalarVariable* This) {
1448    return This->lpVtbl->AsDepthStencilView(This);
1449}
1450static inline ID3D10EffectConstantBuffer * ID3D10EffectScalarVariable_AsConstantBuffer(ID3D10EffectScalarVariable* This) {
1451    return This->lpVtbl->AsConstantBuffer(This);
1452}
1453static inline ID3D10EffectShaderVariable * ID3D10EffectScalarVariable_AsShader(ID3D10EffectScalarVariable* This) {
1454    return This->lpVtbl->AsShader(This);
1455}
1456static inline ID3D10EffectBlendVariable * ID3D10EffectScalarVariable_AsBlend(ID3D10EffectScalarVariable* This) {
1457    return This->lpVtbl->AsBlend(This);
1458}
1459static inline ID3D10EffectDepthStencilVariable * ID3D10EffectScalarVariable_AsDepthStencil(ID3D10EffectScalarVariable* This) {
1460    return This->lpVtbl->AsDepthStencil(This);
1461}
1462static inline ID3D10EffectRasterizerVariable * ID3D10EffectScalarVariable_AsRasterizer(ID3D10EffectScalarVariable* This) {
1463    return This->lpVtbl->AsRasterizer(This);
1464}
1465static inline ID3D10EffectSamplerVariable * ID3D10EffectScalarVariable_AsSampler(ID3D10EffectScalarVariable* This) {
1466    return This->lpVtbl->AsSampler(This);
1467}
1468static inline HRESULT ID3D10EffectScalarVariable_SetRawValue(ID3D10EffectScalarVariable* This,void *data,UINT offset,UINT count) {
1469    return This->lpVtbl->SetRawValue(This,data,offset,count);
1470}
1471static inline HRESULT ID3D10EffectScalarVariable_GetRawValue(ID3D10EffectScalarVariable* This,void *data,UINT offset,UINT count) {
1472    return This->lpVtbl->GetRawValue(This,data,offset,count);
1473}
1474/*** ID3D10EffectScalarVariable methods ***/
1475static inline HRESULT ID3D10EffectScalarVariable_SetFloat(ID3D10EffectScalarVariable* This,float value) {
1476    return This->lpVtbl->SetFloat(This,value);
1477}
1478static inline HRESULT ID3D10EffectScalarVariable_GetFloat(ID3D10EffectScalarVariable* This,float *value) {
1479    return This->lpVtbl->GetFloat(This,value);
1480}
1481static inline HRESULT ID3D10EffectScalarVariable_SetFloatArray(ID3D10EffectScalarVariable* This,float *values,UINT offset,UINT count) {
1482    return This->lpVtbl->SetFloatArray(This,values,offset,count);
1483}
1484static inline HRESULT ID3D10EffectScalarVariable_GetFloatArray(ID3D10EffectScalarVariable* This,float *values,UINT offset,UINT count) {
1485    return This->lpVtbl->GetFloatArray(This,values,offset,count);
1486}
1487static inline HRESULT ID3D10EffectScalarVariable_SetInt(ID3D10EffectScalarVariable* This,int value) {
1488    return This->lpVtbl->SetInt(This,value);
1489}
1490static inline HRESULT ID3D10EffectScalarVariable_GetInt(ID3D10EffectScalarVariable* This,int *value) {
1491    return This->lpVtbl->GetInt(This,value);
1492}
1493static inline HRESULT ID3D10EffectScalarVariable_SetIntArray(ID3D10EffectScalarVariable* This,int *values,UINT offset,UINT count) {
1494    return This->lpVtbl->SetIntArray(This,values,offset,count);
1495}
1496static inline HRESULT ID3D10EffectScalarVariable_GetIntArray(ID3D10EffectScalarVariable* This,int *values,UINT offset,UINT count) {
1497    return This->lpVtbl->GetIntArray(This,values,offset,count);
1498}
1499static inline HRESULT ID3D10EffectScalarVariable_SetBool(ID3D10EffectScalarVariable* This,WINBOOL value) {
1500    return This->lpVtbl->SetBool(This,value);
1501}
1502static inline HRESULT ID3D10EffectScalarVariable_GetBool(ID3D10EffectScalarVariable* This,WINBOOL *value) {
1503    return This->lpVtbl->GetBool(This,value);
1504}
1505static inline HRESULT ID3D10EffectScalarVariable_SetBoolArray(ID3D10EffectScalarVariable* This,WINBOOL *values,UINT offset,UINT count) {
1506    return This->lpVtbl->SetBoolArray(This,values,offset,count);
1507}
1508static inline HRESULT ID3D10EffectScalarVariable_GetBoolArray(ID3D10EffectScalarVariable* This,WINBOOL *values,UINT offset,UINT count) {
1509    return This->lpVtbl->GetBoolArray(This,values,offset,count);
1510}
1511#endif
1512#endif
1513
1514#endif
1515
1516
1517#endif  /* __ID3D10EffectScalarVariable_INTERFACE_DEFINED__ */
1518
1519/*****************************************************************************
1520 * ID3D10EffectVectorVariable interface
1521 */
1522#ifndef __ID3D10EffectVectorVariable_INTERFACE_DEFINED__
1523#define __ID3D10EffectVectorVariable_INTERFACE_DEFINED__
1524
1525DEFINE_GUID(IID_ID3D10EffectVectorVariable, 0x62b98c44, 0x1f82, 0x4c67, 0xbc,0xd0, 0x72,0xcf,0x8f,0x21,0x7e,0x81);
1526#if defined(__cplusplus) && !defined(CINTERFACE)
1527MIDL_INTERFACE("62b98c44-1f82-4c67-bcd0-72cf8f217e81")
1528ID3D10EffectVectorVariable : public ID3D10EffectVariable
1529{
1530    virtual HRESULT STDMETHODCALLTYPE SetBoolVector(
1531        WINBOOL *value) = 0;
1532
1533    virtual HRESULT STDMETHODCALLTYPE SetIntVector(
1534        int *value) = 0;
1535
1536    virtual HRESULT STDMETHODCALLTYPE SetFloatVector(
1537        float *value) = 0;
1538
1539    virtual HRESULT STDMETHODCALLTYPE GetBoolVector(
1540        WINBOOL *value) = 0;
1541
1542    virtual HRESULT STDMETHODCALLTYPE GetIntVector(
1543        int *value) = 0;
1544
1545    virtual HRESULT STDMETHODCALLTYPE GetFloatVector(
1546        float *value) = 0;
1547
1548    virtual HRESULT STDMETHODCALLTYPE SetBoolVectorArray(
1549        WINBOOL *values,
1550        UINT offset,
1551        UINT count) = 0;
1552
1553    virtual HRESULT STDMETHODCALLTYPE SetIntVectorArray(
1554        int *values,
1555        UINT offset,
1556        UINT count) = 0;
1557
1558    virtual HRESULT STDMETHODCALLTYPE SetFloatVectorArray(
1559        float *values,
1560        UINT offset,
1561        UINT count) = 0;
1562
1563    virtual HRESULT STDMETHODCALLTYPE GetBoolVectorArray(
1564        WINBOOL *values,
1565        UINT offset,
1566        UINT count) = 0;
1567
1568    virtual HRESULT STDMETHODCALLTYPE GetIntVectorArray(
1569        int *values,
1570        UINT offset,
1571        UINT count) = 0;
1572
1573    virtual HRESULT STDMETHODCALLTYPE GetFloatVectorArray(
1574        float *values,
1575        UINT offset,
1576        UINT count) = 0;
1577
1578};
1579#ifdef __CRT_UUID_DECL
1580__CRT_UUID_DECL(ID3D10EffectVectorVariable, 0x62b98c44, 0x1f82, 0x4c67, 0xbc,0xd0, 0x72,0xcf,0x8f,0x21,0x7e,0x81)
1581#endif
1582#else
1583typedef struct ID3D10EffectVectorVariableVtbl {
1584    BEGIN_INTERFACE
1585
1586    /*** ID3D10EffectVariable methods ***/
1587    WINBOOL (STDMETHODCALLTYPE *IsValid)(
1588        ID3D10EffectVectorVariable *This);
1589
1590    ID3D10EffectType * (STDMETHODCALLTYPE *GetType)(
1591        ID3D10EffectVectorVariable *This);
1592
1593    HRESULT (STDMETHODCALLTYPE *GetDesc)(
1594        ID3D10EffectVectorVariable *This,
1595        D3D10_EFFECT_VARIABLE_DESC *desc);
1596
1597    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByIndex)(
1598        ID3D10EffectVectorVariable *This,
1599        UINT index);
1600
1601    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByName)(
1602        ID3D10EffectVectorVariable *This,
1603        const char *name);
1604
1605    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByIndex)(
1606        ID3D10EffectVectorVariable *This,
1607        UINT index);
1608
1609    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByName)(
1610        ID3D10EffectVectorVariable *This,
1611        const char *name);
1612
1613    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberBySemantic)(
1614        ID3D10EffectVectorVariable *This,
1615        const char *semantic);
1616
1617    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetElement)(
1618        ID3D10EffectVectorVariable *This,
1619        UINT index);
1620
1621    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *GetParentConstantBuffer)(
1622        ID3D10EffectVectorVariable *This);
1623
1624    ID3D10EffectScalarVariable * (STDMETHODCALLTYPE *AsScalar)(
1625        ID3D10EffectVectorVariable *This);
1626
1627    ID3D10EffectVectorVariable * (STDMETHODCALLTYPE *AsVector)(
1628        ID3D10EffectVectorVariable *This);
1629
1630    ID3D10EffectMatrixVariable * (STDMETHODCALLTYPE *AsMatrix)(
1631        ID3D10EffectVectorVariable *This);
1632
1633    ID3D10EffectStringVariable * (STDMETHODCALLTYPE *AsString)(
1634        ID3D10EffectVectorVariable *This);
1635
1636    ID3D10EffectShaderResourceVariable * (STDMETHODCALLTYPE *AsShaderResource)(
1637        ID3D10EffectVectorVariable *This);
1638
1639    ID3D10EffectRenderTargetViewVariable * (STDMETHODCALLTYPE *AsRenderTargetView)(
1640        ID3D10EffectVectorVariable *This);
1641
1642    ID3D10EffectDepthStencilViewVariable * (STDMETHODCALLTYPE *AsDepthStencilView)(
1643        ID3D10EffectVectorVariable *This);
1644
1645    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *AsConstantBuffer)(
1646        ID3D10EffectVectorVariable *This);
1647
1648    ID3D10EffectShaderVariable * (STDMETHODCALLTYPE *AsShader)(
1649        ID3D10EffectVectorVariable *This);
1650
1651    ID3D10EffectBlendVariable * (STDMETHODCALLTYPE *AsBlend)(
1652        ID3D10EffectVectorVariable *This);
1653
1654    ID3D10EffectDepthStencilVariable * (STDMETHODCALLTYPE *AsDepthStencil)(
1655        ID3D10EffectVectorVariable *This);
1656
1657    ID3D10EffectRasterizerVariable * (STDMETHODCALLTYPE *AsRasterizer)(
1658        ID3D10EffectVectorVariable *This);
1659
1660    ID3D10EffectSamplerVariable * (STDMETHODCALLTYPE *AsSampler)(
1661        ID3D10EffectVectorVariable *This);
1662
1663    HRESULT (STDMETHODCALLTYPE *SetRawValue)(
1664        ID3D10EffectVectorVariable *This,
1665        void *data,
1666        UINT offset,
1667        UINT count);
1668
1669    HRESULT (STDMETHODCALLTYPE *GetRawValue)(
1670        ID3D10EffectVectorVariable *This,
1671        void *data,
1672        UINT offset,
1673        UINT count);
1674
1675    /*** ID3D10EffectVectorVariable methods ***/
1676    HRESULT (STDMETHODCALLTYPE *SetBoolVector)(
1677        ID3D10EffectVectorVariable *This,
1678        WINBOOL *value);
1679
1680    HRESULT (STDMETHODCALLTYPE *SetIntVector)(
1681        ID3D10EffectVectorVariable *This,
1682        int *value);
1683
1684    HRESULT (STDMETHODCALLTYPE *SetFloatVector)(
1685        ID3D10EffectVectorVariable *This,
1686        float *value);
1687
1688    HRESULT (STDMETHODCALLTYPE *GetBoolVector)(
1689        ID3D10EffectVectorVariable *This,
1690        WINBOOL *value);
1691
1692    HRESULT (STDMETHODCALLTYPE *GetIntVector)(
1693        ID3D10EffectVectorVariable *This,
1694        int *value);
1695
1696    HRESULT (STDMETHODCALLTYPE *GetFloatVector)(
1697        ID3D10EffectVectorVariable *This,
1698        float *value);
1699
1700    HRESULT (STDMETHODCALLTYPE *SetBoolVectorArray)(
1701        ID3D10EffectVectorVariable *This,
1702        WINBOOL *values,
1703        UINT offset,
1704        UINT count);
1705
1706    HRESULT (STDMETHODCALLTYPE *SetIntVectorArray)(
1707        ID3D10EffectVectorVariable *This,
1708        int *values,
1709        UINT offset,
1710        UINT count);
1711
1712    HRESULT (STDMETHODCALLTYPE *SetFloatVectorArray)(
1713        ID3D10EffectVectorVariable *This,
1714        float *values,
1715        UINT offset,
1716        UINT count);
1717
1718    HRESULT (STDMETHODCALLTYPE *GetBoolVectorArray)(
1719        ID3D10EffectVectorVariable *This,
1720        WINBOOL *values,
1721        UINT offset,
1722        UINT count);
1723
1724    HRESULT (STDMETHODCALLTYPE *GetIntVectorArray)(
1725        ID3D10EffectVectorVariable *This,
1726        int *values,
1727        UINT offset,
1728        UINT count);
1729
1730    HRESULT (STDMETHODCALLTYPE *GetFloatVectorArray)(
1731        ID3D10EffectVectorVariable *This,
1732        float *values,
1733        UINT offset,
1734        UINT count);
1735
1736    END_INTERFACE
1737} ID3D10EffectVectorVariableVtbl;
1738
1739interface ID3D10EffectVectorVariable {
1740    CONST_VTBL ID3D10EffectVectorVariableVtbl* lpVtbl;
1741};
1742
1743#ifdef COBJMACROS
1744#ifndef WIDL_C_INLINE_WRAPPERS
1745/*** ID3D10EffectVariable methods ***/
1746#define ID3D10EffectVectorVariable_IsValid(This) (This)->lpVtbl->IsValid(This)
1747#define ID3D10EffectVectorVariable_GetType(This) (This)->lpVtbl->GetType(This)
1748#define ID3D10EffectVectorVariable_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
1749#define ID3D10EffectVectorVariable_GetAnnotationByIndex(This,index) (This)->lpVtbl->GetAnnotationByIndex(This,index)
1750#define ID3D10EffectVectorVariable_GetAnnotationByName(This,name) (This)->lpVtbl->GetAnnotationByName(This,name)
1751#define ID3D10EffectVectorVariable_GetMemberByIndex(This,index) (This)->lpVtbl->GetMemberByIndex(This,index)
1752#define ID3D10EffectVectorVariable_GetMemberByName(This,name) (This)->lpVtbl->GetMemberByName(This,name)
1753#define ID3D10EffectVectorVariable_GetMemberBySemantic(This,semantic) (This)->lpVtbl->GetMemberBySemantic(This,semantic)
1754#define ID3D10EffectVectorVariable_GetElement(This,index) (This)->lpVtbl->GetElement(This,index)
1755#define ID3D10EffectVectorVariable_GetParentConstantBuffer(This) (This)->lpVtbl->GetParentConstantBuffer(This)
1756#define ID3D10EffectVectorVariable_AsScalar(This) (This)->lpVtbl->AsScalar(This)
1757#define ID3D10EffectVectorVariable_AsVector(This) (This)->lpVtbl->AsVector(This)
1758#define ID3D10EffectVectorVariable_AsMatrix(This) (This)->lpVtbl->AsMatrix(This)
1759#define ID3D10EffectVectorVariable_AsString(This) (This)->lpVtbl->AsString(This)
1760#define ID3D10EffectVectorVariable_AsShaderResource(This) (This)->lpVtbl->AsShaderResource(This)
1761#define ID3D10EffectVectorVariable_AsRenderTargetView(This) (This)->lpVtbl->AsRenderTargetView(This)
1762#define ID3D10EffectVectorVariable_AsDepthStencilView(This) (This)->lpVtbl->AsDepthStencilView(This)
1763#define ID3D10EffectVectorVariable_AsConstantBuffer(This) (This)->lpVtbl->AsConstantBuffer(This)
1764#define ID3D10EffectVectorVariable_AsShader(This) (This)->lpVtbl->AsShader(This)
1765#define ID3D10EffectVectorVariable_AsBlend(This) (This)->lpVtbl->AsBlend(This)
1766#define ID3D10EffectVectorVariable_AsDepthStencil(This) (This)->lpVtbl->AsDepthStencil(This)
1767#define ID3D10EffectVectorVariable_AsRasterizer(This) (This)->lpVtbl->AsRasterizer(This)
1768#define ID3D10EffectVectorVariable_AsSampler(This) (This)->lpVtbl->AsSampler(This)
1769#define ID3D10EffectVectorVariable_SetRawValue(This,data,offset,count) (This)->lpVtbl->SetRawValue(This,data,offset,count)
1770#define ID3D10EffectVectorVariable_GetRawValue(This,data,offset,count) (This)->lpVtbl->GetRawValue(This,data,offset,count)
1771/*** ID3D10EffectVectorVariable methods ***/
1772#define ID3D10EffectVectorVariable_SetBoolVector(This,value) (This)->lpVtbl->SetBoolVector(This,value)
1773#define ID3D10EffectVectorVariable_SetIntVector(This,value) (This)->lpVtbl->SetIntVector(This,value)
1774#define ID3D10EffectVectorVariable_SetFloatVector(This,value) (This)->lpVtbl->SetFloatVector(This,value)
1775#define ID3D10EffectVectorVariable_GetBoolVector(This,value) (This)->lpVtbl->GetBoolVector(This,value)
1776#define ID3D10EffectVectorVariable_GetIntVector(This,value) (This)->lpVtbl->GetIntVector(This,value)
1777#define ID3D10EffectVectorVariable_GetFloatVector(This,value) (This)->lpVtbl->GetFloatVector(This,value)
1778#define ID3D10EffectVectorVariable_SetBoolVectorArray(This,values,offset,count) (This)->lpVtbl->SetBoolVectorArray(This,values,offset,count)
1779#define ID3D10EffectVectorVariable_SetIntVectorArray(This,values,offset,count) (This)->lpVtbl->SetIntVectorArray(This,values,offset,count)
1780#define ID3D10EffectVectorVariable_SetFloatVectorArray(This,values,offset,count) (This)->lpVtbl->SetFloatVectorArray(This,values,offset,count)
1781#define ID3D10EffectVectorVariable_GetBoolVectorArray(This,values,offset,count) (This)->lpVtbl->GetBoolVectorArray(This,values,offset,count)
1782#define ID3D10EffectVectorVariable_GetIntVectorArray(This,values,offset,count) (This)->lpVtbl->GetIntVectorArray(This,values,offset,count)
1783#define ID3D10EffectVectorVariable_GetFloatVectorArray(This,values,offset,count) (This)->lpVtbl->GetFloatVectorArray(This,values,offset,count)
1784#else
1785/*** ID3D10EffectVariable methods ***/
1786static inline WINBOOL ID3D10EffectVectorVariable_IsValid(ID3D10EffectVectorVariable* This) {
1787    return This->lpVtbl->IsValid(This);
1788}
1789static inline ID3D10EffectType * ID3D10EffectVectorVariable_GetType(ID3D10EffectVectorVariable* This) {
1790    return This->lpVtbl->GetType(This);
1791}
1792static inline HRESULT ID3D10EffectVectorVariable_GetDesc(ID3D10EffectVectorVariable* This,D3D10_EFFECT_VARIABLE_DESC *desc) {
1793    return This->lpVtbl->GetDesc(This,desc);
1794}
1795static inline ID3D10EffectVariable * ID3D10EffectVectorVariable_GetAnnotationByIndex(ID3D10EffectVectorVariable* This,UINT index) {
1796    return This->lpVtbl->GetAnnotationByIndex(This,index);
1797}
1798static inline ID3D10EffectVariable * ID3D10EffectVectorVariable_GetAnnotationByName(ID3D10EffectVectorVariable* This,const char *name) {
1799    return This->lpVtbl->GetAnnotationByName(This,name);
1800}
1801static inline ID3D10EffectVariable * ID3D10EffectVectorVariable_GetMemberByIndex(ID3D10EffectVectorVariable* This,UINT index) {
1802    return This->lpVtbl->GetMemberByIndex(This,index);
1803}
1804static inline ID3D10EffectVariable * ID3D10EffectVectorVariable_GetMemberByName(ID3D10EffectVectorVariable* This,const char *name) {
1805    return This->lpVtbl->GetMemberByName(This,name);
1806}
1807static inline ID3D10EffectVariable * ID3D10EffectVectorVariable_GetMemberBySemantic(ID3D10EffectVectorVariable* This,const char *semantic) {
1808    return This->lpVtbl->GetMemberBySemantic(This,semantic);
1809}
1810static inline ID3D10EffectVariable * ID3D10EffectVectorVariable_GetElement(ID3D10EffectVectorVariable* This,UINT index) {
1811    return This->lpVtbl->GetElement(This,index);
1812}
1813static inline ID3D10EffectConstantBuffer * ID3D10EffectVectorVariable_GetParentConstantBuffer(ID3D10EffectVectorVariable* This) {
1814    return This->lpVtbl->GetParentConstantBuffer(This);
1815}
1816static inline ID3D10EffectScalarVariable * ID3D10EffectVectorVariable_AsScalar(ID3D10EffectVectorVariable* This) {
1817    return This->lpVtbl->AsScalar(This);
1818}
1819static inline ID3D10EffectVectorVariable * ID3D10EffectVectorVariable_AsVector(ID3D10EffectVectorVariable* This) {
1820    return This->lpVtbl->AsVector(This);
1821}
1822static inline ID3D10EffectMatrixVariable * ID3D10EffectVectorVariable_AsMatrix(ID3D10EffectVectorVariable* This) {
1823    return This->lpVtbl->AsMatrix(This);
1824}
1825static inline ID3D10EffectStringVariable * ID3D10EffectVectorVariable_AsString(ID3D10EffectVectorVariable* This) {
1826    return This->lpVtbl->AsString(This);
1827}
1828static inline ID3D10EffectShaderResourceVariable * ID3D10EffectVectorVariable_AsShaderResource(ID3D10EffectVectorVariable* This) {
1829    return This->lpVtbl->AsShaderResource(This);
1830}
1831static inline ID3D10EffectRenderTargetViewVariable * ID3D10EffectVectorVariable_AsRenderTargetView(ID3D10EffectVectorVariable* This) {
1832    return This->lpVtbl->AsRenderTargetView(This);
1833}
1834static inline ID3D10EffectDepthStencilViewVariable * ID3D10EffectVectorVariable_AsDepthStencilView(ID3D10EffectVectorVariable* This) {
1835    return This->lpVtbl->AsDepthStencilView(This);
1836}
1837static inline ID3D10EffectConstantBuffer * ID3D10EffectVectorVariable_AsConstantBuffer(ID3D10EffectVectorVariable* This) {
1838    return This->lpVtbl->AsConstantBuffer(This);
1839}
1840static inline ID3D10EffectShaderVariable * ID3D10EffectVectorVariable_AsShader(ID3D10EffectVectorVariable* This) {
1841    return This->lpVtbl->AsShader(This);
1842}
1843static inline ID3D10EffectBlendVariable * ID3D10EffectVectorVariable_AsBlend(ID3D10EffectVectorVariable* This) {
1844    return This->lpVtbl->AsBlend(This);
1845}
1846static inline ID3D10EffectDepthStencilVariable * ID3D10EffectVectorVariable_AsDepthStencil(ID3D10EffectVectorVariable* This) {
1847    return This->lpVtbl->AsDepthStencil(This);
1848}
1849static inline ID3D10EffectRasterizerVariable * ID3D10EffectVectorVariable_AsRasterizer(ID3D10EffectVectorVariable* This) {
1850    return This->lpVtbl->AsRasterizer(This);
1851}
1852static inline ID3D10EffectSamplerVariable * ID3D10EffectVectorVariable_AsSampler(ID3D10EffectVectorVariable* This) {
1853    return This->lpVtbl->AsSampler(This);
1854}
1855static inline HRESULT ID3D10EffectVectorVariable_SetRawValue(ID3D10EffectVectorVariable* This,void *data,UINT offset,UINT count) {
1856    return This->lpVtbl->SetRawValue(This,data,offset,count);
1857}
1858static inline HRESULT ID3D10EffectVectorVariable_GetRawValue(ID3D10EffectVectorVariable* This,void *data,UINT offset,UINT count) {
1859    return This->lpVtbl->GetRawValue(This,data,offset,count);
1860}
1861/*** ID3D10EffectVectorVariable methods ***/
1862static inline HRESULT ID3D10EffectVectorVariable_SetBoolVector(ID3D10EffectVectorVariable* This,WINBOOL *value) {
1863    return This->lpVtbl->SetBoolVector(This,value);
1864}
1865static inline HRESULT ID3D10EffectVectorVariable_SetIntVector(ID3D10EffectVectorVariable* This,int *value) {
1866    return This->lpVtbl->SetIntVector(This,value);
1867}
1868static inline HRESULT ID3D10EffectVectorVariable_SetFloatVector(ID3D10EffectVectorVariable* This,float *value) {
1869    return This->lpVtbl->SetFloatVector(This,value);
1870}
1871static inline HRESULT ID3D10EffectVectorVariable_GetBoolVector(ID3D10EffectVectorVariable* This,WINBOOL *value) {
1872    return This->lpVtbl->GetBoolVector(This,value);
1873}
1874static inline HRESULT ID3D10EffectVectorVariable_GetIntVector(ID3D10EffectVectorVariable* This,int *value) {
1875    return This->lpVtbl->GetIntVector(This,value);
1876}
1877static inline HRESULT ID3D10EffectVectorVariable_GetFloatVector(ID3D10EffectVectorVariable* This,float *value) {
1878    return This->lpVtbl->GetFloatVector(This,value);
1879}
1880static inline HRESULT ID3D10EffectVectorVariable_SetBoolVectorArray(ID3D10EffectVectorVariable* This,WINBOOL *values,UINT offset,UINT count) {
1881    return This->lpVtbl->SetBoolVectorArray(This,values,offset,count);
1882}
1883static inline HRESULT ID3D10EffectVectorVariable_SetIntVectorArray(ID3D10EffectVectorVariable* This,int *values,UINT offset,UINT count) {
1884    return This->lpVtbl->SetIntVectorArray(This,values,offset,count);
1885}
1886static inline HRESULT ID3D10EffectVectorVariable_SetFloatVectorArray(ID3D10EffectVectorVariable* This,float *values,UINT offset,UINT count) {
1887    return This->lpVtbl->SetFloatVectorArray(This,values,offset,count);
1888}
1889static inline HRESULT ID3D10EffectVectorVariable_GetBoolVectorArray(ID3D10EffectVectorVariable* This,WINBOOL *values,UINT offset,UINT count) {
1890    return This->lpVtbl->GetBoolVectorArray(This,values,offset,count);
1891}
1892static inline HRESULT ID3D10EffectVectorVariable_GetIntVectorArray(ID3D10EffectVectorVariable* This,int *values,UINT offset,UINT count) {
1893    return This->lpVtbl->GetIntVectorArray(This,values,offset,count);
1894}
1895static inline HRESULT ID3D10EffectVectorVariable_GetFloatVectorArray(ID3D10EffectVectorVariable* This,float *values,UINT offset,UINT count) {
1896    return This->lpVtbl->GetFloatVectorArray(This,values,offset,count);
1897}
1898#endif
1899#endif
1900
1901#endif
1902
1903
1904#endif  /* __ID3D10EffectVectorVariable_INTERFACE_DEFINED__ */
1905
1906/*****************************************************************************
1907 * ID3D10EffectMatrixVariable interface
1908 */
1909#ifndef __ID3D10EffectMatrixVariable_INTERFACE_DEFINED__
1910#define __ID3D10EffectMatrixVariable_INTERFACE_DEFINED__
1911
1912DEFINE_GUID(IID_ID3D10EffectMatrixVariable, 0x50666c24, 0xb82f, 0x4eed, 0xa1,0x72, 0x5b,0x6e,0x7e,0x85,0x22,0xe0);
1913#if defined(__cplusplus) && !defined(CINTERFACE)
1914MIDL_INTERFACE("50666c24-b82f-4eed-a172-5b6e7e8522e0")
1915ID3D10EffectMatrixVariable : public ID3D10EffectVariable
1916{
1917    virtual HRESULT STDMETHODCALLTYPE SetMatrix(
1918        float *data) = 0;
1919
1920    virtual HRESULT STDMETHODCALLTYPE GetMatrix(
1921        float *data) = 0;
1922
1923    virtual HRESULT STDMETHODCALLTYPE SetMatrixArray(
1924        float *data,
1925        UINT offset,
1926        UINT count) = 0;
1927
1928    virtual HRESULT STDMETHODCALLTYPE GetMatrixArray(
1929        float *data,
1930        UINT offset,
1931        UINT count) = 0;
1932
1933    virtual HRESULT STDMETHODCALLTYPE SetMatrixTranspose(
1934        float *data) = 0;
1935
1936    virtual HRESULT STDMETHODCALLTYPE GetMatrixTranspose(
1937        float *data) = 0;
1938
1939    virtual HRESULT STDMETHODCALLTYPE SetMatrixTransposeArray(
1940        float *data,
1941        UINT offset,
1942        UINT count) = 0;
1943
1944    virtual HRESULT STDMETHODCALLTYPE GetMatrixTransposeArray(
1945        float *data,
1946        UINT offset,
1947        UINT count) = 0;
1948
1949};
1950#ifdef __CRT_UUID_DECL
1951__CRT_UUID_DECL(ID3D10EffectMatrixVariable, 0x50666c24, 0xb82f, 0x4eed, 0xa1,0x72, 0x5b,0x6e,0x7e,0x85,0x22,0xe0)
1952#endif
1953#else
1954typedef struct ID3D10EffectMatrixVariableVtbl {
1955    BEGIN_INTERFACE
1956
1957    /*** ID3D10EffectVariable methods ***/
1958    WINBOOL (STDMETHODCALLTYPE *IsValid)(
1959        ID3D10EffectMatrixVariable *This);
1960
1961    ID3D10EffectType * (STDMETHODCALLTYPE *GetType)(
1962        ID3D10EffectMatrixVariable *This);
1963
1964    HRESULT (STDMETHODCALLTYPE *GetDesc)(
1965        ID3D10EffectMatrixVariable *This,
1966        D3D10_EFFECT_VARIABLE_DESC *desc);
1967
1968    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByIndex)(
1969        ID3D10EffectMatrixVariable *This,
1970        UINT index);
1971
1972    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByName)(
1973        ID3D10EffectMatrixVariable *This,
1974        const char *name);
1975
1976    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByIndex)(
1977        ID3D10EffectMatrixVariable *This,
1978        UINT index);
1979
1980    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByName)(
1981        ID3D10EffectMatrixVariable *This,
1982        const char *name);
1983
1984    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberBySemantic)(
1985        ID3D10EffectMatrixVariable *This,
1986        const char *semantic);
1987
1988    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetElement)(
1989        ID3D10EffectMatrixVariable *This,
1990        UINT index);
1991
1992    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *GetParentConstantBuffer)(
1993        ID3D10EffectMatrixVariable *This);
1994
1995    ID3D10EffectScalarVariable * (STDMETHODCALLTYPE *AsScalar)(
1996        ID3D10EffectMatrixVariable *This);
1997
1998    ID3D10EffectVectorVariable * (STDMETHODCALLTYPE *AsVector)(
1999        ID3D10EffectMatrixVariable *This);
2000
2001    ID3D10EffectMatrixVariable * (STDMETHODCALLTYPE *AsMatrix)(
2002        ID3D10EffectMatrixVariable *This);
2003
2004    ID3D10EffectStringVariable * (STDMETHODCALLTYPE *AsString)(
2005        ID3D10EffectMatrixVariable *This);
2006
2007    ID3D10EffectShaderResourceVariable * (STDMETHODCALLTYPE *AsShaderResource)(
2008        ID3D10EffectMatrixVariable *This);
2009
2010    ID3D10EffectRenderTargetViewVariable * (STDMETHODCALLTYPE *AsRenderTargetView)(
2011        ID3D10EffectMatrixVariable *This);
2012
2013    ID3D10EffectDepthStencilViewVariable * (STDMETHODCALLTYPE *AsDepthStencilView)(
2014        ID3D10EffectMatrixVariable *This);
2015
2016    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *AsConstantBuffer)(
2017        ID3D10EffectMatrixVariable *This);
2018
2019    ID3D10EffectShaderVariable * (STDMETHODCALLTYPE *AsShader)(
2020        ID3D10EffectMatrixVariable *This);
2021
2022    ID3D10EffectBlendVariable * (STDMETHODCALLTYPE *AsBlend)(
2023        ID3D10EffectMatrixVariable *This);
2024
2025    ID3D10EffectDepthStencilVariable * (STDMETHODCALLTYPE *AsDepthStencil)(
2026        ID3D10EffectMatrixVariable *This);
2027
2028    ID3D10EffectRasterizerVariable * (STDMETHODCALLTYPE *AsRasterizer)(
2029        ID3D10EffectMatrixVariable *This);
2030
2031    ID3D10EffectSamplerVariable * (STDMETHODCALLTYPE *AsSampler)(
2032        ID3D10EffectMatrixVariable *This);
2033
2034    HRESULT (STDMETHODCALLTYPE *SetRawValue)(
2035        ID3D10EffectMatrixVariable *This,
2036        void *data,
2037        UINT offset,
2038        UINT count);
2039
2040    HRESULT (STDMETHODCALLTYPE *GetRawValue)(
2041        ID3D10EffectMatrixVariable *This,
2042        void *data,
2043        UINT offset,
2044        UINT count);
2045
2046    /*** ID3D10EffectMatrixVariable methods ***/
2047    HRESULT (STDMETHODCALLTYPE *SetMatrix)(
2048        ID3D10EffectMatrixVariable *This,
2049        float *data);
2050
2051    HRESULT (STDMETHODCALLTYPE *GetMatrix)(
2052        ID3D10EffectMatrixVariable *This,
2053        float *data);
2054
2055    HRESULT (STDMETHODCALLTYPE *SetMatrixArray)(
2056        ID3D10EffectMatrixVariable *This,
2057        float *data,
2058        UINT offset,
2059        UINT count);
2060
2061    HRESULT (STDMETHODCALLTYPE *GetMatrixArray)(
2062        ID3D10EffectMatrixVariable *This,
2063        float *data,
2064        UINT offset,
2065        UINT count);
2066
2067    HRESULT (STDMETHODCALLTYPE *SetMatrixTranspose)(
2068        ID3D10EffectMatrixVariable *This,
2069        float *data);
2070
2071    HRESULT (STDMETHODCALLTYPE *GetMatrixTranspose)(
2072        ID3D10EffectMatrixVariable *This,
2073        float *data);
2074
2075    HRESULT (STDMETHODCALLTYPE *SetMatrixTransposeArray)(
2076        ID3D10EffectMatrixVariable *This,
2077        float *data,
2078        UINT offset,
2079        UINT count);
2080
2081    HRESULT (STDMETHODCALLTYPE *GetMatrixTransposeArray)(
2082        ID3D10EffectMatrixVariable *This,
2083        float *data,
2084        UINT offset,
2085        UINT count);
2086
2087    END_INTERFACE
2088} ID3D10EffectMatrixVariableVtbl;
2089
2090interface ID3D10EffectMatrixVariable {
2091    CONST_VTBL ID3D10EffectMatrixVariableVtbl* lpVtbl;
2092};
2093
2094#ifdef COBJMACROS
2095#ifndef WIDL_C_INLINE_WRAPPERS
2096/*** ID3D10EffectVariable methods ***/
2097#define ID3D10EffectMatrixVariable_IsValid(This) (This)->lpVtbl->IsValid(This)
2098#define ID3D10EffectMatrixVariable_GetType(This) (This)->lpVtbl->GetType(This)
2099#define ID3D10EffectMatrixVariable_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
2100#define ID3D10EffectMatrixVariable_GetAnnotationByIndex(This,index) (This)->lpVtbl->GetAnnotationByIndex(This,index)
2101#define ID3D10EffectMatrixVariable_GetAnnotationByName(This,name) (This)->lpVtbl->GetAnnotationByName(This,name)
2102#define ID3D10EffectMatrixVariable_GetMemberByIndex(This,index) (This)->lpVtbl->GetMemberByIndex(This,index)
2103#define ID3D10EffectMatrixVariable_GetMemberByName(This,name) (This)->lpVtbl->GetMemberByName(This,name)
2104#define ID3D10EffectMatrixVariable_GetMemberBySemantic(This,semantic) (This)->lpVtbl->GetMemberBySemantic(This,semantic)
2105#define ID3D10EffectMatrixVariable_GetElement(This,index) (This)->lpVtbl->GetElement(This,index)
2106#define ID3D10EffectMatrixVariable_GetParentConstantBuffer(This) (This)->lpVtbl->GetParentConstantBuffer(This)
2107#define ID3D10EffectMatrixVariable_AsScalar(This) (This)->lpVtbl->AsScalar(This)
2108#define ID3D10EffectMatrixVariable_AsVector(This) (This)->lpVtbl->AsVector(This)
2109#define ID3D10EffectMatrixVariable_AsMatrix(This) (This)->lpVtbl->AsMatrix(This)
2110#define ID3D10EffectMatrixVariable_AsString(This) (This)->lpVtbl->AsString(This)
2111#define ID3D10EffectMatrixVariable_AsShaderResource(This) (This)->lpVtbl->AsShaderResource(This)
2112#define ID3D10EffectMatrixVariable_AsRenderTargetView(This) (This)->lpVtbl->AsRenderTargetView(This)
2113#define ID3D10EffectMatrixVariable_AsDepthStencilView(This) (This)->lpVtbl->AsDepthStencilView(This)
2114#define ID3D10EffectMatrixVariable_AsConstantBuffer(This) (This)->lpVtbl->AsConstantBuffer(This)
2115#define ID3D10EffectMatrixVariable_AsShader(This) (This)->lpVtbl->AsShader(This)
2116#define ID3D10EffectMatrixVariable_AsBlend(This) (This)->lpVtbl->AsBlend(This)
2117#define ID3D10EffectMatrixVariable_AsDepthStencil(This) (This)->lpVtbl->AsDepthStencil(This)
2118#define ID3D10EffectMatrixVariable_AsRasterizer(This) (This)->lpVtbl->AsRasterizer(This)
2119#define ID3D10EffectMatrixVariable_AsSampler(This) (This)->lpVtbl->AsSampler(This)
2120#define ID3D10EffectMatrixVariable_SetRawValue(This,data,offset,count) (This)->lpVtbl->SetRawValue(This,data,offset,count)
2121#define ID3D10EffectMatrixVariable_GetRawValue(This,data,offset,count) (This)->lpVtbl->GetRawValue(This,data,offset,count)
2122/*** ID3D10EffectMatrixVariable methods ***/
2123#define ID3D10EffectMatrixVariable_SetMatrix(This,data) (This)->lpVtbl->SetMatrix(This,data)
2124#define ID3D10EffectMatrixVariable_GetMatrix(This,data) (This)->lpVtbl->GetMatrix(This,data)
2125#define ID3D10EffectMatrixVariable_SetMatrixArray(This,data,offset,count) (This)->lpVtbl->SetMatrixArray(This,data,offset,count)
2126#define ID3D10EffectMatrixVariable_GetMatrixArray(This,data,offset,count) (This)->lpVtbl->GetMatrixArray(This,data,offset,count)
2127#define ID3D10EffectMatrixVariable_SetMatrixTranspose(This,data) (This)->lpVtbl->SetMatrixTranspose(This,data)
2128#define ID3D10EffectMatrixVariable_GetMatrixTranspose(This,data) (This)->lpVtbl->GetMatrixTranspose(This,data)
2129#define ID3D10EffectMatrixVariable_SetMatrixTransposeArray(This,data,offset,count) (This)->lpVtbl->SetMatrixTransposeArray(This,data,offset,count)
2130#define ID3D10EffectMatrixVariable_GetMatrixTransposeArray(This,data,offset,count) (This)->lpVtbl->GetMatrixTransposeArray(This,data,offset,count)
2131#else
2132/*** ID3D10EffectVariable methods ***/
2133static inline WINBOOL ID3D10EffectMatrixVariable_IsValid(ID3D10EffectMatrixVariable* This) {
2134    return This->lpVtbl->IsValid(This);
2135}
2136static inline ID3D10EffectType * ID3D10EffectMatrixVariable_GetType(ID3D10EffectMatrixVariable* This) {
2137    return This->lpVtbl->GetType(This);
2138}
2139static inline HRESULT ID3D10EffectMatrixVariable_GetDesc(ID3D10EffectMatrixVariable* This,D3D10_EFFECT_VARIABLE_DESC *desc) {
2140    return This->lpVtbl->GetDesc(This,desc);
2141}
2142static inline ID3D10EffectVariable * ID3D10EffectMatrixVariable_GetAnnotationByIndex(ID3D10EffectMatrixVariable* This,UINT index) {
2143    return This->lpVtbl->GetAnnotationByIndex(This,index);
2144}
2145static inline ID3D10EffectVariable * ID3D10EffectMatrixVariable_GetAnnotationByName(ID3D10EffectMatrixVariable* This,const char *name) {
2146    return This->lpVtbl->GetAnnotationByName(This,name);
2147}
2148static inline ID3D10EffectVariable * ID3D10EffectMatrixVariable_GetMemberByIndex(ID3D10EffectMatrixVariable* This,UINT index) {
2149    return This->lpVtbl->GetMemberByIndex(This,index);
2150}
2151static inline ID3D10EffectVariable * ID3D10EffectMatrixVariable_GetMemberByName(ID3D10EffectMatrixVariable* This,const char *name) {
2152    return This->lpVtbl->GetMemberByName(This,name);
2153}
2154static inline ID3D10EffectVariable * ID3D10EffectMatrixVariable_GetMemberBySemantic(ID3D10EffectMatrixVariable* This,const char *semantic) {
2155    return This->lpVtbl->GetMemberBySemantic(This,semantic);
2156}
2157static inline ID3D10EffectVariable * ID3D10EffectMatrixVariable_GetElement(ID3D10EffectMatrixVariable* This,UINT index) {
2158    return This->lpVtbl->GetElement(This,index);
2159}
2160static inline ID3D10EffectConstantBuffer * ID3D10EffectMatrixVariable_GetParentConstantBuffer(ID3D10EffectMatrixVariable* This) {
2161    return This->lpVtbl->GetParentConstantBuffer(This);
2162}
2163static inline ID3D10EffectScalarVariable * ID3D10EffectMatrixVariable_AsScalar(ID3D10EffectMatrixVariable* This) {
2164    return This->lpVtbl->AsScalar(This);
2165}
2166static inline ID3D10EffectVectorVariable * ID3D10EffectMatrixVariable_AsVector(ID3D10EffectMatrixVariable* This) {
2167    return This->lpVtbl->AsVector(This);
2168}
2169static inline ID3D10EffectMatrixVariable * ID3D10EffectMatrixVariable_AsMatrix(ID3D10EffectMatrixVariable* This) {
2170    return This->lpVtbl->AsMatrix(This);
2171}
2172static inline ID3D10EffectStringVariable * ID3D10EffectMatrixVariable_AsString(ID3D10EffectMatrixVariable* This) {
2173    return This->lpVtbl->AsString(This);
2174}
2175static inline ID3D10EffectShaderResourceVariable * ID3D10EffectMatrixVariable_AsShaderResource(ID3D10EffectMatrixVariable* This) {
2176    return This->lpVtbl->AsShaderResource(This);
2177}
2178static inline ID3D10EffectRenderTargetViewVariable * ID3D10EffectMatrixVariable_AsRenderTargetView(ID3D10EffectMatrixVariable* This) {
2179    return This->lpVtbl->AsRenderTargetView(This);
2180}
2181static inline ID3D10EffectDepthStencilViewVariable * ID3D10EffectMatrixVariable_AsDepthStencilView(ID3D10EffectMatrixVariable* This) {
2182    return This->lpVtbl->AsDepthStencilView(This);
2183}
2184static inline ID3D10EffectConstantBuffer * ID3D10EffectMatrixVariable_AsConstantBuffer(ID3D10EffectMatrixVariable* This) {
2185    return This->lpVtbl->AsConstantBuffer(This);
2186}
2187static inline ID3D10EffectShaderVariable * ID3D10EffectMatrixVariable_AsShader(ID3D10EffectMatrixVariable* This) {
2188    return This->lpVtbl->AsShader(This);
2189}
2190static inline ID3D10EffectBlendVariable * ID3D10EffectMatrixVariable_AsBlend(ID3D10EffectMatrixVariable* This) {
2191    return This->lpVtbl->AsBlend(This);
2192}
2193static inline ID3D10EffectDepthStencilVariable * ID3D10EffectMatrixVariable_AsDepthStencil(ID3D10EffectMatrixVariable* This) {
2194    return This->lpVtbl->AsDepthStencil(This);
2195}
2196static inline ID3D10EffectRasterizerVariable * ID3D10EffectMatrixVariable_AsRasterizer(ID3D10EffectMatrixVariable* This) {
2197    return This->lpVtbl->AsRasterizer(This);
2198}
2199static inline ID3D10EffectSamplerVariable * ID3D10EffectMatrixVariable_AsSampler(ID3D10EffectMatrixVariable* This) {
2200    return This->lpVtbl->AsSampler(This);
2201}
2202static inline HRESULT ID3D10EffectMatrixVariable_SetRawValue(ID3D10EffectMatrixVariable* This,void *data,UINT offset,UINT count) {
2203    return This->lpVtbl->SetRawValue(This,data,offset,count);
2204}
2205static inline HRESULT ID3D10EffectMatrixVariable_GetRawValue(ID3D10EffectMatrixVariable* This,void *data,UINT offset,UINT count) {
2206    return This->lpVtbl->GetRawValue(This,data,offset,count);
2207}
2208/*** ID3D10EffectMatrixVariable methods ***/
2209static inline HRESULT ID3D10EffectMatrixVariable_SetMatrix(ID3D10EffectMatrixVariable* This,float *data) {
2210    return This->lpVtbl->SetMatrix(This,data);
2211}
2212static inline HRESULT ID3D10EffectMatrixVariable_GetMatrix(ID3D10EffectMatrixVariable* This,float *data) {
2213    return This->lpVtbl->GetMatrix(This,data);
2214}
2215static inline HRESULT ID3D10EffectMatrixVariable_SetMatrixArray(ID3D10EffectMatrixVariable* This,float *data,UINT offset,UINT count) {
2216    return This->lpVtbl->SetMatrixArray(This,data,offset,count);
2217}
2218static inline HRESULT ID3D10EffectMatrixVariable_GetMatrixArray(ID3D10EffectMatrixVariable* This,float *data,UINT offset,UINT count) {
2219    return This->lpVtbl->GetMatrixArray(This,data,offset,count);
2220}
2221static inline HRESULT ID3D10EffectMatrixVariable_SetMatrixTranspose(ID3D10EffectMatrixVariable* This,float *data) {
2222    return This->lpVtbl->SetMatrixTranspose(This,data);
2223}
2224static inline HRESULT ID3D10EffectMatrixVariable_GetMatrixTranspose(ID3D10EffectMatrixVariable* This,float *data) {
2225    return This->lpVtbl->GetMatrixTranspose(This,data);
2226}
2227static inline HRESULT ID3D10EffectMatrixVariable_SetMatrixTransposeArray(ID3D10EffectMatrixVariable* This,float *data,UINT offset,UINT count) {
2228    return This->lpVtbl->SetMatrixTransposeArray(This,data,offset,count);
2229}
2230static inline HRESULT ID3D10EffectMatrixVariable_GetMatrixTransposeArray(ID3D10EffectMatrixVariable* This,float *data,UINT offset,UINT count) {
2231    return This->lpVtbl->GetMatrixTransposeArray(This,data,offset,count);
2232}
2233#endif
2234#endif
2235
2236#endif
2237
2238
2239#endif  /* __ID3D10EffectMatrixVariable_INTERFACE_DEFINED__ */
2240
2241/*****************************************************************************
2242 * ID3D10EffectStringVariable interface
2243 */
2244#ifndef __ID3D10EffectStringVariable_INTERFACE_DEFINED__
2245#define __ID3D10EffectStringVariable_INTERFACE_DEFINED__
2246
2247DEFINE_GUID(IID_ID3D10EffectStringVariable, 0x71417501, 0x8df9, 0x4e0a, 0xa7,0x8a, 0x25,0x5f,0x97,0x56,0xba,0xff);
2248#if defined(__cplusplus) && !defined(CINTERFACE)
2249MIDL_INTERFACE("71417501-8df9-4e0a-a78a-255f9756baff")
2250ID3D10EffectStringVariable : public ID3D10EffectVariable
2251{
2252    virtual HRESULT STDMETHODCALLTYPE GetString(
2253        const char **str) = 0;
2254
2255    virtual HRESULT STDMETHODCALLTYPE GetStringArray(
2256        const char **strs,
2257        UINT offset,
2258        UINT count) = 0;
2259
2260};
2261#ifdef __CRT_UUID_DECL
2262__CRT_UUID_DECL(ID3D10EffectStringVariable, 0x71417501, 0x8df9, 0x4e0a, 0xa7,0x8a, 0x25,0x5f,0x97,0x56,0xba,0xff)
2263#endif
2264#else
2265typedef struct ID3D10EffectStringVariableVtbl {
2266    BEGIN_INTERFACE
2267
2268    /*** ID3D10EffectVariable methods ***/
2269    WINBOOL (STDMETHODCALLTYPE *IsValid)(
2270        ID3D10EffectStringVariable *This);
2271
2272    ID3D10EffectType * (STDMETHODCALLTYPE *GetType)(
2273        ID3D10EffectStringVariable *This);
2274
2275    HRESULT (STDMETHODCALLTYPE *GetDesc)(
2276        ID3D10EffectStringVariable *This,
2277        D3D10_EFFECT_VARIABLE_DESC *desc);
2278
2279    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByIndex)(
2280        ID3D10EffectStringVariable *This,
2281        UINT index);
2282
2283    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByName)(
2284        ID3D10EffectStringVariable *This,
2285        const char *name);
2286
2287    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByIndex)(
2288        ID3D10EffectStringVariable *This,
2289        UINT index);
2290
2291    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByName)(
2292        ID3D10EffectStringVariable *This,
2293        const char *name);
2294
2295    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberBySemantic)(
2296        ID3D10EffectStringVariable *This,
2297        const char *semantic);
2298
2299    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetElement)(
2300        ID3D10EffectStringVariable *This,
2301        UINT index);
2302
2303    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *GetParentConstantBuffer)(
2304        ID3D10EffectStringVariable *This);
2305
2306    ID3D10EffectScalarVariable * (STDMETHODCALLTYPE *AsScalar)(
2307        ID3D10EffectStringVariable *This);
2308
2309    ID3D10EffectVectorVariable * (STDMETHODCALLTYPE *AsVector)(
2310        ID3D10EffectStringVariable *This);
2311
2312    ID3D10EffectMatrixVariable * (STDMETHODCALLTYPE *AsMatrix)(
2313        ID3D10EffectStringVariable *This);
2314
2315    ID3D10EffectStringVariable * (STDMETHODCALLTYPE *AsString)(
2316        ID3D10EffectStringVariable *This);
2317
2318    ID3D10EffectShaderResourceVariable * (STDMETHODCALLTYPE *AsShaderResource)(
2319        ID3D10EffectStringVariable *This);
2320
2321    ID3D10EffectRenderTargetViewVariable * (STDMETHODCALLTYPE *AsRenderTargetView)(
2322        ID3D10EffectStringVariable *This);
2323
2324    ID3D10EffectDepthStencilViewVariable * (STDMETHODCALLTYPE *AsDepthStencilView)(
2325        ID3D10EffectStringVariable *This);
2326
2327    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *AsConstantBuffer)(
2328        ID3D10EffectStringVariable *This);
2329
2330    ID3D10EffectShaderVariable * (STDMETHODCALLTYPE *AsShader)(
2331        ID3D10EffectStringVariable *This);
2332
2333    ID3D10EffectBlendVariable * (STDMETHODCALLTYPE *AsBlend)(
2334        ID3D10EffectStringVariable *This);
2335
2336    ID3D10EffectDepthStencilVariable * (STDMETHODCALLTYPE *AsDepthStencil)(
2337        ID3D10EffectStringVariable *This);
2338
2339    ID3D10EffectRasterizerVariable * (STDMETHODCALLTYPE *AsRasterizer)(
2340        ID3D10EffectStringVariable *This);
2341
2342    ID3D10EffectSamplerVariable * (STDMETHODCALLTYPE *AsSampler)(
2343        ID3D10EffectStringVariable *This);
2344
2345    HRESULT (STDMETHODCALLTYPE *SetRawValue)(
2346        ID3D10EffectStringVariable *This,
2347        void *data,
2348        UINT offset,
2349        UINT count);
2350
2351    HRESULT (STDMETHODCALLTYPE *GetRawValue)(
2352        ID3D10EffectStringVariable *This,
2353        void *data,
2354        UINT offset,
2355        UINT count);
2356
2357    /*** ID3D10EffectStringVariable methods ***/
2358    HRESULT (STDMETHODCALLTYPE *GetString)(
2359        ID3D10EffectStringVariable *This,
2360        const char **str);
2361
2362    HRESULT (STDMETHODCALLTYPE *GetStringArray)(
2363        ID3D10EffectStringVariable *This,
2364        const char **strs,
2365        UINT offset,
2366        UINT count);
2367
2368    END_INTERFACE
2369} ID3D10EffectStringVariableVtbl;
2370
2371interface ID3D10EffectStringVariable {
2372    CONST_VTBL ID3D10EffectStringVariableVtbl* lpVtbl;
2373};
2374
2375#ifdef COBJMACROS
2376#ifndef WIDL_C_INLINE_WRAPPERS
2377/*** ID3D10EffectVariable methods ***/
2378#define ID3D10EffectStringVariable_IsValid(This) (This)->lpVtbl->IsValid(This)
2379#define ID3D10EffectStringVariable_GetType(This) (This)->lpVtbl->GetType(This)
2380#define ID3D10EffectStringVariable_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
2381#define ID3D10EffectStringVariable_GetAnnotationByIndex(This,index) (This)->lpVtbl->GetAnnotationByIndex(This,index)
2382#define ID3D10EffectStringVariable_GetAnnotationByName(This,name) (This)->lpVtbl->GetAnnotationByName(This,name)
2383#define ID3D10EffectStringVariable_GetMemberByIndex(This,index) (This)->lpVtbl->GetMemberByIndex(This,index)
2384#define ID3D10EffectStringVariable_GetMemberByName(This,name) (This)->lpVtbl->GetMemberByName(This,name)
2385#define ID3D10EffectStringVariable_GetMemberBySemantic(This,semantic) (This)->lpVtbl->GetMemberBySemantic(This,semantic)
2386#define ID3D10EffectStringVariable_GetElement(This,index) (This)->lpVtbl->GetElement(This,index)
2387#define ID3D10EffectStringVariable_GetParentConstantBuffer(This) (This)->lpVtbl->GetParentConstantBuffer(This)
2388#define ID3D10EffectStringVariable_AsScalar(This) (This)->lpVtbl->AsScalar(This)
2389#define ID3D10EffectStringVariable_AsVector(This) (This)->lpVtbl->AsVector(This)
2390#define ID3D10EffectStringVariable_AsMatrix(This) (This)->lpVtbl->AsMatrix(This)
2391#define ID3D10EffectStringVariable_AsString(This) (This)->lpVtbl->AsString(This)
2392#define ID3D10EffectStringVariable_AsShaderResource(This) (This)->lpVtbl->AsShaderResource(This)
2393#define ID3D10EffectStringVariable_AsRenderTargetView(This) (This)->lpVtbl->AsRenderTargetView(This)
2394#define ID3D10EffectStringVariable_AsDepthStencilView(This) (This)->lpVtbl->AsDepthStencilView(This)
2395#define ID3D10EffectStringVariable_AsConstantBuffer(This) (This)->lpVtbl->AsConstantBuffer(This)
2396#define ID3D10EffectStringVariable_AsShader(This) (This)->lpVtbl->AsShader(This)
2397#define ID3D10EffectStringVariable_AsBlend(This) (This)->lpVtbl->AsBlend(This)
2398#define ID3D10EffectStringVariable_AsDepthStencil(This) (This)->lpVtbl->AsDepthStencil(This)
2399#define ID3D10EffectStringVariable_AsRasterizer(This) (This)->lpVtbl->AsRasterizer(This)
2400#define ID3D10EffectStringVariable_AsSampler(This) (This)->lpVtbl->AsSampler(This)
2401#define ID3D10EffectStringVariable_SetRawValue(This,data,offset,count) (This)->lpVtbl->SetRawValue(This,data,offset,count)
2402#define ID3D10EffectStringVariable_GetRawValue(This,data,offset,count) (This)->lpVtbl->GetRawValue(This,data,offset,count)
2403/*** ID3D10EffectStringVariable methods ***/
2404#define ID3D10EffectStringVariable_GetString(This,str) (This)->lpVtbl->GetString(This,str)
2405#define ID3D10EffectStringVariable_GetStringArray(This,strs,offset,count) (This)->lpVtbl->GetStringArray(This,strs,offset,count)
2406#else
2407/*** ID3D10EffectVariable methods ***/
2408static inline WINBOOL ID3D10EffectStringVariable_IsValid(ID3D10EffectStringVariable* This) {
2409    return This->lpVtbl->IsValid(This);
2410}
2411static inline ID3D10EffectType * ID3D10EffectStringVariable_GetType(ID3D10EffectStringVariable* This) {
2412    return This->lpVtbl->GetType(This);
2413}
2414static inline HRESULT ID3D10EffectStringVariable_GetDesc(ID3D10EffectStringVariable* This,D3D10_EFFECT_VARIABLE_DESC *desc) {
2415    return This->lpVtbl->GetDesc(This,desc);
2416}
2417static inline ID3D10EffectVariable * ID3D10EffectStringVariable_GetAnnotationByIndex(ID3D10EffectStringVariable* This,UINT index) {
2418    return This->lpVtbl->GetAnnotationByIndex(This,index);
2419}
2420static inline ID3D10EffectVariable * ID3D10EffectStringVariable_GetAnnotationByName(ID3D10EffectStringVariable* This,const char *name) {
2421    return This->lpVtbl->GetAnnotationByName(This,name);
2422}
2423static inline ID3D10EffectVariable * ID3D10EffectStringVariable_GetMemberByIndex(ID3D10EffectStringVariable* This,UINT index) {
2424    return This->lpVtbl->GetMemberByIndex(This,index);
2425}
2426static inline ID3D10EffectVariable * ID3D10EffectStringVariable_GetMemberByName(ID3D10EffectStringVariable* This,const char *name) {
2427    return This->lpVtbl->GetMemberByName(This,name);
2428}
2429static inline ID3D10EffectVariable * ID3D10EffectStringVariable_GetMemberBySemantic(ID3D10EffectStringVariable* This,const char *semantic) {
2430    return This->lpVtbl->GetMemberBySemantic(This,semantic);
2431}
2432static inline ID3D10EffectVariable * ID3D10EffectStringVariable_GetElement(ID3D10EffectStringVariable* This,UINT index) {
2433    return This->lpVtbl->GetElement(This,index);
2434}
2435static inline ID3D10EffectConstantBuffer * ID3D10EffectStringVariable_GetParentConstantBuffer(ID3D10EffectStringVariable* This) {
2436    return This->lpVtbl->GetParentConstantBuffer(This);
2437}
2438static inline ID3D10EffectScalarVariable * ID3D10EffectStringVariable_AsScalar(ID3D10EffectStringVariable* This) {
2439    return This->lpVtbl->AsScalar(This);
2440}
2441static inline ID3D10EffectVectorVariable * ID3D10EffectStringVariable_AsVector(ID3D10EffectStringVariable* This) {
2442    return This->lpVtbl->AsVector(This);
2443}
2444static inline ID3D10EffectMatrixVariable * ID3D10EffectStringVariable_AsMatrix(ID3D10EffectStringVariable* This) {
2445    return This->lpVtbl->AsMatrix(This);
2446}
2447static inline ID3D10EffectStringVariable * ID3D10EffectStringVariable_AsString(ID3D10EffectStringVariable* This) {
2448    return This->lpVtbl->AsString(This);
2449}
2450static inline ID3D10EffectShaderResourceVariable * ID3D10EffectStringVariable_AsShaderResource(ID3D10EffectStringVariable* This) {
2451    return This->lpVtbl->AsShaderResource(This);
2452}
2453static inline ID3D10EffectRenderTargetViewVariable * ID3D10EffectStringVariable_AsRenderTargetView(ID3D10EffectStringVariable* This) {
2454    return This->lpVtbl->AsRenderTargetView(This);
2455}
2456static inline ID3D10EffectDepthStencilViewVariable * ID3D10EffectStringVariable_AsDepthStencilView(ID3D10EffectStringVariable* This) {
2457    return This->lpVtbl->AsDepthStencilView(This);
2458}
2459static inline ID3D10EffectConstantBuffer * ID3D10EffectStringVariable_AsConstantBuffer(ID3D10EffectStringVariable* This) {
2460    return This->lpVtbl->AsConstantBuffer(This);
2461}
2462static inline ID3D10EffectShaderVariable * ID3D10EffectStringVariable_AsShader(ID3D10EffectStringVariable* This) {
2463    return This->lpVtbl->AsShader(This);
2464}
2465static inline ID3D10EffectBlendVariable * ID3D10EffectStringVariable_AsBlend(ID3D10EffectStringVariable* This) {
2466    return This->lpVtbl->AsBlend(This);
2467}
2468static inline ID3D10EffectDepthStencilVariable * ID3D10EffectStringVariable_AsDepthStencil(ID3D10EffectStringVariable* This) {
2469    return This->lpVtbl->AsDepthStencil(This);
2470}
2471static inline ID3D10EffectRasterizerVariable * ID3D10EffectStringVariable_AsRasterizer(ID3D10EffectStringVariable* This) {
2472    return This->lpVtbl->AsRasterizer(This);
2473}
2474static inline ID3D10EffectSamplerVariable * ID3D10EffectStringVariable_AsSampler(ID3D10EffectStringVariable* This) {
2475    return This->lpVtbl->AsSampler(This);
2476}
2477static inline HRESULT ID3D10EffectStringVariable_SetRawValue(ID3D10EffectStringVariable* This,void *data,UINT offset,UINT count) {
2478    return This->lpVtbl->SetRawValue(This,data,offset,count);
2479}
2480static inline HRESULT ID3D10EffectStringVariable_GetRawValue(ID3D10EffectStringVariable* This,void *data,UINT offset,UINT count) {
2481    return This->lpVtbl->GetRawValue(This,data,offset,count);
2482}
2483/*** ID3D10EffectStringVariable methods ***/
2484static inline HRESULT ID3D10EffectStringVariable_GetString(ID3D10EffectStringVariable* This,const char **str) {
2485    return This->lpVtbl->GetString(This,str);
2486}
2487static inline HRESULT ID3D10EffectStringVariable_GetStringArray(ID3D10EffectStringVariable* This,const char **strs,UINT offset,UINT count) {
2488    return This->lpVtbl->GetStringArray(This,strs,offset,count);
2489}
2490#endif
2491#endif
2492
2493#endif
2494
2495
2496#endif  /* __ID3D10EffectStringVariable_INTERFACE_DEFINED__ */
2497
2498/*****************************************************************************
2499 * ID3D10EffectShaderResourceVariable interface
2500 */
2501#ifndef __ID3D10EffectShaderResourceVariable_INTERFACE_DEFINED__
2502#define __ID3D10EffectShaderResourceVariable_INTERFACE_DEFINED__
2503
2504DEFINE_GUID(IID_ID3D10EffectShaderResourceVariable, 0xc0a7157b, 0xd872, 0x4b1d, 0x80,0x73, 0xef,0xc2,0xac,0xd4,0xb1,0xfc);
2505#if defined(__cplusplus) && !defined(CINTERFACE)
2506MIDL_INTERFACE("c0a7157b-d872-4b1d-8073-efc2acd4b1fc")
2507ID3D10EffectShaderResourceVariable : public ID3D10EffectVariable
2508{
2509    virtual HRESULT STDMETHODCALLTYPE SetResource(
2510        ID3D10ShaderResourceView *resource) = 0;
2511
2512    virtual HRESULT STDMETHODCALLTYPE GetResource(
2513        ID3D10ShaderResourceView **resource) = 0;
2514
2515    virtual HRESULT STDMETHODCALLTYPE SetResourceArray(
2516        ID3D10ShaderResourceView **resources,
2517        UINT offset,
2518        UINT count) = 0;
2519
2520    virtual HRESULT STDMETHODCALLTYPE GetResourceArray(
2521        ID3D10ShaderResourceView **resources,
2522        UINT offset,
2523        UINT count) = 0;
2524
2525};
2526#ifdef __CRT_UUID_DECL
2527__CRT_UUID_DECL(ID3D10EffectShaderResourceVariable, 0xc0a7157b, 0xd872, 0x4b1d, 0x80,0x73, 0xef,0xc2,0xac,0xd4,0xb1,0xfc)
2528#endif
2529#else
2530typedef struct ID3D10EffectShaderResourceVariableVtbl {
2531    BEGIN_INTERFACE
2532
2533    /*** ID3D10EffectVariable methods ***/
2534    WINBOOL (STDMETHODCALLTYPE *IsValid)(
2535        ID3D10EffectShaderResourceVariable *This);
2536
2537    ID3D10EffectType * (STDMETHODCALLTYPE *GetType)(
2538        ID3D10EffectShaderResourceVariable *This);
2539
2540    HRESULT (STDMETHODCALLTYPE *GetDesc)(
2541        ID3D10EffectShaderResourceVariable *This,
2542        D3D10_EFFECT_VARIABLE_DESC *desc);
2543
2544    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByIndex)(
2545        ID3D10EffectShaderResourceVariable *This,
2546        UINT index);
2547
2548    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByName)(
2549        ID3D10EffectShaderResourceVariable *This,
2550        const char *name);
2551
2552    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByIndex)(
2553        ID3D10EffectShaderResourceVariable *This,
2554        UINT index);
2555
2556    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByName)(
2557        ID3D10EffectShaderResourceVariable *This,
2558        const char *name);
2559
2560    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberBySemantic)(
2561        ID3D10EffectShaderResourceVariable *This,
2562        const char *semantic);
2563
2564    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetElement)(
2565        ID3D10EffectShaderResourceVariable *This,
2566        UINT index);
2567
2568    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *GetParentConstantBuffer)(
2569        ID3D10EffectShaderResourceVariable *This);
2570
2571    ID3D10EffectScalarVariable * (STDMETHODCALLTYPE *AsScalar)(
2572        ID3D10EffectShaderResourceVariable *This);
2573
2574    ID3D10EffectVectorVariable * (STDMETHODCALLTYPE *AsVector)(
2575        ID3D10EffectShaderResourceVariable *This);
2576
2577    ID3D10EffectMatrixVariable * (STDMETHODCALLTYPE *AsMatrix)(
2578        ID3D10EffectShaderResourceVariable *This);
2579
2580    ID3D10EffectStringVariable * (STDMETHODCALLTYPE *AsString)(
2581        ID3D10EffectShaderResourceVariable *This);
2582
2583    ID3D10EffectShaderResourceVariable * (STDMETHODCALLTYPE *AsShaderResource)(
2584        ID3D10EffectShaderResourceVariable *This);
2585
2586    ID3D10EffectRenderTargetViewVariable * (STDMETHODCALLTYPE *AsRenderTargetView)(
2587        ID3D10EffectShaderResourceVariable *This);
2588
2589    ID3D10EffectDepthStencilViewVariable * (STDMETHODCALLTYPE *AsDepthStencilView)(
2590        ID3D10EffectShaderResourceVariable *This);
2591
2592    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *AsConstantBuffer)(
2593        ID3D10EffectShaderResourceVariable *This);
2594
2595    ID3D10EffectShaderVariable * (STDMETHODCALLTYPE *AsShader)(
2596        ID3D10EffectShaderResourceVariable *This);
2597
2598    ID3D10EffectBlendVariable * (STDMETHODCALLTYPE *AsBlend)(
2599        ID3D10EffectShaderResourceVariable *This);
2600
2601    ID3D10EffectDepthStencilVariable * (STDMETHODCALLTYPE *AsDepthStencil)(
2602        ID3D10EffectShaderResourceVariable *This);
2603
2604    ID3D10EffectRasterizerVariable * (STDMETHODCALLTYPE *AsRasterizer)(
2605        ID3D10EffectShaderResourceVariable *This);
2606
2607    ID3D10EffectSamplerVariable * (STDMETHODCALLTYPE *AsSampler)(
2608        ID3D10EffectShaderResourceVariable *This);
2609
2610    HRESULT (STDMETHODCALLTYPE *SetRawValue)(
2611        ID3D10EffectShaderResourceVariable *This,
2612        void *data,
2613        UINT offset,
2614        UINT count);
2615
2616    HRESULT (STDMETHODCALLTYPE *GetRawValue)(
2617        ID3D10EffectShaderResourceVariable *This,
2618        void *data,
2619        UINT offset,
2620        UINT count);
2621
2622    /*** ID3D10EffectShaderResourceVariable methods ***/
2623    HRESULT (STDMETHODCALLTYPE *SetResource)(
2624        ID3D10EffectShaderResourceVariable *This,
2625        ID3D10ShaderResourceView *resource);
2626
2627    HRESULT (STDMETHODCALLTYPE *GetResource)(
2628        ID3D10EffectShaderResourceVariable *This,
2629        ID3D10ShaderResourceView **resource);
2630
2631    HRESULT (STDMETHODCALLTYPE *SetResourceArray)(
2632        ID3D10EffectShaderResourceVariable *This,
2633        ID3D10ShaderResourceView **resources,
2634        UINT offset,
2635        UINT count);
2636
2637    HRESULT (STDMETHODCALLTYPE *GetResourceArray)(
2638        ID3D10EffectShaderResourceVariable *This,
2639        ID3D10ShaderResourceView **resources,
2640        UINT offset,
2641        UINT count);
2642
2643    END_INTERFACE
2644} ID3D10EffectShaderResourceVariableVtbl;
2645
2646interface ID3D10EffectShaderResourceVariable {
2647    CONST_VTBL ID3D10EffectShaderResourceVariableVtbl* lpVtbl;
2648};
2649
2650#ifdef COBJMACROS
2651#ifndef WIDL_C_INLINE_WRAPPERS
2652/*** ID3D10EffectVariable methods ***/
2653#define ID3D10EffectShaderResourceVariable_IsValid(This) (This)->lpVtbl->IsValid(This)
2654#define ID3D10EffectShaderResourceVariable_GetType(This) (This)->lpVtbl->GetType(This)
2655#define ID3D10EffectShaderResourceVariable_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
2656#define ID3D10EffectShaderResourceVariable_GetAnnotationByIndex(This,index) (This)->lpVtbl->GetAnnotationByIndex(This,index)
2657#define ID3D10EffectShaderResourceVariable_GetAnnotationByName(This,name) (This)->lpVtbl->GetAnnotationByName(This,name)
2658#define ID3D10EffectShaderResourceVariable_GetMemberByIndex(This,index) (This)->lpVtbl->GetMemberByIndex(This,index)
2659#define ID3D10EffectShaderResourceVariable_GetMemberByName(This,name) (This)->lpVtbl->GetMemberByName(This,name)
2660#define ID3D10EffectShaderResourceVariable_GetMemberBySemantic(This,semantic) (This)->lpVtbl->GetMemberBySemantic(This,semantic)
2661#define ID3D10EffectShaderResourceVariable_GetElement(This,index) (This)->lpVtbl->GetElement(This,index)
2662#define ID3D10EffectShaderResourceVariable_GetParentConstantBuffer(This) (This)->lpVtbl->GetParentConstantBuffer(This)
2663#define ID3D10EffectShaderResourceVariable_AsScalar(This) (This)->lpVtbl->AsScalar(This)
2664#define ID3D10EffectShaderResourceVariable_AsVector(This) (This)->lpVtbl->AsVector(This)
2665#define ID3D10EffectShaderResourceVariable_AsMatrix(This) (This)->lpVtbl->AsMatrix(This)
2666#define ID3D10EffectShaderResourceVariable_AsString(This) (This)->lpVtbl->AsString(This)
2667#define ID3D10EffectShaderResourceVariable_AsShaderResource(This) (This)->lpVtbl->AsShaderResource(This)
2668#define ID3D10EffectShaderResourceVariable_AsRenderTargetView(This) (This)->lpVtbl->AsRenderTargetView(This)
2669#define ID3D10EffectShaderResourceVariable_AsDepthStencilView(This) (This)->lpVtbl->AsDepthStencilView(This)
2670#define ID3D10EffectShaderResourceVariable_AsConstantBuffer(This) (This)->lpVtbl->AsConstantBuffer(This)
2671#define ID3D10EffectShaderResourceVariable_AsShader(This) (This)->lpVtbl->AsShader(This)
2672#define ID3D10EffectShaderResourceVariable_AsBlend(This) (This)->lpVtbl->AsBlend(This)
2673#define ID3D10EffectShaderResourceVariable_AsDepthStencil(This) (This)->lpVtbl->AsDepthStencil(This)
2674#define ID3D10EffectShaderResourceVariable_AsRasterizer(This) (This)->lpVtbl->AsRasterizer(This)
2675#define ID3D10EffectShaderResourceVariable_AsSampler(This) (This)->lpVtbl->AsSampler(This)
2676#define ID3D10EffectShaderResourceVariable_SetRawValue(This,data,offset,count) (This)->lpVtbl->SetRawValue(This,data,offset,count)
2677#define ID3D10EffectShaderResourceVariable_GetRawValue(This,data,offset,count) (This)->lpVtbl->GetRawValue(This,data,offset,count)
2678/*** ID3D10EffectShaderResourceVariable methods ***/
2679#define ID3D10EffectShaderResourceVariable_SetResource(This,resource) (This)->lpVtbl->SetResource(This,resource)
2680#define ID3D10EffectShaderResourceVariable_GetResource(This,resource) (This)->lpVtbl->GetResource(This,resource)
2681#define ID3D10EffectShaderResourceVariable_SetResourceArray(This,resources,offset,count) (This)->lpVtbl->SetResourceArray(This,resources,offset,count)
2682#define ID3D10EffectShaderResourceVariable_GetResourceArray(This,resources,offset,count) (This)->lpVtbl->GetResourceArray(This,resources,offset,count)
2683#else
2684/*** ID3D10EffectVariable methods ***/
2685static inline WINBOOL ID3D10EffectShaderResourceVariable_IsValid(ID3D10EffectShaderResourceVariable* This) {
2686    return This->lpVtbl->IsValid(This);
2687}
2688static inline ID3D10EffectType * ID3D10EffectShaderResourceVariable_GetType(ID3D10EffectShaderResourceVariable* This) {
2689    return This->lpVtbl->GetType(This);
2690}
2691static inline HRESULT ID3D10EffectShaderResourceVariable_GetDesc(ID3D10EffectShaderResourceVariable* This,D3D10_EFFECT_VARIABLE_DESC *desc) {
2692    return This->lpVtbl->GetDesc(This,desc);
2693}
2694static inline ID3D10EffectVariable * ID3D10EffectShaderResourceVariable_GetAnnotationByIndex(ID3D10EffectShaderResourceVariable* This,UINT index) {
2695    return This->lpVtbl->GetAnnotationByIndex(This,index);
2696}
2697static inline ID3D10EffectVariable * ID3D10EffectShaderResourceVariable_GetAnnotationByName(ID3D10EffectShaderResourceVariable* This,const char *name) {
2698    return This->lpVtbl->GetAnnotationByName(This,name);
2699}
2700static inline ID3D10EffectVariable * ID3D10EffectShaderResourceVariable_GetMemberByIndex(ID3D10EffectShaderResourceVariable* This,UINT index) {
2701    return This->lpVtbl->GetMemberByIndex(This,index);
2702}
2703static inline ID3D10EffectVariable * ID3D10EffectShaderResourceVariable_GetMemberByName(ID3D10EffectShaderResourceVariable* This,const char *name) {
2704    return This->lpVtbl->GetMemberByName(This,name);
2705}
2706static inline ID3D10EffectVariable * ID3D10EffectShaderResourceVariable_GetMemberBySemantic(ID3D10EffectShaderResourceVariable* This,const char *semantic) {
2707    return This->lpVtbl->GetMemberBySemantic(This,semantic);
2708}
2709static inline ID3D10EffectVariable * ID3D10EffectShaderResourceVariable_GetElement(ID3D10EffectShaderResourceVariable* This,UINT index) {
2710    return This->lpVtbl->GetElement(This,index);
2711}
2712static inline ID3D10EffectConstantBuffer * ID3D10EffectShaderResourceVariable_GetParentConstantBuffer(ID3D10EffectShaderResourceVariable* This) {
2713    return This->lpVtbl->GetParentConstantBuffer(This);
2714}
2715static inline ID3D10EffectScalarVariable * ID3D10EffectShaderResourceVariable_AsScalar(ID3D10EffectShaderResourceVariable* This) {
2716    return This->lpVtbl->AsScalar(This);
2717}
2718static inline ID3D10EffectVectorVariable * ID3D10EffectShaderResourceVariable_AsVector(ID3D10EffectShaderResourceVariable* This) {
2719    return This->lpVtbl->AsVector(This);
2720}
2721static inline ID3D10EffectMatrixVariable * ID3D10EffectShaderResourceVariable_AsMatrix(ID3D10EffectShaderResourceVariable* This) {
2722    return This->lpVtbl->AsMatrix(This);
2723}
2724static inline ID3D10EffectStringVariable * ID3D10EffectShaderResourceVariable_AsString(ID3D10EffectShaderResourceVariable* This) {
2725    return This->lpVtbl->AsString(This);
2726}
2727static inline ID3D10EffectShaderResourceVariable * ID3D10EffectShaderResourceVariable_AsShaderResource(ID3D10EffectShaderResourceVariable* This) {
2728    return This->lpVtbl->AsShaderResource(This);
2729}
2730static inline ID3D10EffectRenderTargetViewVariable * ID3D10EffectShaderResourceVariable_AsRenderTargetView(ID3D10EffectShaderResourceVariable* This) {
2731    return This->lpVtbl->AsRenderTargetView(This);
2732}
2733static inline ID3D10EffectDepthStencilViewVariable * ID3D10EffectShaderResourceVariable_AsDepthStencilView(ID3D10EffectShaderResourceVariable* This) {
2734    return This->lpVtbl->AsDepthStencilView(This);
2735}
2736static inline ID3D10EffectConstantBuffer * ID3D10EffectShaderResourceVariable_AsConstantBuffer(ID3D10EffectShaderResourceVariable* This) {
2737    return This->lpVtbl->AsConstantBuffer(This);
2738}
2739static inline ID3D10EffectShaderVariable * ID3D10EffectShaderResourceVariable_AsShader(ID3D10EffectShaderResourceVariable* This) {
2740    return This->lpVtbl->AsShader(This);
2741}
2742static inline ID3D10EffectBlendVariable * ID3D10EffectShaderResourceVariable_AsBlend(ID3D10EffectShaderResourceVariable* This) {
2743    return This->lpVtbl->AsBlend(This);
2744}
2745static inline ID3D10EffectDepthStencilVariable * ID3D10EffectShaderResourceVariable_AsDepthStencil(ID3D10EffectShaderResourceVariable* This) {
2746    return This->lpVtbl->AsDepthStencil(This);
2747}
2748static inline ID3D10EffectRasterizerVariable * ID3D10EffectShaderResourceVariable_AsRasterizer(ID3D10EffectShaderResourceVariable* This) {
2749    return This->lpVtbl->AsRasterizer(This);
2750}
2751static inline ID3D10EffectSamplerVariable * ID3D10EffectShaderResourceVariable_AsSampler(ID3D10EffectShaderResourceVariable* This) {
2752    return This->lpVtbl->AsSampler(This);
2753}
2754static inline HRESULT ID3D10EffectShaderResourceVariable_SetRawValue(ID3D10EffectShaderResourceVariable* This,void *data,UINT offset,UINT count) {
2755    return This->lpVtbl->SetRawValue(This,data,offset,count);
2756}
2757static inline HRESULT ID3D10EffectShaderResourceVariable_GetRawValue(ID3D10EffectShaderResourceVariable* This,void *data,UINT offset,UINT count) {
2758    return This->lpVtbl->GetRawValue(This,data,offset,count);
2759}
2760/*** ID3D10EffectShaderResourceVariable methods ***/
2761static inline HRESULT ID3D10EffectShaderResourceVariable_SetResource(ID3D10EffectShaderResourceVariable* This,ID3D10ShaderResourceView *resource) {
2762    return This->lpVtbl->SetResource(This,resource);
2763}
2764static inline HRESULT ID3D10EffectShaderResourceVariable_GetResource(ID3D10EffectShaderResourceVariable* This,ID3D10ShaderResourceView **resource) {
2765    return This->lpVtbl->GetResource(This,resource);
2766}
2767static inline HRESULT ID3D10EffectShaderResourceVariable_SetResourceArray(ID3D10EffectShaderResourceVariable* This,ID3D10ShaderResourceView **resources,UINT offset,UINT count) {
2768    return This->lpVtbl->SetResourceArray(This,resources,offset,count);
2769}
2770static inline HRESULT ID3D10EffectShaderResourceVariable_GetResourceArray(ID3D10EffectShaderResourceVariable* This,ID3D10ShaderResourceView **resources,UINT offset,UINT count) {
2771    return This->lpVtbl->GetResourceArray(This,resources,offset,count);
2772}
2773#endif
2774#endif
2775
2776#endif
2777
2778
2779#endif  /* __ID3D10EffectShaderResourceVariable_INTERFACE_DEFINED__ */
2780
2781/*****************************************************************************
2782 * ID3D10EffectRenderTargetViewVariable interface
2783 */
2784#ifndef __ID3D10EffectRenderTargetViewVariable_INTERFACE_DEFINED__
2785#define __ID3D10EffectRenderTargetViewVariable_INTERFACE_DEFINED__
2786
2787DEFINE_GUID(IID_ID3D10EffectRenderTargetViewVariable, 0x28ca0cc3, 0xc2c9, 0x40bb, 0xb5,0x7f, 0x67,0xb7,0x37,0x12,0x2b,0x17);
2788#if defined(__cplusplus) && !defined(CINTERFACE)
2789MIDL_INTERFACE("28ca0cc3-c2c9-40bb-b57f-67b737122b17")
2790ID3D10EffectRenderTargetViewVariable : public ID3D10EffectVariable
2791{
2792    virtual HRESULT STDMETHODCALLTYPE SetRenderTarget(
2793        ID3D10RenderTargetView *view) = 0;
2794
2795    virtual HRESULT STDMETHODCALLTYPE GetRenderTarget(
2796        ID3D10RenderTargetView **view) = 0;
2797
2798    virtual HRESULT STDMETHODCALLTYPE SetRenderTargetArray(
2799        ID3D10RenderTargetView **views,
2800        UINT offset,
2801        UINT count) = 0;
2802
2803    virtual HRESULT STDMETHODCALLTYPE GetRenderTargetArray(
2804        ID3D10RenderTargetView **views,
2805        UINT offset,
2806        UINT count) = 0;
2807
2808};
2809#ifdef __CRT_UUID_DECL
2810__CRT_UUID_DECL(ID3D10EffectRenderTargetViewVariable, 0x28ca0cc3, 0xc2c9, 0x40bb, 0xb5,0x7f, 0x67,0xb7,0x37,0x12,0x2b,0x17)
2811#endif
2812#else
2813typedef struct ID3D10EffectRenderTargetViewVariableVtbl {
2814    BEGIN_INTERFACE
2815
2816    /*** ID3D10EffectVariable methods ***/
2817    WINBOOL (STDMETHODCALLTYPE *IsValid)(
2818        ID3D10EffectRenderTargetViewVariable *This);
2819
2820    ID3D10EffectType * (STDMETHODCALLTYPE *GetType)(
2821        ID3D10EffectRenderTargetViewVariable *This);
2822
2823    HRESULT (STDMETHODCALLTYPE *GetDesc)(
2824        ID3D10EffectRenderTargetViewVariable *This,
2825        D3D10_EFFECT_VARIABLE_DESC *desc);
2826
2827    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByIndex)(
2828        ID3D10EffectRenderTargetViewVariable *This,
2829        UINT index);
2830
2831    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByName)(
2832        ID3D10EffectRenderTargetViewVariable *This,
2833        const char *name);
2834
2835    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByIndex)(
2836        ID3D10EffectRenderTargetViewVariable *This,
2837        UINT index);
2838
2839    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByName)(
2840        ID3D10EffectRenderTargetViewVariable *This,
2841        const char *name);
2842
2843    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberBySemantic)(
2844        ID3D10EffectRenderTargetViewVariable *This,
2845        const char *semantic);
2846
2847    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetElement)(
2848        ID3D10EffectRenderTargetViewVariable *This,
2849        UINT index);
2850
2851    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *GetParentConstantBuffer)(
2852        ID3D10EffectRenderTargetViewVariable *This);
2853
2854    ID3D10EffectScalarVariable * (STDMETHODCALLTYPE *AsScalar)(
2855        ID3D10EffectRenderTargetViewVariable *This);
2856
2857    ID3D10EffectVectorVariable * (STDMETHODCALLTYPE *AsVector)(
2858        ID3D10EffectRenderTargetViewVariable *This);
2859
2860    ID3D10EffectMatrixVariable * (STDMETHODCALLTYPE *AsMatrix)(
2861        ID3D10EffectRenderTargetViewVariable *This);
2862
2863    ID3D10EffectStringVariable * (STDMETHODCALLTYPE *AsString)(
2864        ID3D10EffectRenderTargetViewVariable *This);
2865
2866    ID3D10EffectShaderResourceVariable * (STDMETHODCALLTYPE *AsShaderResource)(
2867        ID3D10EffectRenderTargetViewVariable *This);
2868
2869    ID3D10EffectRenderTargetViewVariable * (STDMETHODCALLTYPE *AsRenderTargetView)(
2870        ID3D10EffectRenderTargetViewVariable *This);
2871
2872    ID3D10EffectDepthStencilViewVariable * (STDMETHODCALLTYPE *AsDepthStencilView)(
2873        ID3D10EffectRenderTargetViewVariable *This);
2874
2875    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *AsConstantBuffer)(
2876        ID3D10EffectRenderTargetViewVariable *This);
2877
2878    ID3D10EffectShaderVariable * (STDMETHODCALLTYPE *AsShader)(
2879        ID3D10EffectRenderTargetViewVariable *This);
2880
2881    ID3D10EffectBlendVariable * (STDMETHODCALLTYPE *AsBlend)(
2882        ID3D10EffectRenderTargetViewVariable *This);
2883
2884    ID3D10EffectDepthStencilVariable * (STDMETHODCALLTYPE *AsDepthStencil)(
2885        ID3D10EffectRenderTargetViewVariable *This);
2886
2887    ID3D10EffectRasterizerVariable * (STDMETHODCALLTYPE *AsRasterizer)(
2888        ID3D10EffectRenderTargetViewVariable *This);
2889
2890    ID3D10EffectSamplerVariable * (STDMETHODCALLTYPE *AsSampler)(
2891        ID3D10EffectRenderTargetViewVariable *This);
2892
2893    HRESULT (STDMETHODCALLTYPE *SetRawValue)(
2894        ID3D10EffectRenderTargetViewVariable *This,
2895        void *data,
2896        UINT offset,
2897        UINT count);
2898
2899    HRESULT (STDMETHODCALLTYPE *GetRawValue)(
2900        ID3D10EffectRenderTargetViewVariable *This,
2901        void *data,
2902        UINT offset,
2903        UINT count);
2904
2905    /*** ID3D10EffectRenderTargetViewVariable methods ***/
2906    HRESULT (STDMETHODCALLTYPE *SetRenderTarget)(
2907        ID3D10EffectRenderTargetViewVariable *This,
2908        ID3D10RenderTargetView *view);
2909
2910    HRESULT (STDMETHODCALLTYPE *GetRenderTarget)(
2911        ID3D10EffectRenderTargetViewVariable *This,
2912        ID3D10RenderTargetView **view);
2913
2914    HRESULT (STDMETHODCALLTYPE *SetRenderTargetArray)(
2915        ID3D10EffectRenderTargetViewVariable *This,
2916        ID3D10RenderTargetView **views,
2917        UINT offset,
2918        UINT count);
2919
2920    HRESULT (STDMETHODCALLTYPE *GetRenderTargetArray)(
2921        ID3D10EffectRenderTargetViewVariable *This,
2922        ID3D10RenderTargetView **views,
2923        UINT offset,
2924        UINT count);
2925
2926    END_INTERFACE
2927} ID3D10EffectRenderTargetViewVariableVtbl;
2928
2929interface ID3D10EffectRenderTargetViewVariable {
2930    CONST_VTBL ID3D10EffectRenderTargetViewVariableVtbl* lpVtbl;
2931};
2932
2933#ifdef COBJMACROS
2934#ifndef WIDL_C_INLINE_WRAPPERS
2935/*** ID3D10EffectVariable methods ***/
2936#define ID3D10EffectRenderTargetViewVariable_IsValid(This) (This)->lpVtbl->IsValid(This)
2937#define ID3D10EffectRenderTargetViewVariable_GetType(This) (This)->lpVtbl->GetType(This)
2938#define ID3D10EffectRenderTargetViewVariable_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
2939#define ID3D10EffectRenderTargetViewVariable_GetAnnotationByIndex(This,index) (This)->lpVtbl->GetAnnotationByIndex(This,index)
2940#define ID3D10EffectRenderTargetViewVariable_GetAnnotationByName(This,name) (This)->lpVtbl->GetAnnotationByName(This,name)
2941#define ID3D10EffectRenderTargetViewVariable_GetMemberByIndex(This,index) (This)->lpVtbl->GetMemberByIndex(This,index)
2942#define ID3D10EffectRenderTargetViewVariable_GetMemberByName(This,name) (This)->lpVtbl->GetMemberByName(This,name)
2943#define ID3D10EffectRenderTargetViewVariable_GetMemberBySemantic(This,semantic) (This)->lpVtbl->GetMemberBySemantic(This,semantic)
2944#define ID3D10EffectRenderTargetViewVariable_GetElement(This,index) (This)->lpVtbl->GetElement(This,index)
2945#define ID3D10EffectRenderTargetViewVariable_GetParentConstantBuffer(This) (This)->lpVtbl->GetParentConstantBuffer(This)
2946#define ID3D10EffectRenderTargetViewVariable_AsScalar(This) (This)->lpVtbl->AsScalar(This)
2947#define ID3D10EffectRenderTargetViewVariable_AsVector(This) (This)->lpVtbl->AsVector(This)
2948#define ID3D10EffectRenderTargetViewVariable_AsMatrix(This) (This)->lpVtbl->AsMatrix(This)
2949#define ID3D10EffectRenderTargetViewVariable_AsString(This) (This)->lpVtbl->AsString(This)
2950#define ID3D10EffectRenderTargetViewVariable_AsShaderResource(This) (This)->lpVtbl->AsShaderResource(This)
2951#define ID3D10EffectRenderTargetViewVariable_AsRenderTargetView(This) (This)->lpVtbl->AsRenderTargetView(This)
2952#define ID3D10EffectRenderTargetViewVariable_AsDepthStencilView(This) (This)->lpVtbl->AsDepthStencilView(This)
2953#define ID3D10EffectRenderTargetViewVariable_AsConstantBuffer(This) (This)->lpVtbl->AsConstantBuffer(This)
2954#define ID3D10EffectRenderTargetViewVariable_AsShader(This) (This)->lpVtbl->AsShader(This)
2955#define ID3D10EffectRenderTargetViewVariable_AsBlend(This) (This)->lpVtbl->AsBlend(This)
2956#define ID3D10EffectRenderTargetViewVariable_AsDepthStencil(This) (This)->lpVtbl->AsDepthStencil(This)
2957#define ID3D10EffectRenderTargetViewVariable_AsRasterizer(This) (This)->lpVtbl->AsRasterizer(This)
2958#define ID3D10EffectRenderTargetViewVariable_AsSampler(This) (This)->lpVtbl->AsSampler(This)
2959#define ID3D10EffectRenderTargetViewVariable_SetRawValue(This,data,offset,count) (This)->lpVtbl->SetRawValue(This,data,offset,count)
2960#define ID3D10EffectRenderTargetViewVariable_GetRawValue(This,data,offset,count) (This)->lpVtbl->GetRawValue(This,data,offset,count)
2961/*** ID3D10EffectRenderTargetViewVariable methods ***/
2962#define ID3D10EffectRenderTargetViewVariable_SetRenderTarget(This,view) (This)->lpVtbl->SetRenderTarget(This,view)
2963#define ID3D10EffectRenderTargetViewVariable_GetRenderTarget(This,view) (This)->lpVtbl->GetRenderTarget(This,view)
2964#define ID3D10EffectRenderTargetViewVariable_SetRenderTargetArray(This,views,offset,count) (This)->lpVtbl->SetRenderTargetArray(This,views,offset,count)
2965#define ID3D10EffectRenderTargetViewVariable_GetRenderTargetArray(This,views,offset,count) (This)->lpVtbl->GetRenderTargetArray(This,views,offset,count)
2966#else
2967/*** ID3D10EffectVariable methods ***/
2968static inline WINBOOL ID3D10EffectRenderTargetViewVariable_IsValid(ID3D10EffectRenderTargetViewVariable* This) {
2969    return This->lpVtbl->IsValid(This);
2970}
2971static inline ID3D10EffectType * ID3D10EffectRenderTargetViewVariable_GetType(ID3D10EffectRenderTargetViewVariable* This) {
2972    return This->lpVtbl->GetType(This);
2973}
2974static inline HRESULT ID3D10EffectRenderTargetViewVariable_GetDesc(ID3D10EffectRenderTargetViewVariable* This,D3D10_EFFECT_VARIABLE_DESC *desc) {
2975    return This->lpVtbl->GetDesc(This,desc);
2976}
2977static inline ID3D10EffectVariable * ID3D10EffectRenderTargetViewVariable_GetAnnotationByIndex(ID3D10EffectRenderTargetViewVariable* This,UINT index) {
2978    return This->lpVtbl->GetAnnotationByIndex(This,index);
2979}
2980static inline ID3D10EffectVariable * ID3D10EffectRenderTargetViewVariable_GetAnnotationByName(ID3D10EffectRenderTargetViewVariable* This,const char *name) {
2981    return This->lpVtbl->GetAnnotationByName(This,name);
2982}
2983static inline ID3D10EffectVariable * ID3D10EffectRenderTargetViewVariable_GetMemberByIndex(ID3D10EffectRenderTargetViewVariable* This,UINT index) {
2984    return This->lpVtbl->GetMemberByIndex(This,index);
2985}
2986static inline ID3D10EffectVariable * ID3D10EffectRenderTargetViewVariable_GetMemberByName(ID3D10EffectRenderTargetViewVariable* This,const char *name) {
2987    return This->lpVtbl->GetMemberByName(This,name);
2988}
2989static inline ID3D10EffectVariable * ID3D10EffectRenderTargetViewVariable_GetMemberBySemantic(ID3D10EffectRenderTargetViewVariable* This,const char *semantic) {
2990    return This->lpVtbl->GetMemberBySemantic(This,semantic);
2991}
2992static inline ID3D10EffectVariable * ID3D10EffectRenderTargetViewVariable_GetElement(ID3D10EffectRenderTargetViewVariable* This,UINT index) {
2993    return This->lpVtbl->GetElement(This,index);
2994}
2995static inline ID3D10EffectConstantBuffer * ID3D10EffectRenderTargetViewVariable_GetParentConstantBuffer(ID3D10EffectRenderTargetViewVariable* This) {
2996    return This->lpVtbl->GetParentConstantBuffer(This);
2997}
2998static inline ID3D10EffectScalarVariable * ID3D10EffectRenderTargetViewVariable_AsScalar(ID3D10EffectRenderTargetViewVariable* This) {
2999    return This->lpVtbl->AsScalar(This);
3000}
3001static inline ID3D10EffectVectorVariable * ID3D10EffectRenderTargetViewVariable_AsVector(ID3D10EffectRenderTargetViewVariable* This) {
3002    return This->lpVtbl->AsVector(This);
3003}
3004static inline ID3D10EffectMatrixVariable * ID3D10EffectRenderTargetViewVariable_AsMatrix(ID3D10EffectRenderTargetViewVariable* This) {
3005    return This->lpVtbl->AsMatrix(This);
3006}
3007static inline ID3D10EffectStringVariable * ID3D10EffectRenderTargetViewVariable_AsString(ID3D10EffectRenderTargetViewVariable* This) {
3008    return This->lpVtbl->AsString(This);
3009}
3010static inline ID3D10EffectShaderResourceVariable * ID3D10EffectRenderTargetViewVariable_AsShaderResource(ID3D10EffectRenderTargetViewVariable* This) {
3011    return This->lpVtbl->AsShaderResource(This);
3012}
3013static inline ID3D10EffectRenderTargetViewVariable * ID3D10EffectRenderTargetViewVariable_AsRenderTargetView(ID3D10EffectRenderTargetViewVariable* This) {
3014    return This->lpVtbl->AsRenderTargetView(This);
3015}
3016static inline ID3D10EffectDepthStencilViewVariable * ID3D10EffectRenderTargetViewVariable_AsDepthStencilView(ID3D10EffectRenderTargetViewVariable* This) {
3017    return This->lpVtbl->AsDepthStencilView(This);
3018}
3019static inline ID3D10EffectConstantBuffer * ID3D10EffectRenderTargetViewVariable_AsConstantBuffer(ID3D10EffectRenderTargetViewVariable* This) {
3020    return This->lpVtbl->AsConstantBuffer(This);
3021}
3022static inline ID3D10EffectShaderVariable * ID3D10EffectRenderTargetViewVariable_AsShader(ID3D10EffectRenderTargetViewVariable* This) {
3023    return This->lpVtbl->AsShader(This);
3024}
3025static inline ID3D10EffectBlendVariable * ID3D10EffectRenderTargetViewVariable_AsBlend(ID3D10EffectRenderTargetViewVariable* This) {
3026    return This->lpVtbl->AsBlend(This);
3027}
3028static inline ID3D10EffectDepthStencilVariable * ID3D10EffectRenderTargetViewVariable_AsDepthStencil(ID3D10EffectRenderTargetViewVariable* This) {
3029    return This->lpVtbl->AsDepthStencil(This);
3030}
3031static inline ID3D10EffectRasterizerVariable * ID3D10EffectRenderTargetViewVariable_AsRasterizer(ID3D10EffectRenderTargetViewVariable* This) {
3032    return This->lpVtbl->AsRasterizer(This);
3033}
3034static inline ID3D10EffectSamplerVariable * ID3D10EffectRenderTargetViewVariable_AsSampler(ID3D10EffectRenderTargetViewVariable* This) {
3035    return This->lpVtbl->AsSampler(This);
3036}
3037static inline HRESULT ID3D10EffectRenderTargetViewVariable_SetRawValue(ID3D10EffectRenderTargetViewVariable* This,void *data,UINT offset,UINT count) {
3038    return This->lpVtbl->SetRawValue(This,data,offset,count);
3039}
3040static inline HRESULT ID3D10EffectRenderTargetViewVariable_GetRawValue(ID3D10EffectRenderTargetViewVariable* This,void *data,UINT offset,UINT count) {
3041    return This->lpVtbl->GetRawValue(This,data,offset,count);
3042}
3043/*** ID3D10EffectRenderTargetViewVariable methods ***/
3044static inline HRESULT ID3D10EffectRenderTargetViewVariable_SetRenderTarget(ID3D10EffectRenderTargetViewVariable* This,ID3D10RenderTargetView *view) {
3045    return This->lpVtbl->SetRenderTarget(This,view);
3046}
3047static inline HRESULT ID3D10EffectRenderTargetViewVariable_GetRenderTarget(ID3D10EffectRenderTargetViewVariable* This,ID3D10RenderTargetView **view) {
3048    return This->lpVtbl->GetRenderTarget(This,view);
3049}
3050static inline HRESULT ID3D10EffectRenderTargetViewVariable_SetRenderTargetArray(ID3D10EffectRenderTargetViewVariable* This,ID3D10RenderTargetView **views,UINT offset,UINT count) {
3051    return This->lpVtbl->SetRenderTargetArray(This,views,offset,count);
3052}
3053static inline HRESULT ID3D10EffectRenderTargetViewVariable_GetRenderTargetArray(ID3D10EffectRenderTargetViewVariable* This,ID3D10RenderTargetView **views,UINT offset,UINT count) {
3054    return This->lpVtbl->GetRenderTargetArray(This,views,offset,count);
3055}
3056#endif
3057#endif
3058
3059#endif
3060
3061
3062#endif  /* __ID3D10EffectRenderTargetViewVariable_INTERFACE_DEFINED__ */
3063
3064/*****************************************************************************
3065 * ID3D10EffectDepthStencilViewVariable interface
3066 */
3067#ifndef __ID3D10EffectDepthStencilViewVariable_INTERFACE_DEFINED__
3068#define __ID3D10EffectDepthStencilViewVariable_INTERFACE_DEFINED__
3069
3070DEFINE_GUID(IID_ID3D10EffectDepthStencilViewVariable, 0x3e02c918, 0xcc79, 0x4985, 0xb6,0x22, 0x2d,0x92,0xad,0x70,0x16,0x23);
3071#if defined(__cplusplus) && !defined(CINTERFACE)
3072MIDL_INTERFACE("3e02c918-cc79-4985-b622-2d92ad701623")
3073ID3D10EffectDepthStencilViewVariable : public ID3D10EffectVariable
3074{
3075    virtual HRESULT STDMETHODCALLTYPE SetDepthStencil(
3076        ID3D10DepthStencilView *view) = 0;
3077
3078    virtual HRESULT STDMETHODCALLTYPE GetDepthStencil(
3079        ID3D10DepthStencilView **view) = 0;
3080
3081    virtual HRESULT STDMETHODCALLTYPE SetDepthStencilArray(
3082        ID3D10DepthStencilView **views,
3083        UINT offset,
3084        UINT count) = 0;
3085
3086    virtual HRESULT STDMETHODCALLTYPE GetDepthStencilArray(
3087        ID3D10DepthStencilView **views,
3088        UINT offset,
3089        UINT count) = 0;
3090
3091};
3092#ifdef __CRT_UUID_DECL
3093__CRT_UUID_DECL(ID3D10EffectDepthStencilViewVariable, 0x3e02c918, 0xcc79, 0x4985, 0xb6,0x22, 0x2d,0x92,0xad,0x70,0x16,0x23)
3094#endif
3095#else
3096typedef struct ID3D10EffectDepthStencilViewVariableVtbl {
3097    BEGIN_INTERFACE
3098
3099    /*** ID3D10EffectVariable methods ***/
3100    WINBOOL (STDMETHODCALLTYPE *IsValid)(
3101        ID3D10EffectDepthStencilViewVariable *This);
3102
3103    ID3D10EffectType * (STDMETHODCALLTYPE *GetType)(
3104        ID3D10EffectDepthStencilViewVariable *This);
3105
3106    HRESULT (STDMETHODCALLTYPE *GetDesc)(
3107        ID3D10EffectDepthStencilViewVariable *This,
3108        D3D10_EFFECT_VARIABLE_DESC *desc);
3109
3110    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByIndex)(
3111        ID3D10EffectDepthStencilViewVariable *This,
3112        UINT index);
3113
3114    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByName)(
3115        ID3D10EffectDepthStencilViewVariable *This,
3116        const char *name);
3117
3118    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByIndex)(
3119        ID3D10EffectDepthStencilViewVariable *This,
3120        UINT index);
3121
3122    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByName)(
3123        ID3D10EffectDepthStencilViewVariable *This,
3124        const char *name);
3125
3126    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberBySemantic)(
3127        ID3D10EffectDepthStencilViewVariable *This,
3128        const char *semantic);
3129
3130    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetElement)(
3131        ID3D10EffectDepthStencilViewVariable *This,
3132        UINT index);
3133
3134    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *GetParentConstantBuffer)(
3135        ID3D10EffectDepthStencilViewVariable *This);
3136
3137    ID3D10EffectScalarVariable * (STDMETHODCALLTYPE *AsScalar)(
3138        ID3D10EffectDepthStencilViewVariable *This);
3139
3140    ID3D10EffectVectorVariable * (STDMETHODCALLTYPE *AsVector)(
3141        ID3D10EffectDepthStencilViewVariable *This);
3142
3143    ID3D10EffectMatrixVariable * (STDMETHODCALLTYPE *AsMatrix)(
3144        ID3D10EffectDepthStencilViewVariable *This);
3145
3146    ID3D10EffectStringVariable * (STDMETHODCALLTYPE *AsString)(
3147        ID3D10EffectDepthStencilViewVariable *This);
3148
3149    ID3D10EffectShaderResourceVariable * (STDMETHODCALLTYPE *AsShaderResource)(
3150        ID3D10EffectDepthStencilViewVariable *This);
3151
3152    ID3D10EffectRenderTargetViewVariable * (STDMETHODCALLTYPE *AsRenderTargetView)(
3153        ID3D10EffectDepthStencilViewVariable *This);
3154
3155    ID3D10EffectDepthStencilViewVariable * (STDMETHODCALLTYPE *AsDepthStencilView)(
3156        ID3D10EffectDepthStencilViewVariable *This);
3157
3158    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *AsConstantBuffer)(
3159        ID3D10EffectDepthStencilViewVariable *This);
3160
3161    ID3D10EffectShaderVariable * (STDMETHODCALLTYPE *AsShader)(
3162        ID3D10EffectDepthStencilViewVariable *This);
3163
3164    ID3D10EffectBlendVariable * (STDMETHODCALLTYPE *AsBlend)(
3165        ID3D10EffectDepthStencilViewVariable *This);
3166
3167    ID3D10EffectDepthStencilVariable * (STDMETHODCALLTYPE *AsDepthStencil)(
3168        ID3D10EffectDepthStencilViewVariable *This);
3169
3170    ID3D10EffectRasterizerVariable * (STDMETHODCALLTYPE *AsRasterizer)(
3171        ID3D10EffectDepthStencilViewVariable *This);
3172
3173    ID3D10EffectSamplerVariable * (STDMETHODCALLTYPE *AsSampler)(
3174        ID3D10EffectDepthStencilViewVariable *This);
3175
3176    HRESULT (STDMETHODCALLTYPE *SetRawValue)(
3177        ID3D10EffectDepthStencilViewVariable *This,
3178        void *data,
3179        UINT offset,
3180        UINT count);
3181
3182    HRESULT (STDMETHODCALLTYPE *GetRawValue)(
3183        ID3D10EffectDepthStencilViewVariable *This,
3184        void *data,
3185        UINT offset,
3186        UINT count);
3187
3188    /*** ID3D10EffectDepthStencilViewVariable methods ***/
3189    HRESULT (STDMETHODCALLTYPE *SetDepthStencil)(
3190        ID3D10EffectDepthStencilViewVariable *This,
3191        ID3D10DepthStencilView *view);
3192
3193    HRESULT (STDMETHODCALLTYPE *GetDepthStencil)(
3194        ID3D10EffectDepthStencilViewVariable *This,
3195        ID3D10DepthStencilView **view);
3196
3197    HRESULT (STDMETHODCALLTYPE *SetDepthStencilArray)(
3198        ID3D10EffectDepthStencilViewVariable *This,
3199        ID3D10DepthStencilView **views,
3200        UINT offset,
3201        UINT count);
3202
3203    HRESULT (STDMETHODCALLTYPE *GetDepthStencilArray)(
3204        ID3D10EffectDepthStencilViewVariable *This,
3205        ID3D10DepthStencilView **views,
3206        UINT offset,
3207        UINT count);
3208
3209    END_INTERFACE
3210} ID3D10EffectDepthStencilViewVariableVtbl;
3211
3212interface ID3D10EffectDepthStencilViewVariable {
3213    CONST_VTBL ID3D10EffectDepthStencilViewVariableVtbl* lpVtbl;
3214};
3215
3216#ifdef COBJMACROS
3217#ifndef WIDL_C_INLINE_WRAPPERS
3218/*** ID3D10EffectVariable methods ***/
3219#define ID3D10EffectDepthStencilViewVariable_IsValid(This) (This)->lpVtbl->IsValid(This)
3220#define ID3D10EffectDepthStencilViewVariable_GetType(This) (This)->lpVtbl->GetType(This)
3221#define ID3D10EffectDepthStencilViewVariable_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
3222#define ID3D10EffectDepthStencilViewVariable_GetAnnotationByIndex(This,index) (This)->lpVtbl->GetAnnotationByIndex(This,index)
3223#define ID3D10EffectDepthStencilViewVariable_GetAnnotationByName(This,name) (This)->lpVtbl->GetAnnotationByName(This,name)
3224#define ID3D10EffectDepthStencilViewVariable_GetMemberByIndex(This,index) (This)->lpVtbl->GetMemberByIndex(This,index)
3225#define ID3D10EffectDepthStencilViewVariable_GetMemberByName(This,name) (This)->lpVtbl->GetMemberByName(This,name)
3226#define ID3D10EffectDepthStencilViewVariable_GetMemberBySemantic(This,semantic) (This)->lpVtbl->GetMemberBySemantic(This,semantic)
3227#define ID3D10EffectDepthStencilViewVariable_GetElement(This,index) (This)->lpVtbl->GetElement(This,index)
3228#define ID3D10EffectDepthStencilViewVariable_GetParentConstantBuffer(This) (This)->lpVtbl->GetParentConstantBuffer(This)
3229#define ID3D10EffectDepthStencilViewVariable_AsScalar(This) (This)->lpVtbl->AsScalar(This)
3230#define ID3D10EffectDepthStencilViewVariable_AsVector(This) (This)->lpVtbl->AsVector(This)
3231#define ID3D10EffectDepthStencilViewVariable_AsMatrix(This) (This)->lpVtbl->AsMatrix(This)
3232#define ID3D10EffectDepthStencilViewVariable_AsString(This) (This)->lpVtbl->AsString(This)
3233#define ID3D10EffectDepthStencilViewVariable_AsShaderResource(This) (This)->lpVtbl->AsShaderResource(This)
3234#define ID3D10EffectDepthStencilViewVariable_AsRenderTargetView(This) (This)->lpVtbl->AsRenderTargetView(This)
3235#define ID3D10EffectDepthStencilViewVariable_AsDepthStencilView(This) (This)->lpVtbl->AsDepthStencilView(This)
3236#define ID3D10EffectDepthStencilViewVariable_AsConstantBuffer(This) (This)->lpVtbl->AsConstantBuffer(This)
3237#define ID3D10EffectDepthStencilViewVariable_AsShader(This) (This)->lpVtbl->AsShader(This)
3238#define ID3D10EffectDepthStencilViewVariable_AsBlend(This) (This)->lpVtbl->AsBlend(This)
3239#define ID3D10EffectDepthStencilViewVariable_AsDepthStencil(This) (This)->lpVtbl->AsDepthStencil(This)
3240#define ID3D10EffectDepthStencilViewVariable_AsRasterizer(This) (This)->lpVtbl->AsRasterizer(This)
3241#define ID3D10EffectDepthStencilViewVariable_AsSampler(This) (This)->lpVtbl->AsSampler(This)
3242#define ID3D10EffectDepthStencilViewVariable_SetRawValue(This,data,offset,count) (This)->lpVtbl->SetRawValue(This,data,offset,count)
3243#define ID3D10EffectDepthStencilViewVariable_GetRawValue(This,data,offset,count) (This)->lpVtbl->GetRawValue(This,data,offset,count)
3244/*** ID3D10EffectDepthStencilViewVariable methods ***/
3245#define ID3D10EffectDepthStencilViewVariable_SetDepthStencil(This,view) (This)->lpVtbl->SetDepthStencil(This,view)
3246#define ID3D10EffectDepthStencilViewVariable_GetDepthStencil(This,view) (This)->lpVtbl->GetDepthStencil(This,view)
3247#define ID3D10EffectDepthStencilViewVariable_SetDepthStencilArray(This,views,offset,count) (This)->lpVtbl->SetDepthStencilArray(This,views,offset,count)
3248#define ID3D10EffectDepthStencilViewVariable_GetDepthStencilArray(This,views,offset,count) (This)->lpVtbl->GetDepthStencilArray(This,views,offset,count)
3249#else
3250/*** ID3D10EffectVariable methods ***/
3251static inline WINBOOL ID3D10EffectDepthStencilViewVariable_IsValid(ID3D10EffectDepthStencilViewVariable* This) {
3252    return This->lpVtbl->IsValid(This);
3253}
3254static inline ID3D10EffectType * ID3D10EffectDepthStencilViewVariable_GetType(ID3D10EffectDepthStencilViewVariable* This) {
3255    return This->lpVtbl->GetType(This);
3256}
3257static inline HRESULT ID3D10EffectDepthStencilViewVariable_GetDesc(ID3D10EffectDepthStencilViewVariable* This,D3D10_EFFECT_VARIABLE_DESC *desc) {
3258    return This->lpVtbl->GetDesc(This,desc);
3259}
3260static inline ID3D10EffectVariable * ID3D10EffectDepthStencilViewVariable_GetAnnotationByIndex(ID3D10EffectDepthStencilViewVariable* This,UINT index) {
3261    return This->lpVtbl->GetAnnotationByIndex(This,index);
3262}
3263static inline ID3D10EffectVariable * ID3D10EffectDepthStencilViewVariable_GetAnnotationByName(ID3D10EffectDepthStencilViewVariable* This,const char *name) {
3264    return This->lpVtbl->GetAnnotationByName(This,name);
3265}
3266static inline ID3D10EffectVariable * ID3D10EffectDepthStencilViewVariable_GetMemberByIndex(ID3D10EffectDepthStencilViewVariable* This,UINT index) {
3267    return This->lpVtbl->GetMemberByIndex(This,index);
3268}
3269static inline ID3D10EffectVariable * ID3D10EffectDepthStencilViewVariable_GetMemberByName(ID3D10EffectDepthStencilViewVariable* This,const char *name) {
3270    return This->lpVtbl->GetMemberByName(This,name);
3271}
3272static inline ID3D10EffectVariable * ID3D10EffectDepthStencilViewVariable_GetMemberBySemantic(ID3D10EffectDepthStencilViewVariable* This,const char *semantic) {
3273    return This->lpVtbl->GetMemberBySemantic(This,semantic);
3274}
3275static inline ID3D10EffectVariable * ID3D10EffectDepthStencilViewVariable_GetElement(ID3D10EffectDepthStencilViewVariable* This,UINT index) {
3276    return This->lpVtbl->GetElement(This,index);
3277}
3278static inline ID3D10EffectConstantBuffer * ID3D10EffectDepthStencilViewVariable_GetParentConstantBuffer(ID3D10EffectDepthStencilViewVariable* This) {
3279    return This->lpVtbl->GetParentConstantBuffer(This);
3280}
3281static inline ID3D10EffectScalarVariable * ID3D10EffectDepthStencilViewVariable_AsScalar(ID3D10EffectDepthStencilViewVariable* This) {
3282    return This->lpVtbl->AsScalar(This);
3283}
3284static inline ID3D10EffectVectorVariable * ID3D10EffectDepthStencilViewVariable_AsVector(ID3D10EffectDepthStencilViewVariable* This) {
3285    return This->lpVtbl->AsVector(This);
3286}
3287static inline ID3D10EffectMatrixVariable * ID3D10EffectDepthStencilViewVariable_AsMatrix(ID3D10EffectDepthStencilViewVariable* This) {
3288    return This->lpVtbl->AsMatrix(This);
3289}
3290static inline ID3D10EffectStringVariable * ID3D10EffectDepthStencilViewVariable_AsString(ID3D10EffectDepthStencilViewVariable* This) {
3291    return This->lpVtbl->AsString(This);
3292}
3293static inline ID3D10EffectShaderResourceVariable * ID3D10EffectDepthStencilViewVariable_AsShaderResource(ID3D10EffectDepthStencilViewVariable* This) {
3294    return This->lpVtbl->AsShaderResource(This);
3295}
3296static inline ID3D10EffectRenderTargetViewVariable * ID3D10EffectDepthStencilViewVariable_AsRenderTargetView(ID3D10EffectDepthStencilViewVariable* This) {
3297    return This->lpVtbl->AsRenderTargetView(This);
3298}
3299static inline ID3D10EffectDepthStencilViewVariable * ID3D10EffectDepthStencilViewVariable_AsDepthStencilView(ID3D10EffectDepthStencilViewVariable* This) {
3300    return This->lpVtbl->AsDepthStencilView(This);
3301}
3302static inline ID3D10EffectConstantBuffer * ID3D10EffectDepthStencilViewVariable_AsConstantBuffer(ID3D10EffectDepthStencilViewVariable* This) {
3303    return This->lpVtbl->AsConstantBuffer(This);
3304}
3305static inline ID3D10EffectShaderVariable * ID3D10EffectDepthStencilViewVariable_AsShader(ID3D10EffectDepthStencilViewVariable* This) {
3306    return This->lpVtbl->AsShader(This);
3307}
3308static inline ID3D10EffectBlendVariable * ID3D10EffectDepthStencilViewVariable_AsBlend(ID3D10EffectDepthStencilViewVariable* This) {
3309    return This->lpVtbl->AsBlend(This);
3310}
3311static inline ID3D10EffectDepthStencilVariable * ID3D10EffectDepthStencilViewVariable_AsDepthStencil(ID3D10EffectDepthStencilViewVariable* This) {
3312    return This->lpVtbl->AsDepthStencil(This);
3313}
3314static inline ID3D10EffectRasterizerVariable * ID3D10EffectDepthStencilViewVariable_AsRasterizer(ID3D10EffectDepthStencilViewVariable* This) {
3315    return This->lpVtbl->AsRasterizer(This);
3316}
3317static inline ID3D10EffectSamplerVariable * ID3D10EffectDepthStencilViewVariable_AsSampler(ID3D10EffectDepthStencilViewVariable* This) {
3318    return This->lpVtbl->AsSampler(This);
3319}
3320static inline HRESULT ID3D10EffectDepthStencilViewVariable_SetRawValue(ID3D10EffectDepthStencilViewVariable* This,void *data,UINT offset,UINT count) {
3321    return This->lpVtbl->SetRawValue(This,data,offset,count);
3322}
3323static inline HRESULT ID3D10EffectDepthStencilViewVariable_GetRawValue(ID3D10EffectDepthStencilViewVariable* This,void *data,UINT offset,UINT count) {
3324    return This->lpVtbl->GetRawValue(This,data,offset,count);
3325}
3326/*** ID3D10EffectDepthStencilViewVariable methods ***/
3327static inline HRESULT ID3D10EffectDepthStencilViewVariable_SetDepthStencil(ID3D10EffectDepthStencilViewVariable* This,ID3D10DepthStencilView *view) {
3328    return This->lpVtbl->SetDepthStencil(This,view);
3329}
3330static inline HRESULT ID3D10EffectDepthStencilViewVariable_GetDepthStencil(ID3D10EffectDepthStencilViewVariable* This,ID3D10DepthStencilView **view) {
3331    return This->lpVtbl->GetDepthStencil(This,view);
3332}
3333static inline HRESULT ID3D10EffectDepthStencilViewVariable_SetDepthStencilArray(ID3D10EffectDepthStencilViewVariable* This,ID3D10DepthStencilView **views,UINT offset,UINT count) {
3334    return This->lpVtbl->SetDepthStencilArray(This,views,offset,count);
3335}
3336static inline HRESULT ID3D10EffectDepthStencilViewVariable_GetDepthStencilArray(ID3D10EffectDepthStencilViewVariable* This,ID3D10DepthStencilView **views,UINT offset,UINT count) {
3337    return This->lpVtbl->GetDepthStencilArray(This,views,offset,count);
3338}
3339#endif
3340#endif
3341
3342#endif
3343
3344
3345#endif  /* __ID3D10EffectDepthStencilViewVariable_INTERFACE_DEFINED__ */
3346
3347/*****************************************************************************
3348 * ID3D10EffectShaderVariable interface
3349 */
3350#ifndef __ID3D10EffectShaderVariable_INTERFACE_DEFINED__
3351#define __ID3D10EffectShaderVariable_INTERFACE_DEFINED__
3352
3353DEFINE_GUID(IID_ID3D10EffectShaderVariable, 0x80849279, 0xc799, 0x4797, 0x8c,0x33, 0x04,0x07,0xa0,0x7d,0x9e,0x06);
3354#if defined(__cplusplus) && !defined(CINTERFACE)
3355MIDL_INTERFACE("80849279-c799-4797-8c33-0407a07d9e06")
3356ID3D10EffectShaderVariable : public ID3D10EffectVariable
3357{
3358    virtual HRESULT STDMETHODCALLTYPE GetShaderDesc(
3359        UINT index,
3360        D3D10_EFFECT_SHADER_DESC *desc) = 0;
3361
3362    virtual HRESULT STDMETHODCALLTYPE GetVertexShader(
3363        UINT index,
3364        ID3D10VertexShader **shader) = 0;
3365
3366    virtual HRESULT STDMETHODCALLTYPE GetGeometryShader(
3367        UINT index,
3368        ID3D10GeometryShader **shader) = 0;
3369
3370    virtual HRESULT STDMETHODCALLTYPE GetPixelShader(
3371        UINT index,
3372        ID3D10PixelShader **shader) = 0;
3373
3374    virtual HRESULT STDMETHODCALLTYPE GetInputSignatureElementDesc(
3375        UINT shader_index,
3376        UINT element_index,
3377        D3D10_SIGNATURE_PARAMETER_DESC *desc) = 0;
3378
3379    virtual HRESULT STDMETHODCALLTYPE GetOutputSignatureElementDesc(
3380        UINT shader_index,
3381        UINT element_index,
3382        D3D10_SIGNATURE_PARAMETER_DESC *desc) = 0;
3383
3384};
3385#ifdef __CRT_UUID_DECL
3386__CRT_UUID_DECL(ID3D10EffectShaderVariable, 0x80849279, 0xc799, 0x4797, 0x8c,0x33, 0x04,0x07,0xa0,0x7d,0x9e,0x06)
3387#endif
3388#else
3389typedef struct ID3D10EffectShaderVariableVtbl {
3390    BEGIN_INTERFACE
3391
3392    /*** ID3D10EffectVariable methods ***/
3393    WINBOOL (STDMETHODCALLTYPE *IsValid)(
3394        ID3D10EffectShaderVariable *This);
3395
3396    ID3D10EffectType * (STDMETHODCALLTYPE *GetType)(
3397        ID3D10EffectShaderVariable *This);
3398
3399    HRESULT (STDMETHODCALLTYPE *GetDesc)(
3400        ID3D10EffectShaderVariable *This,
3401        D3D10_EFFECT_VARIABLE_DESC *desc);
3402
3403    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByIndex)(
3404        ID3D10EffectShaderVariable *This,
3405        UINT index);
3406
3407    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByName)(
3408        ID3D10EffectShaderVariable *This,
3409        const char *name);
3410
3411    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByIndex)(
3412        ID3D10EffectShaderVariable *This,
3413        UINT index);
3414
3415    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByName)(
3416        ID3D10EffectShaderVariable *This,
3417        const char *name);
3418
3419    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberBySemantic)(
3420        ID3D10EffectShaderVariable *This,
3421        const char *semantic);
3422
3423    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetElement)(
3424        ID3D10EffectShaderVariable *This,
3425        UINT index);
3426
3427    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *GetParentConstantBuffer)(
3428        ID3D10EffectShaderVariable *This);
3429
3430    ID3D10EffectScalarVariable * (STDMETHODCALLTYPE *AsScalar)(
3431        ID3D10EffectShaderVariable *This);
3432
3433    ID3D10EffectVectorVariable * (STDMETHODCALLTYPE *AsVector)(
3434        ID3D10EffectShaderVariable *This);
3435
3436    ID3D10EffectMatrixVariable * (STDMETHODCALLTYPE *AsMatrix)(
3437        ID3D10EffectShaderVariable *This);
3438
3439    ID3D10EffectStringVariable * (STDMETHODCALLTYPE *AsString)(
3440        ID3D10EffectShaderVariable *This);
3441
3442    ID3D10EffectShaderResourceVariable * (STDMETHODCALLTYPE *AsShaderResource)(
3443        ID3D10EffectShaderVariable *This);
3444
3445    ID3D10EffectRenderTargetViewVariable * (STDMETHODCALLTYPE *AsRenderTargetView)(
3446        ID3D10EffectShaderVariable *This);
3447
3448    ID3D10EffectDepthStencilViewVariable * (STDMETHODCALLTYPE *AsDepthStencilView)(
3449        ID3D10EffectShaderVariable *This);
3450
3451    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *AsConstantBuffer)(
3452        ID3D10EffectShaderVariable *This);
3453
3454    ID3D10EffectShaderVariable * (STDMETHODCALLTYPE *AsShader)(
3455        ID3D10EffectShaderVariable *This);
3456
3457    ID3D10EffectBlendVariable * (STDMETHODCALLTYPE *AsBlend)(
3458        ID3D10EffectShaderVariable *This);
3459
3460    ID3D10EffectDepthStencilVariable * (STDMETHODCALLTYPE *AsDepthStencil)(
3461        ID3D10EffectShaderVariable *This);
3462
3463    ID3D10EffectRasterizerVariable * (STDMETHODCALLTYPE *AsRasterizer)(
3464        ID3D10EffectShaderVariable *This);
3465
3466    ID3D10EffectSamplerVariable * (STDMETHODCALLTYPE *AsSampler)(
3467        ID3D10EffectShaderVariable *This);
3468
3469    HRESULT (STDMETHODCALLTYPE *SetRawValue)(
3470        ID3D10EffectShaderVariable *This,
3471        void *data,
3472        UINT offset,
3473        UINT count);
3474
3475    HRESULT (STDMETHODCALLTYPE *GetRawValue)(
3476        ID3D10EffectShaderVariable *This,
3477        void *data,
3478        UINT offset,
3479        UINT count);
3480
3481    /*** ID3D10EffectShaderVariable methods ***/
3482    HRESULT (STDMETHODCALLTYPE *GetShaderDesc)(
3483        ID3D10EffectShaderVariable *This,
3484        UINT index,
3485        D3D10_EFFECT_SHADER_DESC *desc);
3486
3487    HRESULT (STDMETHODCALLTYPE *GetVertexShader)(
3488        ID3D10EffectShaderVariable *This,
3489        UINT index,
3490        ID3D10VertexShader **shader);
3491
3492    HRESULT (STDMETHODCALLTYPE *GetGeometryShader)(
3493        ID3D10EffectShaderVariable *This,
3494        UINT index,
3495        ID3D10GeometryShader **shader);
3496
3497    HRESULT (STDMETHODCALLTYPE *GetPixelShader)(
3498        ID3D10EffectShaderVariable *This,
3499        UINT index,
3500        ID3D10PixelShader **shader);
3501
3502    HRESULT (STDMETHODCALLTYPE *GetInputSignatureElementDesc)(
3503        ID3D10EffectShaderVariable *This,
3504        UINT shader_index,
3505        UINT element_index,
3506        D3D10_SIGNATURE_PARAMETER_DESC *desc);
3507
3508    HRESULT (STDMETHODCALLTYPE *GetOutputSignatureElementDesc)(
3509        ID3D10EffectShaderVariable *This,
3510        UINT shader_index,
3511        UINT element_index,
3512        D3D10_SIGNATURE_PARAMETER_DESC *desc);
3513
3514    END_INTERFACE
3515} ID3D10EffectShaderVariableVtbl;
3516
3517interface ID3D10EffectShaderVariable {
3518    CONST_VTBL ID3D10EffectShaderVariableVtbl* lpVtbl;
3519};
3520
3521#ifdef COBJMACROS
3522#ifndef WIDL_C_INLINE_WRAPPERS
3523/*** ID3D10EffectVariable methods ***/
3524#define ID3D10EffectShaderVariable_IsValid(This) (This)->lpVtbl->IsValid(This)
3525#define ID3D10EffectShaderVariable_GetType(This) (This)->lpVtbl->GetType(This)
3526#define ID3D10EffectShaderVariable_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
3527#define ID3D10EffectShaderVariable_GetAnnotationByIndex(This,index) (This)->lpVtbl->GetAnnotationByIndex(This,index)
3528#define ID3D10EffectShaderVariable_GetAnnotationByName(This,name) (This)->lpVtbl->GetAnnotationByName(This,name)
3529#define ID3D10EffectShaderVariable_GetMemberByIndex(This,index) (This)->lpVtbl->GetMemberByIndex(This,index)
3530#define ID3D10EffectShaderVariable_GetMemberByName(This,name) (This)->lpVtbl->GetMemberByName(This,name)
3531#define ID3D10EffectShaderVariable_GetMemberBySemantic(This,semantic) (This)->lpVtbl->GetMemberBySemantic(This,semantic)
3532#define ID3D10EffectShaderVariable_GetElement(This,index) (This)->lpVtbl->GetElement(This,index)
3533#define ID3D10EffectShaderVariable_GetParentConstantBuffer(This) (This)->lpVtbl->GetParentConstantBuffer(This)
3534#define ID3D10EffectShaderVariable_AsScalar(This) (This)->lpVtbl->AsScalar(This)
3535#define ID3D10EffectShaderVariable_AsVector(This) (This)->lpVtbl->AsVector(This)
3536#define ID3D10EffectShaderVariable_AsMatrix(This) (This)->lpVtbl->AsMatrix(This)
3537#define ID3D10EffectShaderVariable_AsString(This) (This)->lpVtbl->AsString(This)
3538#define ID3D10EffectShaderVariable_AsShaderResource(This) (This)->lpVtbl->AsShaderResource(This)
3539#define ID3D10EffectShaderVariable_AsRenderTargetView(This) (This)->lpVtbl->AsRenderTargetView(This)
3540#define ID3D10EffectShaderVariable_AsDepthStencilView(This) (This)->lpVtbl->AsDepthStencilView(This)
3541#define ID3D10EffectShaderVariable_AsConstantBuffer(This) (This)->lpVtbl->AsConstantBuffer(This)
3542#define ID3D10EffectShaderVariable_AsShader(This) (This)->lpVtbl->AsShader(This)
3543#define ID3D10EffectShaderVariable_AsBlend(This) (This)->lpVtbl->AsBlend(This)
3544#define ID3D10EffectShaderVariable_AsDepthStencil(This) (This)->lpVtbl->AsDepthStencil(This)
3545#define ID3D10EffectShaderVariable_AsRasterizer(This) (This)->lpVtbl->AsRasterizer(This)
3546#define ID3D10EffectShaderVariable_AsSampler(This) (This)->lpVtbl->AsSampler(This)
3547#define ID3D10EffectShaderVariable_SetRawValue(This,data,offset,count) (This)->lpVtbl->SetRawValue(This,data,offset,count)
3548#define ID3D10EffectShaderVariable_GetRawValue(This,data,offset,count) (This)->lpVtbl->GetRawValue(This,data,offset,count)
3549/*** ID3D10EffectShaderVariable methods ***/
3550#define ID3D10EffectShaderVariable_GetShaderDesc(This,index,desc) (This)->lpVtbl->GetShaderDesc(This,index,desc)
3551#define ID3D10EffectShaderVariable_GetVertexShader(This,index,shader) (This)->lpVtbl->GetVertexShader(This,index,shader)
3552#define ID3D10EffectShaderVariable_GetGeometryShader(This,index,shader) (This)->lpVtbl->GetGeometryShader(This,index,shader)
3553#define ID3D10EffectShaderVariable_GetPixelShader(This,index,shader) (This)->lpVtbl->GetPixelShader(This,index,shader)
3554#define ID3D10EffectShaderVariable_GetInputSignatureElementDesc(This,shader_index,element_index,desc) (This)->lpVtbl->GetInputSignatureElementDesc(This,shader_index,element_index,desc)
3555#define ID3D10EffectShaderVariable_GetOutputSignatureElementDesc(This,shader_index,element_index,desc) (This)->lpVtbl->GetOutputSignatureElementDesc(This,shader_index,element_index,desc)
3556#else
3557/*** ID3D10EffectVariable methods ***/
3558static inline WINBOOL ID3D10EffectShaderVariable_IsValid(ID3D10EffectShaderVariable* This) {
3559    return This->lpVtbl->IsValid(This);
3560}
3561static inline ID3D10EffectType * ID3D10EffectShaderVariable_GetType(ID3D10EffectShaderVariable* This) {
3562    return This->lpVtbl->GetType(This);
3563}
3564static inline HRESULT ID3D10EffectShaderVariable_GetDesc(ID3D10EffectShaderVariable* This,D3D10_EFFECT_VARIABLE_DESC *desc) {
3565    return This->lpVtbl->GetDesc(This,desc);
3566}
3567static inline ID3D10EffectVariable * ID3D10EffectShaderVariable_GetAnnotationByIndex(ID3D10EffectShaderVariable* This,UINT index) {
3568    return This->lpVtbl->GetAnnotationByIndex(This,index);
3569}
3570static inline ID3D10EffectVariable * ID3D10EffectShaderVariable_GetAnnotationByName(ID3D10EffectShaderVariable* This,const char *name) {
3571    return This->lpVtbl->GetAnnotationByName(This,name);
3572}
3573static inline ID3D10EffectVariable * ID3D10EffectShaderVariable_GetMemberByIndex(ID3D10EffectShaderVariable* This,UINT index) {
3574    return This->lpVtbl->GetMemberByIndex(This,index);
3575}
3576static inline ID3D10EffectVariable * ID3D10EffectShaderVariable_GetMemberByName(ID3D10EffectShaderVariable* This,const char *name) {
3577    return This->lpVtbl->GetMemberByName(This,name);
3578}
3579static inline ID3D10EffectVariable * ID3D10EffectShaderVariable_GetMemberBySemantic(ID3D10EffectShaderVariable* This,const char *semantic) {
3580    return This->lpVtbl->GetMemberBySemantic(This,semantic);
3581}
3582static inline ID3D10EffectVariable * ID3D10EffectShaderVariable_GetElement(ID3D10EffectShaderVariable* This,UINT index) {
3583    return This->lpVtbl->GetElement(This,index);
3584}
3585static inline ID3D10EffectConstantBuffer * ID3D10EffectShaderVariable_GetParentConstantBuffer(ID3D10EffectShaderVariable* This) {
3586    return This->lpVtbl->GetParentConstantBuffer(This);
3587}
3588static inline ID3D10EffectScalarVariable * ID3D10EffectShaderVariable_AsScalar(ID3D10EffectShaderVariable* This) {
3589    return This->lpVtbl->AsScalar(This);
3590}
3591static inline ID3D10EffectVectorVariable * ID3D10EffectShaderVariable_AsVector(ID3D10EffectShaderVariable* This) {
3592    return This->lpVtbl->AsVector(This);
3593}
3594static inline ID3D10EffectMatrixVariable * ID3D10EffectShaderVariable_AsMatrix(ID3D10EffectShaderVariable* This) {
3595    return This->lpVtbl->AsMatrix(This);
3596}
3597static inline ID3D10EffectStringVariable * ID3D10EffectShaderVariable_AsString(ID3D10EffectShaderVariable* This) {
3598    return This->lpVtbl->AsString(This);
3599}
3600static inline ID3D10EffectShaderResourceVariable * ID3D10EffectShaderVariable_AsShaderResource(ID3D10EffectShaderVariable* This) {
3601    return This->lpVtbl->AsShaderResource(This);
3602}
3603static inline ID3D10EffectRenderTargetViewVariable * ID3D10EffectShaderVariable_AsRenderTargetView(ID3D10EffectShaderVariable* This) {
3604    return This->lpVtbl->AsRenderTargetView(This);
3605}
3606static inline ID3D10EffectDepthStencilViewVariable * ID3D10EffectShaderVariable_AsDepthStencilView(ID3D10EffectShaderVariable* This) {
3607    return This->lpVtbl->AsDepthStencilView(This);
3608}
3609static inline ID3D10EffectConstantBuffer * ID3D10EffectShaderVariable_AsConstantBuffer(ID3D10EffectShaderVariable* This) {
3610    return This->lpVtbl->AsConstantBuffer(This);
3611}
3612static inline ID3D10EffectShaderVariable * ID3D10EffectShaderVariable_AsShader(ID3D10EffectShaderVariable* This) {
3613    return This->lpVtbl->AsShader(This);
3614}
3615static inline ID3D10EffectBlendVariable * ID3D10EffectShaderVariable_AsBlend(ID3D10EffectShaderVariable* This) {
3616    return This->lpVtbl->AsBlend(This);
3617}
3618static inline ID3D10EffectDepthStencilVariable * ID3D10EffectShaderVariable_AsDepthStencil(ID3D10EffectShaderVariable* This) {
3619    return This->lpVtbl->AsDepthStencil(This);
3620}
3621static inline ID3D10EffectRasterizerVariable * ID3D10EffectShaderVariable_AsRasterizer(ID3D10EffectShaderVariable* This) {
3622    return This->lpVtbl->AsRasterizer(This);
3623}
3624static inline ID3D10EffectSamplerVariable * ID3D10EffectShaderVariable_AsSampler(ID3D10EffectShaderVariable* This) {
3625    return This->lpVtbl->AsSampler(This);
3626}
3627static inline HRESULT ID3D10EffectShaderVariable_SetRawValue(ID3D10EffectShaderVariable* This,void *data,UINT offset,UINT count) {
3628    return This->lpVtbl->SetRawValue(This,data,offset,count);
3629}
3630static inline HRESULT ID3D10EffectShaderVariable_GetRawValue(ID3D10EffectShaderVariable* This,void *data,UINT offset,UINT count) {
3631    return This->lpVtbl->GetRawValue(This,data,offset,count);
3632}
3633/*** ID3D10EffectShaderVariable methods ***/
3634static inline HRESULT ID3D10EffectShaderVariable_GetShaderDesc(ID3D10EffectShaderVariable* This,UINT index,D3D10_EFFECT_SHADER_DESC *desc) {
3635    return This->lpVtbl->GetShaderDesc(This,index,desc);
3636}
3637static inline HRESULT ID3D10EffectShaderVariable_GetVertexShader(ID3D10EffectShaderVariable* This,UINT index,ID3D10VertexShader **shader) {
3638    return This->lpVtbl->GetVertexShader(This,index,shader);
3639}
3640static inline HRESULT ID3D10EffectShaderVariable_GetGeometryShader(ID3D10EffectShaderVariable* This,UINT index,ID3D10GeometryShader **shader) {
3641    return This->lpVtbl->GetGeometryShader(This,index,shader);
3642}
3643static inline HRESULT ID3D10EffectShaderVariable_GetPixelShader(ID3D10EffectShaderVariable* This,UINT index,ID3D10PixelShader **shader) {
3644    return This->lpVtbl->GetPixelShader(This,index,shader);
3645}
3646static inline HRESULT ID3D10EffectShaderVariable_GetInputSignatureElementDesc(ID3D10EffectShaderVariable* This,UINT shader_index,UINT element_index,D3D10_SIGNATURE_PARAMETER_DESC *desc) {
3647    return This->lpVtbl->GetInputSignatureElementDesc(This,shader_index,element_index,desc);
3648}
3649static inline HRESULT ID3D10EffectShaderVariable_GetOutputSignatureElementDesc(ID3D10EffectShaderVariable* This,UINT shader_index,UINT element_index,D3D10_SIGNATURE_PARAMETER_DESC *desc) {
3650    return This->lpVtbl->GetOutputSignatureElementDesc(This,shader_index,element_index,desc);
3651}
3652#endif
3653#endif
3654
3655#endif
3656
3657
3658#endif  /* __ID3D10EffectShaderVariable_INTERFACE_DEFINED__ */
3659
3660/*****************************************************************************
3661 * ID3D10EffectBlendVariable interface
3662 */
3663#ifndef __ID3D10EffectBlendVariable_INTERFACE_DEFINED__
3664#define __ID3D10EffectBlendVariable_INTERFACE_DEFINED__
3665
3666DEFINE_GUID(IID_ID3D10EffectBlendVariable, 0x1fcd2294, 0xdf6d, 0x4eae, 0x86,0xb3, 0x0e,0x91,0x60,0xcf,0xb0,0x7b);
3667#if defined(__cplusplus) && !defined(CINTERFACE)
3668MIDL_INTERFACE("1fcd2294-df6d-4eae-86b3-0e9160cfb07b")
3669ID3D10EffectBlendVariable : public ID3D10EffectVariable
3670{
3671    virtual HRESULT STDMETHODCALLTYPE GetBlendState(
3672        UINT index,
3673        ID3D10BlendState **blend_state) = 0;
3674
3675    virtual HRESULT STDMETHODCALLTYPE GetBackingStore(
3676        UINT index,
3677        D3D10_BLEND_DESC *desc) = 0;
3678
3679};
3680#ifdef __CRT_UUID_DECL
3681__CRT_UUID_DECL(ID3D10EffectBlendVariable, 0x1fcd2294, 0xdf6d, 0x4eae, 0x86,0xb3, 0x0e,0x91,0x60,0xcf,0xb0,0x7b)
3682#endif
3683#else
3684typedef struct ID3D10EffectBlendVariableVtbl {
3685    BEGIN_INTERFACE
3686
3687    /*** ID3D10EffectVariable methods ***/
3688    WINBOOL (STDMETHODCALLTYPE *IsValid)(
3689        ID3D10EffectBlendVariable *This);
3690
3691    ID3D10EffectType * (STDMETHODCALLTYPE *GetType)(
3692        ID3D10EffectBlendVariable *This);
3693
3694    HRESULT (STDMETHODCALLTYPE *GetDesc)(
3695        ID3D10EffectBlendVariable *This,
3696        D3D10_EFFECT_VARIABLE_DESC *desc);
3697
3698    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByIndex)(
3699        ID3D10EffectBlendVariable *This,
3700        UINT index);
3701
3702    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByName)(
3703        ID3D10EffectBlendVariable *This,
3704        const char *name);
3705
3706    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByIndex)(
3707        ID3D10EffectBlendVariable *This,
3708        UINT index);
3709
3710    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByName)(
3711        ID3D10EffectBlendVariable *This,
3712        const char *name);
3713
3714    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberBySemantic)(
3715        ID3D10EffectBlendVariable *This,
3716        const char *semantic);
3717
3718    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetElement)(
3719        ID3D10EffectBlendVariable *This,
3720        UINT index);
3721
3722    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *GetParentConstantBuffer)(
3723        ID3D10EffectBlendVariable *This);
3724
3725    ID3D10EffectScalarVariable * (STDMETHODCALLTYPE *AsScalar)(
3726        ID3D10EffectBlendVariable *This);
3727
3728    ID3D10EffectVectorVariable * (STDMETHODCALLTYPE *AsVector)(
3729        ID3D10EffectBlendVariable *This);
3730
3731    ID3D10EffectMatrixVariable * (STDMETHODCALLTYPE *AsMatrix)(
3732        ID3D10EffectBlendVariable *This);
3733
3734    ID3D10EffectStringVariable * (STDMETHODCALLTYPE *AsString)(
3735        ID3D10EffectBlendVariable *This);
3736
3737    ID3D10EffectShaderResourceVariable * (STDMETHODCALLTYPE *AsShaderResource)(
3738        ID3D10EffectBlendVariable *This);
3739
3740    ID3D10EffectRenderTargetViewVariable * (STDMETHODCALLTYPE *AsRenderTargetView)(
3741        ID3D10EffectBlendVariable *This);
3742
3743    ID3D10EffectDepthStencilViewVariable * (STDMETHODCALLTYPE *AsDepthStencilView)(
3744        ID3D10EffectBlendVariable *This);
3745
3746    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *AsConstantBuffer)(
3747        ID3D10EffectBlendVariable *This);
3748
3749    ID3D10EffectShaderVariable * (STDMETHODCALLTYPE *AsShader)(
3750        ID3D10EffectBlendVariable *This);
3751
3752    ID3D10EffectBlendVariable * (STDMETHODCALLTYPE *AsBlend)(
3753        ID3D10EffectBlendVariable *This);
3754
3755    ID3D10EffectDepthStencilVariable * (STDMETHODCALLTYPE *AsDepthStencil)(
3756        ID3D10EffectBlendVariable *This);
3757
3758    ID3D10EffectRasterizerVariable * (STDMETHODCALLTYPE *AsRasterizer)(
3759        ID3D10EffectBlendVariable *This);
3760
3761    ID3D10EffectSamplerVariable * (STDMETHODCALLTYPE *AsSampler)(
3762        ID3D10EffectBlendVariable *This);
3763
3764    HRESULT (STDMETHODCALLTYPE *SetRawValue)(
3765        ID3D10EffectBlendVariable *This,
3766        void *data,
3767        UINT offset,
3768        UINT count);
3769
3770    HRESULT (STDMETHODCALLTYPE *GetRawValue)(
3771        ID3D10EffectBlendVariable *This,
3772        void *data,
3773        UINT offset,
3774        UINT count);
3775
3776    /*** ID3D10EffectBlendVariable methods ***/
3777    HRESULT (STDMETHODCALLTYPE *GetBlendState)(
3778        ID3D10EffectBlendVariable *This,
3779        UINT index,
3780        ID3D10BlendState **blend_state);
3781
3782    HRESULT (STDMETHODCALLTYPE *GetBackingStore)(
3783        ID3D10EffectBlendVariable *This,
3784        UINT index,
3785        D3D10_BLEND_DESC *desc);
3786
3787    END_INTERFACE
3788} ID3D10EffectBlendVariableVtbl;
3789
3790interface ID3D10EffectBlendVariable {
3791    CONST_VTBL ID3D10EffectBlendVariableVtbl* lpVtbl;
3792};
3793
3794#ifdef COBJMACROS
3795#ifndef WIDL_C_INLINE_WRAPPERS
3796/*** ID3D10EffectVariable methods ***/
3797#define ID3D10EffectBlendVariable_IsValid(This) (This)->lpVtbl->IsValid(This)
3798#define ID3D10EffectBlendVariable_GetType(This) (This)->lpVtbl->GetType(This)
3799#define ID3D10EffectBlendVariable_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
3800#define ID3D10EffectBlendVariable_GetAnnotationByIndex(This,index) (This)->lpVtbl->GetAnnotationByIndex(This,index)
3801#define ID3D10EffectBlendVariable_GetAnnotationByName(This,name) (This)->lpVtbl->GetAnnotationByName(This,name)
3802#define ID3D10EffectBlendVariable_GetMemberByIndex(This,index) (This)->lpVtbl->GetMemberByIndex(This,index)
3803#define ID3D10EffectBlendVariable_GetMemberByName(This,name) (This)->lpVtbl->GetMemberByName(This,name)
3804#define ID3D10EffectBlendVariable_GetMemberBySemantic(This,semantic) (This)->lpVtbl->GetMemberBySemantic(This,semantic)
3805#define ID3D10EffectBlendVariable_GetElement(This,index) (This)->lpVtbl->GetElement(This,index)
3806#define ID3D10EffectBlendVariable_GetParentConstantBuffer(This) (This)->lpVtbl->GetParentConstantBuffer(This)
3807#define ID3D10EffectBlendVariable_AsScalar(This) (This)->lpVtbl->AsScalar(This)
3808#define ID3D10EffectBlendVariable_AsVector(This) (This)->lpVtbl->AsVector(This)
3809#define ID3D10EffectBlendVariable_AsMatrix(This) (This)->lpVtbl->AsMatrix(This)
3810#define ID3D10EffectBlendVariable_AsString(This) (This)->lpVtbl->AsString(This)
3811#define ID3D10EffectBlendVariable_AsShaderResource(This) (This)->lpVtbl->AsShaderResource(This)
3812#define ID3D10EffectBlendVariable_AsRenderTargetView(This) (This)->lpVtbl->AsRenderTargetView(This)
3813#define ID3D10EffectBlendVariable_AsDepthStencilView(This) (This)->lpVtbl->AsDepthStencilView(This)
3814#define ID3D10EffectBlendVariable_AsConstantBuffer(This) (This)->lpVtbl->AsConstantBuffer(This)
3815#define ID3D10EffectBlendVariable_AsShader(This) (This)->lpVtbl->AsShader(This)
3816#define ID3D10EffectBlendVariable_AsBlend(This) (This)->lpVtbl->AsBlend(This)
3817#define ID3D10EffectBlendVariable_AsDepthStencil(This) (This)->lpVtbl->AsDepthStencil(This)
3818#define ID3D10EffectBlendVariable_AsRasterizer(This) (This)->lpVtbl->AsRasterizer(This)
3819#define ID3D10EffectBlendVariable_AsSampler(This) (This)->lpVtbl->AsSampler(This)
3820#define ID3D10EffectBlendVariable_SetRawValue(This,data,offset,count) (This)->lpVtbl->SetRawValue(This,data,offset,count)
3821#define ID3D10EffectBlendVariable_GetRawValue(This,data,offset,count) (This)->lpVtbl->GetRawValue(This,data,offset,count)
3822/*** ID3D10EffectBlendVariable methods ***/
3823#define ID3D10EffectBlendVariable_GetBlendState(This,index,blend_state) (This)->lpVtbl->GetBlendState(This,index,blend_state)
3824#define ID3D10EffectBlendVariable_GetBackingStore(This,index,desc) (This)->lpVtbl->GetBackingStore(This,index,desc)
3825#else
3826/*** ID3D10EffectVariable methods ***/
3827static inline WINBOOL ID3D10EffectBlendVariable_IsValid(ID3D10EffectBlendVariable* This) {
3828    return This->lpVtbl->IsValid(This);
3829}
3830static inline ID3D10EffectType * ID3D10EffectBlendVariable_GetType(ID3D10EffectBlendVariable* This) {
3831    return This->lpVtbl->GetType(This);
3832}
3833static inline HRESULT ID3D10EffectBlendVariable_GetDesc(ID3D10EffectBlendVariable* This,D3D10_EFFECT_VARIABLE_DESC *desc) {
3834    return This->lpVtbl->GetDesc(This,desc);
3835}
3836static inline ID3D10EffectVariable * ID3D10EffectBlendVariable_GetAnnotationByIndex(ID3D10EffectBlendVariable* This,UINT index) {
3837    return This->lpVtbl->GetAnnotationByIndex(This,index);
3838}
3839static inline ID3D10EffectVariable * ID3D10EffectBlendVariable_GetAnnotationByName(ID3D10EffectBlendVariable* This,const char *name) {
3840    return This->lpVtbl->GetAnnotationByName(This,name);
3841}
3842static inline ID3D10EffectVariable * ID3D10EffectBlendVariable_GetMemberByIndex(ID3D10EffectBlendVariable* This,UINT index) {
3843    return This->lpVtbl->GetMemberByIndex(This,index);
3844}
3845static inline ID3D10EffectVariable * ID3D10EffectBlendVariable_GetMemberByName(ID3D10EffectBlendVariable* This,const char *name) {
3846    return This->lpVtbl->GetMemberByName(This,name);
3847}
3848static inline ID3D10EffectVariable * ID3D10EffectBlendVariable_GetMemberBySemantic(ID3D10EffectBlendVariable* This,const char *semantic) {
3849    return This->lpVtbl->GetMemberBySemantic(This,semantic);
3850}
3851static inline ID3D10EffectVariable * ID3D10EffectBlendVariable_GetElement(ID3D10EffectBlendVariable* This,UINT index) {
3852    return This->lpVtbl->GetElement(This,index);
3853}
3854static inline ID3D10EffectConstantBuffer * ID3D10EffectBlendVariable_GetParentConstantBuffer(ID3D10EffectBlendVariable* This) {
3855    return This->lpVtbl->GetParentConstantBuffer(This);
3856}
3857static inline ID3D10EffectScalarVariable * ID3D10EffectBlendVariable_AsScalar(ID3D10EffectBlendVariable* This) {
3858    return This->lpVtbl->AsScalar(This);
3859}
3860static inline ID3D10EffectVectorVariable * ID3D10EffectBlendVariable_AsVector(ID3D10EffectBlendVariable* This) {
3861    return This->lpVtbl->AsVector(This);
3862}
3863static inline ID3D10EffectMatrixVariable * ID3D10EffectBlendVariable_AsMatrix(ID3D10EffectBlendVariable* This) {
3864    return This->lpVtbl->AsMatrix(This);
3865}
3866static inline ID3D10EffectStringVariable * ID3D10EffectBlendVariable_AsString(ID3D10EffectBlendVariable* This) {
3867    return This->lpVtbl->AsString(This);
3868}
3869static inline ID3D10EffectShaderResourceVariable * ID3D10EffectBlendVariable_AsShaderResource(ID3D10EffectBlendVariable* This) {
3870    return This->lpVtbl->AsShaderResource(This);
3871}
3872static inline ID3D10EffectRenderTargetViewVariable * ID3D10EffectBlendVariable_AsRenderTargetView(ID3D10EffectBlendVariable* This) {
3873    return This->lpVtbl->AsRenderTargetView(This);
3874}
3875static inline ID3D10EffectDepthStencilViewVariable * ID3D10EffectBlendVariable_AsDepthStencilView(ID3D10EffectBlendVariable* This) {
3876    return This->lpVtbl->AsDepthStencilView(This);
3877}
3878static inline ID3D10EffectConstantBuffer * ID3D10EffectBlendVariable_AsConstantBuffer(ID3D10EffectBlendVariable* This) {
3879    return This->lpVtbl->AsConstantBuffer(This);
3880}
3881static inline ID3D10EffectShaderVariable * ID3D10EffectBlendVariable_AsShader(ID3D10EffectBlendVariable* This) {
3882    return This->lpVtbl->AsShader(This);
3883}
3884static inline ID3D10EffectBlendVariable * ID3D10EffectBlendVariable_AsBlend(ID3D10EffectBlendVariable* This) {
3885    return This->lpVtbl->AsBlend(This);
3886}
3887static inline ID3D10EffectDepthStencilVariable * ID3D10EffectBlendVariable_AsDepthStencil(ID3D10EffectBlendVariable* This) {
3888    return This->lpVtbl->AsDepthStencil(This);
3889}
3890static inline ID3D10EffectRasterizerVariable * ID3D10EffectBlendVariable_AsRasterizer(ID3D10EffectBlendVariable* This) {
3891    return This->lpVtbl->AsRasterizer(This);
3892}
3893static inline ID3D10EffectSamplerVariable * ID3D10EffectBlendVariable_AsSampler(ID3D10EffectBlendVariable* This) {
3894    return This->lpVtbl->AsSampler(This);
3895}
3896static inline HRESULT ID3D10EffectBlendVariable_SetRawValue(ID3D10EffectBlendVariable* This,void *data,UINT offset,UINT count) {
3897    return This->lpVtbl->SetRawValue(This,data,offset,count);
3898}
3899static inline HRESULT ID3D10EffectBlendVariable_GetRawValue(ID3D10EffectBlendVariable* This,void *data,UINT offset,UINT count) {
3900    return This->lpVtbl->GetRawValue(This,data,offset,count);
3901}
3902/*** ID3D10EffectBlendVariable methods ***/
3903static inline HRESULT ID3D10EffectBlendVariable_GetBlendState(ID3D10EffectBlendVariable* This,UINT index,ID3D10BlendState **blend_state) {
3904    return This->lpVtbl->GetBlendState(This,index,blend_state);
3905}
3906static inline HRESULT ID3D10EffectBlendVariable_GetBackingStore(ID3D10EffectBlendVariable* This,UINT index,D3D10_BLEND_DESC *desc) {
3907    return This->lpVtbl->GetBackingStore(This,index,desc);
3908}
3909#endif
3910#endif
3911
3912#endif
3913
3914
3915#endif  /* __ID3D10EffectBlendVariable_INTERFACE_DEFINED__ */
3916
3917/*****************************************************************************
3918 * ID3D10EffectDepthStencilVariable interface
3919 */
3920#ifndef __ID3D10EffectDepthStencilVariable_INTERFACE_DEFINED__
3921#define __ID3D10EffectDepthStencilVariable_INTERFACE_DEFINED__
3922
3923DEFINE_GUID(IID_ID3D10EffectDepthStencilVariable, 0xaf482368, 0x330a, 0x46a5, 0x9a,0x5c, 0x01,0xc7,0x1a,0xf2,0x4c,0x8d);
3924#if defined(__cplusplus) && !defined(CINTERFACE)
3925MIDL_INTERFACE("af482368-330a-46a5-9a5c-01c71af24c8d")
3926ID3D10EffectDepthStencilVariable : public ID3D10EffectVariable
3927{
3928    virtual HRESULT STDMETHODCALLTYPE GetDepthStencilState(
3929        UINT index,
3930        ID3D10DepthStencilState **depth_stencil_state) = 0;
3931
3932    virtual HRESULT STDMETHODCALLTYPE GetBackingStore(
3933        UINT index,
3934        D3D10_DEPTH_STENCIL_DESC *desc) = 0;
3935
3936};
3937#ifdef __CRT_UUID_DECL
3938__CRT_UUID_DECL(ID3D10EffectDepthStencilVariable, 0xaf482368, 0x330a, 0x46a5, 0x9a,0x5c, 0x01,0xc7,0x1a,0xf2,0x4c,0x8d)
3939#endif
3940#else
3941typedef struct ID3D10EffectDepthStencilVariableVtbl {
3942    BEGIN_INTERFACE
3943
3944    /*** ID3D10EffectVariable methods ***/
3945    WINBOOL (STDMETHODCALLTYPE *IsValid)(
3946        ID3D10EffectDepthStencilVariable *This);
3947
3948    ID3D10EffectType * (STDMETHODCALLTYPE *GetType)(
3949        ID3D10EffectDepthStencilVariable *This);
3950
3951    HRESULT (STDMETHODCALLTYPE *GetDesc)(
3952        ID3D10EffectDepthStencilVariable *This,
3953        D3D10_EFFECT_VARIABLE_DESC *desc);
3954
3955    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByIndex)(
3956        ID3D10EffectDepthStencilVariable *This,
3957        UINT index);
3958
3959    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByName)(
3960        ID3D10EffectDepthStencilVariable *This,
3961        const char *name);
3962
3963    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByIndex)(
3964        ID3D10EffectDepthStencilVariable *This,
3965        UINT index);
3966
3967    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByName)(
3968        ID3D10EffectDepthStencilVariable *This,
3969        const char *name);
3970
3971    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberBySemantic)(
3972        ID3D10EffectDepthStencilVariable *This,
3973        const char *semantic);
3974
3975    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetElement)(
3976        ID3D10EffectDepthStencilVariable *This,
3977        UINT index);
3978
3979    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *GetParentConstantBuffer)(
3980        ID3D10EffectDepthStencilVariable *This);
3981
3982    ID3D10EffectScalarVariable * (STDMETHODCALLTYPE *AsScalar)(
3983        ID3D10EffectDepthStencilVariable *This);
3984
3985    ID3D10EffectVectorVariable * (STDMETHODCALLTYPE *AsVector)(
3986        ID3D10EffectDepthStencilVariable *This);
3987
3988    ID3D10EffectMatrixVariable * (STDMETHODCALLTYPE *AsMatrix)(
3989        ID3D10EffectDepthStencilVariable *This);
3990
3991    ID3D10EffectStringVariable * (STDMETHODCALLTYPE *AsString)(
3992        ID3D10EffectDepthStencilVariable *This);
3993
3994    ID3D10EffectShaderResourceVariable * (STDMETHODCALLTYPE *AsShaderResource)(
3995        ID3D10EffectDepthStencilVariable *This);
3996
3997    ID3D10EffectRenderTargetViewVariable * (STDMETHODCALLTYPE *AsRenderTargetView)(
3998        ID3D10EffectDepthStencilVariable *This);
3999
4000    ID3D10EffectDepthStencilViewVariable * (STDMETHODCALLTYPE *AsDepthStencilView)(
4001        ID3D10EffectDepthStencilVariable *This);
4002
4003    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *AsConstantBuffer)(
4004        ID3D10EffectDepthStencilVariable *This);
4005
4006    ID3D10EffectShaderVariable * (STDMETHODCALLTYPE *AsShader)(
4007        ID3D10EffectDepthStencilVariable *This);
4008
4009    ID3D10EffectBlendVariable * (STDMETHODCALLTYPE *AsBlend)(
4010        ID3D10EffectDepthStencilVariable *This);
4011
4012    ID3D10EffectDepthStencilVariable * (STDMETHODCALLTYPE *AsDepthStencil)(
4013        ID3D10EffectDepthStencilVariable *This);
4014
4015    ID3D10EffectRasterizerVariable * (STDMETHODCALLTYPE *AsRasterizer)(
4016        ID3D10EffectDepthStencilVariable *This);
4017
4018    ID3D10EffectSamplerVariable * (STDMETHODCALLTYPE *AsSampler)(
4019        ID3D10EffectDepthStencilVariable *This);
4020
4021    HRESULT (STDMETHODCALLTYPE *SetRawValue)(
4022        ID3D10EffectDepthStencilVariable *This,
4023        void *data,
4024        UINT offset,
4025        UINT count);
4026
4027    HRESULT (STDMETHODCALLTYPE *GetRawValue)(
4028        ID3D10EffectDepthStencilVariable *This,
4029        void *data,
4030        UINT offset,
4031        UINT count);
4032
4033    /*** ID3D10EffectDepthStencilVariable methods ***/
4034    HRESULT (STDMETHODCALLTYPE *GetDepthStencilState)(
4035        ID3D10EffectDepthStencilVariable *This,
4036        UINT index,
4037        ID3D10DepthStencilState **depth_stencil_state);
4038
4039    HRESULT (STDMETHODCALLTYPE *GetBackingStore)(
4040        ID3D10EffectDepthStencilVariable *This,
4041        UINT index,
4042        D3D10_DEPTH_STENCIL_DESC *desc);
4043
4044    END_INTERFACE
4045} ID3D10EffectDepthStencilVariableVtbl;
4046
4047interface ID3D10EffectDepthStencilVariable {
4048    CONST_VTBL ID3D10EffectDepthStencilVariableVtbl* lpVtbl;
4049};
4050
4051#ifdef COBJMACROS
4052#ifndef WIDL_C_INLINE_WRAPPERS
4053/*** ID3D10EffectVariable methods ***/
4054#define ID3D10EffectDepthStencilVariable_IsValid(This) (This)->lpVtbl->IsValid(This)
4055#define ID3D10EffectDepthStencilVariable_GetType(This) (This)->lpVtbl->GetType(This)
4056#define ID3D10EffectDepthStencilVariable_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
4057#define ID3D10EffectDepthStencilVariable_GetAnnotationByIndex(This,index) (This)->lpVtbl->GetAnnotationByIndex(This,index)
4058#define ID3D10EffectDepthStencilVariable_GetAnnotationByName(This,name) (This)->lpVtbl->GetAnnotationByName(This,name)
4059#define ID3D10EffectDepthStencilVariable_GetMemberByIndex(This,index) (This)->lpVtbl->GetMemberByIndex(This,index)
4060#define ID3D10EffectDepthStencilVariable_GetMemberByName(This,name) (This)->lpVtbl->GetMemberByName(This,name)
4061#define ID3D10EffectDepthStencilVariable_GetMemberBySemantic(This,semantic) (This)->lpVtbl->GetMemberBySemantic(This,semantic)
4062#define ID3D10EffectDepthStencilVariable_GetElement(This,index) (This)->lpVtbl->GetElement(This,index)
4063#define ID3D10EffectDepthStencilVariable_GetParentConstantBuffer(This) (This)->lpVtbl->GetParentConstantBuffer(This)
4064#define ID3D10EffectDepthStencilVariable_AsScalar(This) (This)->lpVtbl->AsScalar(This)
4065#define ID3D10EffectDepthStencilVariable_AsVector(This) (This)->lpVtbl->AsVector(This)
4066#define ID3D10EffectDepthStencilVariable_AsMatrix(This) (This)->lpVtbl->AsMatrix(This)
4067#define ID3D10EffectDepthStencilVariable_AsString(This) (This)->lpVtbl->AsString(This)
4068#define ID3D10EffectDepthStencilVariable_AsShaderResource(This) (This)->lpVtbl->AsShaderResource(This)
4069#define ID3D10EffectDepthStencilVariable_AsRenderTargetView(This) (This)->lpVtbl->AsRenderTargetView(This)
4070#define ID3D10EffectDepthStencilVariable_AsDepthStencilView(This) (This)->lpVtbl->AsDepthStencilView(This)
4071#define ID3D10EffectDepthStencilVariable_AsConstantBuffer(This) (This)->lpVtbl->AsConstantBuffer(This)
4072#define ID3D10EffectDepthStencilVariable_AsShader(This) (This)->lpVtbl->AsShader(This)
4073#define ID3D10EffectDepthStencilVariable_AsBlend(This) (This)->lpVtbl->AsBlend(This)
4074#define ID3D10EffectDepthStencilVariable_AsDepthStencil(This) (This)->lpVtbl->AsDepthStencil(This)
4075#define ID3D10EffectDepthStencilVariable_AsRasterizer(This) (This)->lpVtbl->AsRasterizer(This)
4076#define ID3D10EffectDepthStencilVariable_AsSampler(This) (This)->lpVtbl->AsSampler(This)
4077#define ID3D10EffectDepthStencilVariable_SetRawValue(This,data,offset,count) (This)->lpVtbl->SetRawValue(This,data,offset,count)
4078#define ID3D10EffectDepthStencilVariable_GetRawValue(This,data,offset,count) (This)->lpVtbl->GetRawValue(This,data,offset,count)
4079/*** ID3D10EffectDepthStencilVariable methods ***/
4080#define ID3D10EffectDepthStencilVariable_GetDepthStencilState(This,index,depth_stencil_state) (This)->lpVtbl->GetDepthStencilState(This,index,depth_stencil_state)
4081#define ID3D10EffectDepthStencilVariable_GetBackingStore(This,index,desc) (This)->lpVtbl->GetBackingStore(This,index,desc)
4082#else
4083/*** ID3D10EffectVariable methods ***/
4084static inline WINBOOL ID3D10EffectDepthStencilVariable_IsValid(ID3D10EffectDepthStencilVariable* This) {
4085    return This->lpVtbl->IsValid(This);
4086}
4087static inline ID3D10EffectType * ID3D10EffectDepthStencilVariable_GetType(ID3D10EffectDepthStencilVariable* This) {
4088    return This->lpVtbl->GetType(This);
4089}
4090static inline HRESULT ID3D10EffectDepthStencilVariable_GetDesc(ID3D10EffectDepthStencilVariable* This,D3D10_EFFECT_VARIABLE_DESC *desc) {
4091    return This->lpVtbl->GetDesc(This,desc);
4092}
4093static inline ID3D10EffectVariable * ID3D10EffectDepthStencilVariable_GetAnnotationByIndex(ID3D10EffectDepthStencilVariable* This,UINT index) {
4094    return This->lpVtbl->GetAnnotationByIndex(This,index);
4095}
4096static inline ID3D10EffectVariable * ID3D10EffectDepthStencilVariable_GetAnnotationByName(ID3D10EffectDepthStencilVariable* This,const char *name) {
4097    return This->lpVtbl->GetAnnotationByName(This,name);
4098}
4099static inline ID3D10EffectVariable * ID3D10EffectDepthStencilVariable_GetMemberByIndex(ID3D10EffectDepthStencilVariable* This,UINT index) {
4100    return This->lpVtbl->GetMemberByIndex(This,index);
4101}
4102static inline ID3D10EffectVariable * ID3D10EffectDepthStencilVariable_GetMemberByName(ID3D10EffectDepthStencilVariable* This,const char *name) {
4103    return This->lpVtbl->GetMemberByName(This,name);
4104}
4105static inline ID3D10EffectVariable * ID3D10EffectDepthStencilVariable_GetMemberBySemantic(ID3D10EffectDepthStencilVariable* This,const char *semantic) {
4106    return This->lpVtbl->GetMemberBySemantic(This,semantic);
4107}
4108static inline ID3D10EffectVariable * ID3D10EffectDepthStencilVariable_GetElement(ID3D10EffectDepthStencilVariable* This,UINT index) {
4109    return This->lpVtbl->GetElement(This,index);
4110}
4111static inline ID3D10EffectConstantBuffer * ID3D10EffectDepthStencilVariable_GetParentConstantBuffer(ID3D10EffectDepthStencilVariable* This) {
4112    return This->lpVtbl->GetParentConstantBuffer(This);
4113}
4114static inline ID3D10EffectScalarVariable * ID3D10EffectDepthStencilVariable_AsScalar(ID3D10EffectDepthStencilVariable* This) {
4115    return This->lpVtbl->AsScalar(This);
4116}
4117static inline ID3D10EffectVectorVariable * ID3D10EffectDepthStencilVariable_AsVector(ID3D10EffectDepthStencilVariable* This) {
4118    return This->lpVtbl->AsVector(This);
4119}
4120static inline ID3D10EffectMatrixVariable * ID3D10EffectDepthStencilVariable_AsMatrix(ID3D10EffectDepthStencilVariable* This) {
4121    return This->lpVtbl->AsMatrix(This);
4122}
4123static inline ID3D10EffectStringVariable * ID3D10EffectDepthStencilVariable_AsString(ID3D10EffectDepthStencilVariable* This) {
4124    return This->lpVtbl->AsString(This);
4125}
4126static inline ID3D10EffectShaderResourceVariable * ID3D10EffectDepthStencilVariable_AsShaderResource(ID3D10EffectDepthStencilVariable* This) {
4127    return This->lpVtbl->AsShaderResource(This);
4128}
4129static inline ID3D10EffectRenderTargetViewVariable * ID3D10EffectDepthStencilVariable_AsRenderTargetView(ID3D10EffectDepthStencilVariable* This) {
4130    return This->lpVtbl->AsRenderTargetView(This);
4131}
4132static inline ID3D10EffectDepthStencilViewVariable * ID3D10EffectDepthStencilVariable_AsDepthStencilView(ID3D10EffectDepthStencilVariable* This) {
4133    return This->lpVtbl->AsDepthStencilView(This);
4134}
4135static inline ID3D10EffectConstantBuffer * ID3D10EffectDepthStencilVariable_AsConstantBuffer(ID3D10EffectDepthStencilVariable* This) {
4136    return This->lpVtbl->AsConstantBuffer(This);
4137}
4138static inline ID3D10EffectShaderVariable * ID3D10EffectDepthStencilVariable_AsShader(ID3D10EffectDepthStencilVariable* This) {
4139    return This->lpVtbl->AsShader(This);
4140}
4141static inline ID3D10EffectBlendVariable * ID3D10EffectDepthStencilVariable_AsBlend(ID3D10EffectDepthStencilVariable* This) {
4142    return This->lpVtbl->AsBlend(This);
4143}
4144static inline ID3D10EffectDepthStencilVariable * ID3D10EffectDepthStencilVariable_AsDepthStencil(ID3D10EffectDepthStencilVariable* This) {
4145    return This->lpVtbl->AsDepthStencil(This);
4146}
4147static inline ID3D10EffectRasterizerVariable * ID3D10EffectDepthStencilVariable_AsRasterizer(ID3D10EffectDepthStencilVariable* This) {
4148    return This->lpVtbl->AsRasterizer(This);
4149}
4150static inline ID3D10EffectSamplerVariable * ID3D10EffectDepthStencilVariable_AsSampler(ID3D10EffectDepthStencilVariable* This) {
4151    return This->lpVtbl->AsSampler(This);
4152}
4153static inline HRESULT ID3D10EffectDepthStencilVariable_SetRawValue(ID3D10EffectDepthStencilVariable* This,void *data,UINT offset,UINT count) {
4154    return This->lpVtbl->SetRawValue(This,data,offset,count);
4155}
4156static inline HRESULT ID3D10EffectDepthStencilVariable_GetRawValue(ID3D10EffectDepthStencilVariable* This,void *data,UINT offset,UINT count) {
4157    return This->lpVtbl->GetRawValue(This,data,offset,count);
4158}
4159/*** ID3D10EffectDepthStencilVariable methods ***/
4160static inline HRESULT ID3D10EffectDepthStencilVariable_GetDepthStencilState(ID3D10EffectDepthStencilVariable* This,UINT index,ID3D10DepthStencilState **depth_stencil_state) {
4161    return This->lpVtbl->GetDepthStencilState(This,index,depth_stencil_state);
4162}
4163static inline HRESULT ID3D10EffectDepthStencilVariable_GetBackingStore(ID3D10EffectDepthStencilVariable* This,UINT index,D3D10_DEPTH_STENCIL_DESC *desc) {
4164    return This->lpVtbl->GetBackingStore(This,index,desc);
4165}
4166#endif
4167#endif
4168
4169#endif
4170
4171
4172#endif  /* __ID3D10EffectDepthStencilVariable_INTERFACE_DEFINED__ */
4173
4174/*****************************************************************************
4175 * ID3D10EffectRasterizerVariable interface
4176 */
4177#ifndef __ID3D10EffectRasterizerVariable_INTERFACE_DEFINED__
4178#define __ID3D10EffectRasterizerVariable_INTERFACE_DEFINED__
4179
4180DEFINE_GUID(IID_ID3D10EffectRasterizerVariable, 0x21af9f0e, 0x4d94, 0x4ea9, 0x97,0x85, 0x2c,0xb7,0x6b,0x8c,0x0b,0x34);
4181#if defined(__cplusplus) && !defined(CINTERFACE)
4182MIDL_INTERFACE("21af9f0e-4d94-4ea9-9785-2cb76b8c0b34")
4183ID3D10EffectRasterizerVariable : public ID3D10EffectVariable
4184{
4185    virtual HRESULT STDMETHODCALLTYPE GetRasterizerState(
4186        UINT index,
4187        ID3D10RasterizerState **rasterizer_state) = 0;
4188
4189    virtual HRESULT STDMETHODCALLTYPE GetBackingStore(
4190        UINT index,
4191        D3D10_RASTERIZER_DESC *desc) = 0;
4192
4193};
4194#ifdef __CRT_UUID_DECL
4195__CRT_UUID_DECL(ID3D10EffectRasterizerVariable, 0x21af9f0e, 0x4d94, 0x4ea9, 0x97,0x85, 0x2c,0xb7,0x6b,0x8c,0x0b,0x34)
4196#endif
4197#else
4198typedef struct ID3D10EffectRasterizerVariableVtbl {
4199    BEGIN_INTERFACE
4200
4201    /*** ID3D10EffectVariable methods ***/
4202    WINBOOL (STDMETHODCALLTYPE *IsValid)(
4203        ID3D10EffectRasterizerVariable *This);
4204
4205    ID3D10EffectType * (STDMETHODCALLTYPE *GetType)(
4206        ID3D10EffectRasterizerVariable *This);
4207
4208    HRESULT (STDMETHODCALLTYPE *GetDesc)(
4209        ID3D10EffectRasterizerVariable *This,
4210        D3D10_EFFECT_VARIABLE_DESC *desc);
4211
4212    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByIndex)(
4213        ID3D10EffectRasterizerVariable *This,
4214        UINT index);
4215
4216    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByName)(
4217        ID3D10EffectRasterizerVariable *This,
4218        const char *name);
4219
4220    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByIndex)(
4221        ID3D10EffectRasterizerVariable *This,
4222        UINT index);
4223
4224    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByName)(
4225        ID3D10EffectRasterizerVariable *This,
4226        const char *name);
4227
4228    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberBySemantic)(
4229        ID3D10EffectRasterizerVariable *This,
4230        const char *semantic);
4231
4232    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetElement)(
4233        ID3D10EffectRasterizerVariable *This,
4234        UINT index);
4235
4236    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *GetParentConstantBuffer)(
4237        ID3D10EffectRasterizerVariable *This);
4238
4239    ID3D10EffectScalarVariable * (STDMETHODCALLTYPE *AsScalar)(
4240        ID3D10EffectRasterizerVariable *This);
4241
4242    ID3D10EffectVectorVariable * (STDMETHODCALLTYPE *AsVector)(
4243        ID3D10EffectRasterizerVariable *This);
4244
4245    ID3D10EffectMatrixVariable * (STDMETHODCALLTYPE *AsMatrix)(
4246        ID3D10EffectRasterizerVariable *This);
4247
4248    ID3D10EffectStringVariable * (STDMETHODCALLTYPE *AsString)(
4249        ID3D10EffectRasterizerVariable *This);
4250
4251    ID3D10EffectShaderResourceVariable * (STDMETHODCALLTYPE *AsShaderResource)(
4252        ID3D10EffectRasterizerVariable *This);
4253
4254    ID3D10EffectRenderTargetViewVariable * (STDMETHODCALLTYPE *AsRenderTargetView)(
4255        ID3D10EffectRasterizerVariable *This);
4256
4257    ID3D10EffectDepthStencilViewVariable * (STDMETHODCALLTYPE *AsDepthStencilView)(
4258        ID3D10EffectRasterizerVariable *This);
4259
4260    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *AsConstantBuffer)(
4261        ID3D10EffectRasterizerVariable *This);
4262
4263    ID3D10EffectShaderVariable * (STDMETHODCALLTYPE *AsShader)(
4264        ID3D10EffectRasterizerVariable *This);
4265
4266    ID3D10EffectBlendVariable * (STDMETHODCALLTYPE *AsBlend)(
4267        ID3D10EffectRasterizerVariable *This);
4268
4269    ID3D10EffectDepthStencilVariable * (STDMETHODCALLTYPE *AsDepthStencil)(
4270        ID3D10EffectRasterizerVariable *This);
4271
4272    ID3D10EffectRasterizerVariable * (STDMETHODCALLTYPE *AsRasterizer)(
4273        ID3D10EffectRasterizerVariable *This);
4274
4275    ID3D10EffectSamplerVariable * (STDMETHODCALLTYPE *AsSampler)(
4276        ID3D10EffectRasterizerVariable *This);
4277
4278    HRESULT (STDMETHODCALLTYPE *SetRawValue)(
4279        ID3D10EffectRasterizerVariable *This,
4280        void *data,
4281        UINT offset,
4282        UINT count);
4283
4284    HRESULT (STDMETHODCALLTYPE *GetRawValue)(
4285        ID3D10EffectRasterizerVariable *This,
4286        void *data,
4287        UINT offset,
4288        UINT count);
4289
4290    /*** ID3D10EffectRasterizerVariable methods ***/
4291    HRESULT (STDMETHODCALLTYPE *GetRasterizerState)(
4292        ID3D10EffectRasterizerVariable *This,
4293        UINT index,
4294        ID3D10RasterizerState **rasterizer_state);
4295
4296    HRESULT (STDMETHODCALLTYPE *GetBackingStore)(
4297        ID3D10EffectRasterizerVariable *This,
4298        UINT index,
4299        D3D10_RASTERIZER_DESC *desc);
4300
4301    END_INTERFACE
4302} ID3D10EffectRasterizerVariableVtbl;
4303
4304interface ID3D10EffectRasterizerVariable {
4305    CONST_VTBL ID3D10EffectRasterizerVariableVtbl* lpVtbl;
4306};
4307
4308#ifdef COBJMACROS
4309#ifndef WIDL_C_INLINE_WRAPPERS
4310/*** ID3D10EffectVariable methods ***/
4311#define ID3D10EffectRasterizerVariable_IsValid(This) (This)->lpVtbl->IsValid(This)
4312#define ID3D10EffectRasterizerVariable_GetType(This) (This)->lpVtbl->GetType(This)
4313#define ID3D10EffectRasterizerVariable_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
4314#define ID3D10EffectRasterizerVariable_GetAnnotationByIndex(This,index) (This)->lpVtbl->GetAnnotationByIndex(This,index)
4315#define ID3D10EffectRasterizerVariable_GetAnnotationByName(This,name) (This)->lpVtbl->GetAnnotationByName(This,name)
4316#define ID3D10EffectRasterizerVariable_GetMemberByIndex(This,index) (This)->lpVtbl->GetMemberByIndex(This,index)
4317#define ID3D10EffectRasterizerVariable_GetMemberByName(This,name) (This)->lpVtbl->GetMemberByName(This,name)
4318#define ID3D10EffectRasterizerVariable_GetMemberBySemantic(This,semantic) (This)->lpVtbl->GetMemberBySemantic(This,semantic)
4319#define ID3D10EffectRasterizerVariable_GetElement(This,index) (This)->lpVtbl->GetElement(This,index)
4320#define ID3D10EffectRasterizerVariable_GetParentConstantBuffer(This) (This)->lpVtbl->GetParentConstantBuffer(This)
4321#define ID3D10EffectRasterizerVariable_AsScalar(This) (This)->lpVtbl->AsScalar(This)
4322#define ID3D10EffectRasterizerVariable_AsVector(This) (This)->lpVtbl->AsVector(This)
4323#define ID3D10EffectRasterizerVariable_AsMatrix(This) (This)->lpVtbl->AsMatrix(This)
4324#define ID3D10EffectRasterizerVariable_AsString(This) (This)->lpVtbl->AsString(This)
4325#define ID3D10EffectRasterizerVariable_AsShaderResource(This) (This)->lpVtbl->AsShaderResource(This)
4326#define ID3D10EffectRasterizerVariable_AsRenderTargetView(This) (This)->lpVtbl->AsRenderTargetView(This)
4327#define ID3D10EffectRasterizerVariable_AsDepthStencilView(This) (This)->lpVtbl->AsDepthStencilView(This)
4328#define ID3D10EffectRasterizerVariable_AsConstantBuffer(This) (This)->lpVtbl->AsConstantBuffer(This)
4329#define ID3D10EffectRasterizerVariable_AsShader(This) (This)->lpVtbl->AsShader(This)
4330#define ID3D10EffectRasterizerVariable_AsBlend(This) (This)->lpVtbl->AsBlend(This)
4331#define ID3D10EffectRasterizerVariable_AsDepthStencil(This) (This)->lpVtbl->AsDepthStencil(This)
4332#define ID3D10EffectRasterizerVariable_AsRasterizer(This) (This)->lpVtbl->AsRasterizer(This)
4333#define ID3D10EffectRasterizerVariable_AsSampler(This) (This)->lpVtbl->AsSampler(This)
4334#define ID3D10EffectRasterizerVariable_SetRawValue(This,data,offset,count) (This)->lpVtbl->SetRawValue(This,data,offset,count)
4335#define ID3D10EffectRasterizerVariable_GetRawValue(This,data,offset,count) (This)->lpVtbl->GetRawValue(This,data,offset,count)
4336/*** ID3D10EffectRasterizerVariable methods ***/
4337#define ID3D10EffectRasterizerVariable_GetRasterizerState(This,index,rasterizer_state) (This)->lpVtbl->GetRasterizerState(This,index,rasterizer_state)
4338#define ID3D10EffectRasterizerVariable_GetBackingStore(This,index,desc) (This)->lpVtbl->GetBackingStore(This,index,desc)
4339#else
4340/*** ID3D10EffectVariable methods ***/
4341static inline WINBOOL ID3D10EffectRasterizerVariable_IsValid(ID3D10EffectRasterizerVariable* This) {
4342    return This->lpVtbl->IsValid(This);
4343}
4344static inline ID3D10EffectType * ID3D10EffectRasterizerVariable_GetType(ID3D10EffectRasterizerVariable* This) {
4345    return This->lpVtbl->GetType(This);
4346}
4347static inline HRESULT ID3D10EffectRasterizerVariable_GetDesc(ID3D10EffectRasterizerVariable* This,D3D10_EFFECT_VARIABLE_DESC *desc) {
4348    return This->lpVtbl->GetDesc(This,desc);
4349}
4350static inline ID3D10EffectVariable * ID3D10EffectRasterizerVariable_GetAnnotationByIndex(ID3D10EffectRasterizerVariable* This,UINT index) {
4351    return This->lpVtbl->GetAnnotationByIndex(This,index);
4352}
4353static inline ID3D10EffectVariable * ID3D10EffectRasterizerVariable_GetAnnotationByName(ID3D10EffectRasterizerVariable* This,const char *name) {
4354    return This->lpVtbl->GetAnnotationByName(This,name);
4355}
4356static inline ID3D10EffectVariable * ID3D10EffectRasterizerVariable_GetMemberByIndex(ID3D10EffectRasterizerVariable* This,UINT index) {
4357    return This->lpVtbl->GetMemberByIndex(This,index);
4358}
4359static inline ID3D10EffectVariable * ID3D10EffectRasterizerVariable_GetMemberByName(ID3D10EffectRasterizerVariable* This,const char *name) {
4360    return This->lpVtbl->GetMemberByName(This,name);
4361}
4362static inline ID3D10EffectVariable * ID3D10EffectRasterizerVariable_GetMemberBySemantic(ID3D10EffectRasterizerVariable* This,const char *semantic) {
4363    return This->lpVtbl->GetMemberBySemantic(This,semantic);
4364}
4365static inline ID3D10EffectVariable * ID3D10EffectRasterizerVariable_GetElement(ID3D10EffectRasterizerVariable* This,UINT index) {
4366    return This->lpVtbl->GetElement(This,index);
4367}
4368static inline ID3D10EffectConstantBuffer * ID3D10EffectRasterizerVariable_GetParentConstantBuffer(ID3D10EffectRasterizerVariable* This) {
4369    return This->lpVtbl->GetParentConstantBuffer(This);
4370}
4371static inline ID3D10EffectScalarVariable * ID3D10EffectRasterizerVariable_AsScalar(ID3D10EffectRasterizerVariable* This) {
4372    return This->lpVtbl->AsScalar(This);
4373}
4374static inline ID3D10EffectVectorVariable * ID3D10EffectRasterizerVariable_AsVector(ID3D10EffectRasterizerVariable* This) {
4375    return This->lpVtbl->AsVector(This);
4376}
4377static inline ID3D10EffectMatrixVariable * ID3D10EffectRasterizerVariable_AsMatrix(ID3D10EffectRasterizerVariable* This) {
4378    return This->lpVtbl->AsMatrix(This);
4379}
4380static inline ID3D10EffectStringVariable * ID3D10EffectRasterizerVariable_AsString(ID3D10EffectRasterizerVariable* This) {
4381    return This->lpVtbl->AsString(This);
4382}
4383static inline ID3D10EffectShaderResourceVariable * ID3D10EffectRasterizerVariable_AsShaderResource(ID3D10EffectRasterizerVariable* This) {
4384    return This->lpVtbl->AsShaderResource(This);
4385}
4386static inline ID3D10EffectRenderTargetViewVariable * ID3D10EffectRasterizerVariable_AsRenderTargetView(ID3D10EffectRasterizerVariable* This) {
4387    return This->lpVtbl->AsRenderTargetView(This);
4388}
4389static inline ID3D10EffectDepthStencilViewVariable * ID3D10EffectRasterizerVariable_AsDepthStencilView(ID3D10EffectRasterizerVariable* This) {
4390    return This->lpVtbl->AsDepthStencilView(This);
4391}
4392static inline ID3D10EffectConstantBuffer * ID3D10EffectRasterizerVariable_AsConstantBuffer(ID3D10EffectRasterizerVariable* This) {
4393    return This->lpVtbl->AsConstantBuffer(This);
4394}
4395static inline ID3D10EffectShaderVariable * ID3D10EffectRasterizerVariable_AsShader(ID3D10EffectRasterizerVariable* This) {
4396    return This->lpVtbl->AsShader(This);
4397}
4398static inline ID3D10EffectBlendVariable * ID3D10EffectRasterizerVariable_AsBlend(ID3D10EffectRasterizerVariable* This) {
4399    return This->lpVtbl->AsBlend(This);
4400}
4401static inline ID3D10EffectDepthStencilVariable * ID3D10EffectRasterizerVariable_AsDepthStencil(ID3D10EffectRasterizerVariable* This) {
4402    return This->lpVtbl->AsDepthStencil(This);
4403}
4404static inline ID3D10EffectRasterizerVariable * ID3D10EffectRasterizerVariable_AsRasterizer(ID3D10EffectRasterizerVariable* This) {
4405    return This->lpVtbl->AsRasterizer(This);
4406}
4407static inline ID3D10EffectSamplerVariable * ID3D10EffectRasterizerVariable_AsSampler(ID3D10EffectRasterizerVariable* This) {
4408    return This->lpVtbl->AsSampler(This);
4409}
4410static inline HRESULT ID3D10EffectRasterizerVariable_SetRawValue(ID3D10EffectRasterizerVariable* This,void *data,UINT offset,UINT count) {
4411    return This->lpVtbl->SetRawValue(This,data,offset,count);
4412}
4413static inline HRESULT ID3D10EffectRasterizerVariable_GetRawValue(ID3D10EffectRasterizerVariable* This,void *data,UINT offset,UINT count) {
4414    return This->lpVtbl->GetRawValue(This,data,offset,count);
4415}
4416/*** ID3D10EffectRasterizerVariable methods ***/
4417static inline HRESULT ID3D10EffectRasterizerVariable_GetRasterizerState(ID3D10EffectRasterizerVariable* This,UINT index,ID3D10RasterizerState **rasterizer_state) {
4418    return This->lpVtbl->GetRasterizerState(This,index,rasterizer_state);
4419}
4420static inline HRESULT ID3D10EffectRasterizerVariable_GetBackingStore(ID3D10EffectRasterizerVariable* This,UINT index,D3D10_RASTERIZER_DESC *desc) {
4421    return This->lpVtbl->GetBackingStore(This,index,desc);
4422}
4423#endif
4424#endif
4425
4426#endif
4427
4428
4429#endif  /* __ID3D10EffectRasterizerVariable_INTERFACE_DEFINED__ */
4430
4431/*****************************************************************************
4432 * ID3D10EffectSamplerVariable interface
4433 */
4434#ifndef __ID3D10EffectSamplerVariable_INTERFACE_DEFINED__
4435#define __ID3D10EffectSamplerVariable_INTERFACE_DEFINED__
4436
4437DEFINE_GUID(IID_ID3D10EffectSamplerVariable, 0x6530d5c7, 0x07e9, 0x4271, 0xa4,0x18, 0xe7,0xce,0x4b,0xd1,0xe4,0x80);
4438#if defined(__cplusplus) && !defined(CINTERFACE)
4439MIDL_INTERFACE("6530d5c7-07e9-4271-a418-e7ce4bd1e480")
4440ID3D10EffectSamplerVariable : public ID3D10EffectVariable
4441{
4442    virtual HRESULT STDMETHODCALLTYPE GetSampler(
4443        UINT index,
4444        ID3D10SamplerState **sampler) = 0;
4445
4446    virtual HRESULT STDMETHODCALLTYPE GetBackingStore(
4447        UINT index,
4448        D3D10_SAMPLER_DESC *desc) = 0;
4449
4450};
4451#ifdef __CRT_UUID_DECL
4452__CRT_UUID_DECL(ID3D10EffectSamplerVariable, 0x6530d5c7, 0x07e9, 0x4271, 0xa4,0x18, 0xe7,0xce,0x4b,0xd1,0xe4,0x80)
4453#endif
4454#else
4455typedef struct ID3D10EffectSamplerVariableVtbl {
4456    BEGIN_INTERFACE
4457
4458    /*** ID3D10EffectVariable methods ***/
4459    WINBOOL (STDMETHODCALLTYPE *IsValid)(
4460        ID3D10EffectSamplerVariable *This);
4461
4462    ID3D10EffectType * (STDMETHODCALLTYPE *GetType)(
4463        ID3D10EffectSamplerVariable *This);
4464
4465    HRESULT (STDMETHODCALLTYPE *GetDesc)(
4466        ID3D10EffectSamplerVariable *This,
4467        D3D10_EFFECT_VARIABLE_DESC *desc);
4468
4469    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByIndex)(
4470        ID3D10EffectSamplerVariable *This,
4471        UINT index);
4472
4473    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByName)(
4474        ID3D10EffectSamplerVariable *This,
4475        const char *name);
4476
4477    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByIndex)(
4478        ID3D10EffectSamplerVariable *This,
4479        UINT index);
4480
4481    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberByName)(
4482        ID3D10EffectSamplerVariable *This,
4483        const char *name);
4484
4485    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetMemberBySemantic)(
4486        ID3D10EffectSamplerVariable *This,
4487        const char *semantic);
4488
4489    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetElement)(
4490        ID3D10EffectSamplerVariable *This,
4491        UINT index);
4492
4493    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *GetParentConstantBuffer)(
4494        ID3D10EffectSamplerVariable *This);
4495
4496    ID3D10EffectScalarVariable * (STDMETHODCALLTYPE *AsScalar)(
4497        ID3D10EffectSamplerVariable *This);
4498
4499    ID3D10EffectVectorVariable * (STDMETHODCALLTYPE *AsVector)(
4500        ID3D10EffectSamplerVariable *This);
4501
4502    ID3D10EffectMatrixVariable * (STDMETHODCALLTYPE *AsMatrix)(
4503        ID3D10EffectSamplerVariable *This);
4504
4505    ID3D10EffectStringVariable * (STDMETHODCALLTYPE *AsString)(
4506        ID3D10EffectSamplerVariable *This);
4507
4508    ID3D10EffectShaderResourceVariable * (STDMETHODCALLTYPE *AsShaderResource)(
4509        ID3D10EffectSamplerVariable *This);
4510
4511    ID3D10EffectRenderTargetViewVariable * (STDMETHODCALLTYPE *AsRenderTargetView)(
4512        ID3D10EffectSamplerVariable *This);
4513
4514    ID3D10EffectDepthStencilViewVariable * (STDMETHODCALLTYPE *AsDepthStencilView)(
4515        ID3D10EffectSamplerVariable *This);
4516
4517    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *AsConstantBuffer)(
4518        ID3D10EffectSamplerVariable *This);
4519
4520    ID3D10EffectShaderVariable * (STDMETHODCALLTYPE *AsShader)(
4521        ID3D10EffectSamplerVariable *This);
4522
4523    ID3D10EffectBlendVariable * (STDMETHODCALLTYPE *AsBlend)(
4524        ID3D10EffectSamplerVariable *This);
4525
4526    ID3D10EffectDepthStencilVariable * (STDMETHODCALLTYPE *AsDepthStencil)(
4527        ID3D10EffectSamplerVariable *This);
4528
4529    ID3D10EffectRasterizerVariable * (STDMETHODCALLTYPE *AsRasterizer)(
4530        ID3D10EffectSamplerVariable *This);
4531
4532    ID3D10EffectSamplerVariable * (STDMETHODCALLTYPE *AsSampler)(
4533        ID3D10EffectSamplerVariable *This);
4534
4535    HRESULT (STDMETHODCALLTYPE *SetRawValue)(
4536        ID3D10EffectSamplerVariable *This,
4537        void *data,
4538        UINT offset,
4539        UINT count);
4540
4541    HRESULT (STDMETHODCALLTYPE *GetRawValue)(
4542        ID3D10EffectSamplerVariable *This,
4543        void *data,
4544        UINT offset,
4545        UINT count);
4546
4547    /*** ID3D10EffectSamplerVariable methods ***/
4548    HRESULT (STDMETHODCALLTYPE *GetSampler)(
4549        ID3D10EffectSamplerVariable *This,
4550        UINT index,
4551        ID3D10SamplerState **sampler);
4552
4553    HRESULT (STDMETHODCALLTYPE *GetBackingStore)(
4554        ID3D10EffectSamplerVariable *This,
4555        UINT index,
4556        D3D10_SAMPLER_DESC *desc);
4557
4558    END_INTERFACE
4559} ID3D10EffectSamplerVariableVtbl;
4560
4561interface ID3D10EffectSamplerVariable {
4562    CONST_VTBL ID3D10EffectSamplerVariableVtbl* lpVtbl;
4563};
4564
4565#ifdef COBJMACROS
4566#ifndef WIDL_C_INLINE_WRAPPERS
4567/*** ID3D10EffectVariable methods ***/
4568#define ID3D10EffectSamplerVariable_IsValid(This) (This)->lpVtbl->IsValid(This)
4569#define ID3D10EffectSamplerVariable_GetType(This) (This)->lpVtbl->GetType(This)
4570#define ID3D10EffectSamplerVariable_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
4571#define ID3D10EffectSamplerVariable_GetAnnotationByIndex(This,index) (This)->lpVtbl->GetAnnotationByIndex(This,index)
4572#define ID3D10EffectSamplerVariable_GetAnnotationByName(This,name) (This)->lpVtbl->GetAnnotationByName(This,name)
4573#define ID3D10EffectSamplerVariable_GetMemberByIndex(This,index) (This)->lpVtbl->GetMemberByIndex(This,index)
4574#define ID3D10EffectSamplerVariable_GetMemberByName(This,name) (This)->lpVtbl->GetMemberByName(This,name)
4575#define ID3D10EffectSamplerVariable_GetMemberBySemantic(This,semantic) (This)->lpVtbl->GetMemberBySemantic(This,semantic)
4576#define ID3D10EffectSamplerVariable_GetElement(This,index) (This)->lpVtbl->GetElement(This,index)
4577#define ID3D10EffectSamplerVariable_GetParentConstantBuffer(This) (This)->lpVtbl->GetParentConstantBuffer(This)
4578#define ID3D10EffectSamplerVariable_AsScalar(This) (This)->lpVtbl->AsScalar(This)
4579#define ID3D10EffectSamplerVariable_AsVector(This) (This)->lpVtbl->AsVector(This)
4580#define ID3D10EffectSamplerVariable_AsMatrix(This) (This)->lpVtbl->AsMatrix(This)
4581#define ID3D10EffectSamplerVariable_AsString(This) (This)->lpVtbl->AsString(This)
4582#define ID3D10EffectSamplerVariable_AsShaderResource(This) (This)->lpVtbl->AsShaderResource(This)
4583#define ID3D10EffectSamplerVariable_AsRenderTargetView(This) (This)->lpVtbl->AsRenderTargetView(This)
4584#define ID3D10EffectSamplerVariable_AsDepthStencilView(This) (This)->lpVtbl->AsDepthStencilView(This)
4585#define ID3D10EffectSamplerVariable_AsConstantBuffer(This) (This)->lpVtbl->AsConstantBuffer(This)
4586#define ID3D10EffectSamplerVariable_AsShader(This) (This)->lpVtbl->AsShader(This)
4587#define ID3D10EffectSamplerVariable_AsBlend(This) (This)->lpVtbl->AsBlend(This)
4588#define ID3D10EffectSamplerVariable_AsDepthStencil(This) (This)->lpVtbl->AsDepthStencil(This)
4589#define ID3D10EffectSamplerVariable_AsRasterizer(This) (This)->lpVtbl->AsRasterizer(This)
4590#define ID3D10EffectSamplerVariable_AsSampler(This) (This)->lpVtbl->AsSampler(This)
4591#define ID3D10EffectSamplerVariable_SetRawValue(This,data,offset,count) (This)->lpVtbl->SetRawValue(This,data,offset,count)
4592#define ID3D10EffectSamplerVariable_GetRawValue(This,data,offset,count) (This)->lpVtbl->GetRawValue(This,data,offset,count)
4593/*** ID3D10EffectSamplerVariable methods ***/
4594#define ID3D10EffectSamplerVariable_GetSampler(This,index,sampler) (This)->lpVtbl->GetSampler(This,index,sampler)
4595#define ID3D10EffectSamplerVariable_GetBackingStore(This,index,desc) (This)->lpVtbl->GetBackingStore(This,index,desc)
4596#else
4597/*** ID3D10EffectVariable methods ***/
4598static inline WINBOOL ID3D10EffectSamplerVariable_IsValid(ID3D10EffectSamplerVariable* This) {
4599    return This->lpVtbl->IsValid(This);
4600}
4601static inline ID3D10EffectType * ID3D10EffectSamplerVariable_GetType(ID3D10EffectSamplerVariable* This) {
4602    return This->lpVtbl->GetType(This);
4603}
4604static inline HRESULT ID3D10EffectSamplerVariable_GetDesc(ID3D10EffectSamplerVariable* This,D3D10_EFFECT_VARIABLE_DESC *desc) {
4605    return This->lpVtbl->GetDesc(This,desc);
4606}
4607static inline ID3D10EffectVariable * ID3D10EffectSamplerVariable_GetAnnotationByIndex(ID3D10EffectSamplerVariable* This,UINT index) {
4608    return This->lpVtbl->GetAnnotationByIndex(This,index);
4609}
4610static inline ID3D10EffectVariable * ID3D10EffectSamplerVariable_GetAnnotationByName(ID3D10EffectSamplerVariable* This,const char *name) {
4611    return This->lpVtbl->GetAnnotationByName(This,name);
4612}
4613static inline ID3D10EffectVariable * ID3D10EffectSamplerVariable_GetMemberByIndex(ID3D10EffectSamplerVariable* This,UINT index) {
4614    return This->lpVtbl->GetMemberByIndex(This,index);
4615}
4616static inline ID3D10EffectVariable * ID3D10EffectSamplerVariable_GetMemberByName(ID3D10EffectSamplerVariable* This,const char *name) {
4617    return This->lpVtbl->GetMemberByName(This,name);
4618}
4619static inline ID3D10EffectVariable * ID3D10EffectSamplerVariable_GetMemberBySemantic(ID3D10EffectSamplerVariable* This,const char *semantic) {
4620    return This->lpVtbl->GetMemberBySemantic(This,semantic);
4621}
4622static inline ID3D10EffectVariable * ID3D10EffectSamplerVariable_GetElement(ID3D10EffectSamplerVariable* This,UINT index) {
4623    return This->lpVtbl->GetElement(This,index);
4624}
4625static inline ID3D10EffectConstantBuffer * ID3D10EffectSamplerVariable_GetParentConstantBuffer(ID3D10EffectSamplerVariable* This) {
4626    return This->lpVtbl->GetParentConstantBuffer(This);
4627}
4628static inline ID3D10EffectScalarVariable * ID3D10EffectSamplerVariable_AsScalar(ID3D10EffectSamplerVariable* This) {
4629    return This->lpVtbl->AsScalar(This);
4630}
4631static inline ID3D10EffectVectorVariable * ID3D10EffectSamplerVariable_AsVector(ID3D10EffectSamplerVariable* This) {
4632    return This->lpVtbl->AsVector(This);
4633}
4634static inline ID3D10EffectMatrixVariable * ID3D10EffectSamplerVariable_AsMatrix(ID3D10EffectSamplerVariable* This) {
4635    return This->lpVtbl->AsMatrix(This);
4636}
4637static inline ID3D10EffectStringVariable * ID3D10EffectSamplerVariable_AsString(ID3D10EffectSamplerVariable* This) {
4638    return This->lpVtbl->AsString(This);
4639}
4640static inline ID3D10EffectShaderResourceVariable * ID3D10EffectSamplerVariable_AsShaderResource(ID3D10EffectSamplerVariable* This) {
4641    return This->lpVtbl->AsShaderResource(This);
4642}
4643static inline ID3D10EffectRenderTargetViewVariable * ID3D10EffectSamplerVariable_AsRenderTargetView(ID3D10EffectSamplerVariable* This) {
4644    return This->lpVtbl->AsRenderTargetView(This);
4645}
4646static inline ID3D10EffectDepthStencilViewVariable * ID3D10EffectSamplerVariable_AsDepthStencilView(ID3D10EffectSamplerVariable* This) {
4647    return This->lpVtbl->AsDepthStencilView(This);
4648}
4649static inline ID3D10EffectConstantBuffer * ID3D10EffectSamplerVariable_AsConstantBuffer(ID3D10EffectSamplerVariable* This) {
4650    return This->lpVtbl->AsConstantBuffer(This);
4651}
4652static inline ID3D10EffectShaderVariable * ID3D10EffectSamplerVariable_AsShader(ID3D10EffectSamplerVariable* This) {
4653    return This->lpVtbl->AsShader(This);
4654}
4655static inline ID3D10EffectBlendVariable * ID3D10EffectSamplerVariable_AsBlend(ID3D10EffectSamplerVariable* This) {
4656    return This->lpVtbl->AsBlend(This);
4657}
4658static inline ID3D10EffectDepthStencilVariable * ID3D10EffectSamplerVariable_AsDepthStencil(ID3D10EffectSamplerVariable* This) {
4659    return This->lpVtbl->AsDepthStencil(This);
4660}
4661static inline ID3D10EffectRasterizerVariable * ID3D10EffectSamplerVariable_AsRasterizer(ID3D10EffectSamplerVariable* This) {
4662    return This->lpVtbl->AsRasterizer(This);
4663}
4664static inline ID3D10EffectSamplerVariable * ID3D10EffectSamplerVariable_AsSampler(ID3D10EffectSamplerVariable* This) {
4665    return This->lpVtbl->AsSampler(This);
4666}
4667static inline HRESULT ID3D10EffectSamplerVariable_SetRawValue(ID3D10EffectSamplerVariable* This,void *data,UINT offset,UINT count) {
4668    return This->lpVtbl->SetRawValue(This,data,offset,count);
4669}
4670static inline HRESULT ID3D10EffectSamplerVariable_GetRawValue(ID3D10EffectSamplerVariable* This,void *data,UINT offset,UINT count) {
4671    return This->lpVtbl->GetRawValue(This,data,offset,count);
4672}
4673/*** ID3D10EffectSamplerVariable methods ***/
4674static inline HRESULT ID3D10EffectSamplerVariable_GetSampler(ID3D10EffectSamplerVariable* This,UINT index,ID3D10SamplerState **sampler) {
4675    return This->lpVtbl->GetSampler(This,index,sampler);
4676}
4677static inline HRESULT ID3D10EffectSamplerVariable_GetBackingStore(ID3D10EffectSamplerVariable* This,UINT index,D3D10_SAMPLER_DESC *desc) {
4678    return This->lpVtbl->GetBackingStore(This,index,desc);
4679}
4680#endif
4681#endif
4682
4683#endif
4684
4685
4686#endif  /* __ID3D10EffectSamplerVariable_INTERFACE_DEFINED__ */
4687
4688/*****************************************************************************
4689 * ID3D10EffectTechnique interface
4690 */
4691#ifndef __ID3D10EffectTechnique_INTERFACE_DEFINED__
4692#define __ID3D10EffectTechnique_INTERFACE_DEFINED__
4693
4694DEFINE_GUID(IID_ID3D10EffectTechnique, 0xdb122ce8, 0xd1c9, 0x4292, 0xb2,0x37, 0x24,0xed,0x3d,0xe8,0xb1,0x75);
4695#if defined(__cplusplus) && !defined(CINTERFACE)
4696MIDL_INTERFACE("db122ce8-d1c9-4292-b237-24ed3de8b175")
4697ID3D10EffectTechnique
4698{
4699
4700    BEGIN_INTERFACE
4701
4702    virtual WINBOOL STDMETHODCALLTYPE IsValid(
4703        ) = 0;
4704
4705    virtual HRESULT STDMETHODCALLTYPE GetDesc(
4706        D3D10_TECHNIQUE_DESC *desc) = 0;
4707
4708    virtual ID3D10EffectVariable * STDMETHODCALLTYPE GetAnnotationByIndex(
4709        UINT index) = 0;
4710
4711    virtual ID3D10EffectVariable * STDMETHODCALLTYPE GetAnnotationByName(
4712        const char *name) = 0;
4713
4714    virtual ID3D10EffectPass * STDMETHODCALLTYPE GetPassByIndex(
4715        UINT index) = 0;
4716
4717    virtual ID3D10EffectPass * STDMETHODCALLTYPE GetPassByName(
4718        const char *name) = 0;
4719
4720    virtual HRESULT STDMETHODCALLTYPE ComputeStateBlockMask(
4721        D3D10_STATE_BLOCK_MASK *mask) = 0;
4722
4723    END_INTERFACE
4724
4725};
4726#ifdef __CRT_UUID_DECL
4727__CRT_UUID_DECL(ID3D10EffectTechnique, 0xdb122ce8, 0xd1c9, 0x4292, 0xb2,0x37, 0x24,0xed,0x3d,0xe8,0xb1,0x75)
4728#endif
4729#else
4730typedef struct ID3D10EffectTechniqueVtbl {
4731    BEGIN_INTERFACE
4732
4733    /*** ID3D10EffectTechnique methods ***/
4734    WINBOOL (STDMETHODCALLTYPE *IsValid)(
4735        ID3D10EffectTechnique *This);
4736
4737    HRESULT (STDMETHODCALLTYPE *GetDesc)(
4738        ID3D10EffectTechnique *This,
4739        D3D10_TECHNIQUE_DESC *desc);
4740
4741    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByIndex)(
4742        ID3D10EffectTechnique *This,
4743        UINT index);
4744
4745    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByName)(
4746        ID3D10EffectTechnique *This,
4747        const char *name);
4748
4749    ID3D10EffectPass * (STDMETHODCALLTYPE *GetPassByIndex)(
4750        ID3D10EffectTechnique *This,
4751        UINT index);
4752
4753    ID3D10EffectPass * (STDMETHODCALLTYPE *GetPassByName)(
4754        ID3D10EffectTechnique *This,
4755        const char *name);
4756
4757    HRESULT (STDMETHODCALLTYPE *ComputeStateBlockMask)(
4758        ID3D10EffectTechnique *This,
4759        D3D10_STATE_BLOCK_MASK *mask);
4760
4761    END_INTERFACE
4762} ID3D10EffectTechniqueVtbl;
4763
4764interface ID3D10EffectTechnique {
4765    CONST_VTBL ID3D10EffectTechniqueVtbl* lpVtbl;
4766};
4767
4768#ifdef COBJMACROS
4769#ifndef WIDL_C_INLINE_WRAPPERS
4770/*** ID3D10EffectTechnique methods ***/
4771#define ID3D10EffectTechnique_IsValid(This) (This)->lpVtbl->IsValid(This)
4772#define ID3D10EffectTechnique_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
4773#define ID3D10EffectTechnique_GetAnnotationByIndex(This,index) (This)->lpVtbl->GetAnnotationByIndex(This,index)
4774#define ID3D10EffectTechnique_GetAnnotationByName(This,name) (This)->lpVtbl->GetAnnotationByName(This,name)
4775#define ID3D10EffectTechnique_GetPassByIndex(This,index) (This)->lpVtbl->GetPassByIndex(This,index)
4776#define ID3D10EffectTechnique_GetPassByName(This,name) (This)->lpVtbl->GetPassByName(This,name)
4777#define ID3D10EffectTechnique_ComputeStateBlockMask(This,mask) (This)->lpVtbl->ComputeStateBlockMask(This,mask)
4778#else
4779/*** ID3D10EffectTechnique methods ***/
4780static inline WINBOOL ID3D10EffectTechnique_IsValid(ID3D10EffectTechnique* This) {
4781    return This->lpVtbl->IsValid(This);
4782}
4783static inline HRESULT ID3D10EffectTechnique_GetDesc(ID3D10EffectTechnique* This,D3D10_TECHNIQUE_DESC *desc) {
4784    return This->lpVtbl->GetDesc(This,desc);
4785}
4786static inline ID3D10EffectVariable * ID3D10EffectTechnique_GetAnnotationByIndex(ID3D10EffectTechnique* This,UINT index) {
4787    return This->lpVtbl->GetAnnotationByIndex(This,index);
4788}
4789static inline ID3D10EffectVariable * ID3D10EffectTechnique_GetAnnotationByName(ID3D10EffectTechnique* This,const char *name) {
4790    return This->lpVtbl->GetAnnotationByName(This,name);
4791}
4792static inline ID3D10EffectPass * ID3D10EffectTechnique_GetPassByIndex(ID3D10EffectTechnique* This,UINT index) {
4793    return This->lpVtbl->GetPassByIndex(This,index);
4794}
4795static inline ID3D10EffectPass * ID3D10EffectTechnique_GetPassByName(ID3D10EffectTechnique* This,const char *name) {
4796    return This->lpVtbl->GetPassByName(This,name);
4797}
4798static inline HRESULT ID3D10EffectTechnique_ComputeStateBlockMask(ID3D10EffectTechnique* This,D3D10_STATE_BLOCK_MASK *mask) {
4799    return This->lpVtbl->ComputeStateBlockMask(This,mask);
4800}
4801#endif
4802#endif
4803
4804#endif
4805
4806
4807#endif  /* __ID3D10EffectTechnique_INTERFACE_DEFINED__ */
4808
4809/*****************************************************************************
4810 * ID3D10Effect interface
4811 */
4812#ifndef __ID3D10Effect_INTERFACE_DEFINED__
4813#define __ID3D10Effect_INTERFACE_DEFINED__
4814
4815DEFINE_GUID(IID_ID3D10Effect, 0x51b0ca8b, 0xec0b, 0x4519, 0x87,0x0d, 0x8e,0xe1,0xcb,0x50,0x17,0xc7);
4816#if defined(__cplusplus) && !defined(CINTERFACE)
4817MIDL_INTERFACE("51b0ca8b-ec0b-4519-870d-8ee1cb5017c7")
4818ID3D10Effect : public IUnknown
4819{
4820    virtual WINBOOL STDMETHODCALLTYPE IsValid(
4821        ) = 0;
4822
4823    virtual WINBOOL STDMETHODCALLTYPE IsPool(
4824        ) = 0;
4825
4826    virtual HRESULT STDMETHODCALLTYPE GetDevice(
4827        ID3D10Device **device) = 0;
4828
4829    virtual HRESULT STDMETHODCALLTYPE GetDesc(
4830        D3D10_EFFECT_DESC *desc) = 0;
4831
4832    virtual ID3D10EffectConstantBuffer * STDMETHODCALLTYPE GetConstantBufferByIndex(
4833        UINT index) = 0;
4834
4835    virtual ID3D10EffectConstantBuffer * STDMETHODCALLTYPE GetConstantBufferByName(
4836        const char *name) = 0;
4837
4838    virtual ID3D10EffectVariable * STDMETHODCALLTYPE GetVariableByIndex(
4839        UINT index) = 0;
4840
4841    virtual ID3D10EffectVariable * STDMETHODCALLTYPE GetVariableByName(
4842        const char *name) = 0;
4843
4844    virtual ID3D10EffectVariable * STDMETHODCALLTYPE GetVariableBySemantic(
4845        const char *semantic) = 0;
4846
4847    virtual ID3D10EffectTechnique * STDMETHODCALLTYPE GetTechniqueByIndex(
4848        UINT index) = 0;
4849
4850    virtual ID3D10EffectTechnique * STDMETHODCALLTYPE GetTechniqueByName(
4851        const char *name) = 0;
4852
4853    virtual HRESULT STDMETHODCALLTYPE Optimize(
4854        ) = 0;
4855
4856    virtual WINBOOL STDMETHODCALLTYPE IsOptimized(
4857        ) = 0;
4858
4859};
4860#ifdef __CRT_UUID_DECL
4861__CRT_UUID_DECL(ID3D10Effect, 0x51b0ca8b, 0xec0b, 0x4519, 0x87,0x0d, 0x8e,0xe1,0xcb,0x50,0x17,0xc7)
4862#endif
4863#else
4864typedef struct ID3D10EffectVtbl {
4865    BEGIN_INTERFACE
4866
4867    /*** IUnknown methods ***/
4868    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4869        ID3D10Effect *This,
4870        REFIID riid,
4871        void **ppvObject);
4872
4873    ULONG (STDMETHODCALLTYPE *AddRef)(
4874        ID3D10Effect *This);
4875
4876    ULONG (STDMETHODCALLTYPE *Release)(
4877        ID3D10Effect *This);
4878
4879    /*** ID3D10Effect methods ***/
4880    WINBOOL (STDMETHODCALLTYPE *IsValid)(
4881        ID3D10Effect *This);
4882
4883    WINBOOL (STDMETHODCALLTYPE *IsPool)(
4884        ID3D10Effect *This);
4885
4886    HRESULT (STDMETHODCALLTYPE *GetDevice)(
4887        ID3D10Effect *This,
4888        ID3D10Device **device);
4889
4890    HRESULT (STDMETHODCALLTYPE *GetDesc)(
4891        ID3D10Effect *This,
4892        D3D10_EFFECT_DESC *desc);
4893
4894    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *GetConstantBufferByIndex)(
4895        ID3D10Effect *This,
4896        UINT index);
4897
4898    ID3D10EffectConstantBuffer * (STDMETHODCALLTYPE *GetConstantBufferByName)(
4899        ID3D10Effect *This,
4900        const char *name);
4901
4902    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetVariableByIndex)(
4903        ID3D10Effect *This,
4904        UINT index);
4905
4906    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetVariableByName)(
4907        ID3D10Effect *This,
4908        const char *name);
4909
4910    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetVariableBySemantic)(
4911        ID3D10Effect *This,
4912        const char *semantic);
4913
4914    ID3D10EffectTechnique * (STDMETHODCALLTYPE *GetTechniqueByIndex)(
4915        ID3D10Effect *This,
4916        UINT index);
4917
4918    ID3D10EffectTechnique * (STDMETHODCALLTYPE *GetTechniqueByName)(
4919        ID3D10Effect *This,
4920        const char *name);
4921
4922    HRESULT (STDMETHODCALLTYPE *Optimize)(
4923        ID3D10Effect *This);
4924
4925    WINBOOL (STDMETHODCALLTYPE *IsOptimized)(
4926        ID3D10Effect *This);
4927
4928    END_INTERFACE
4929} ID3D10EffectVtbl;
4930
4931interface ID3D10Effect {
4932    CONST_VTBL ID3D10EffectVtbl* lpVtbl;
4933};
4934
4935#ifdef COBJMACROS
4936#ifndef WIDL_C_INLINE_WRAPPERS
4937/*** IUnknown methods ***/
4938#define ID3D10Effect_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4939#define ID3D10Effect_AddRef(This) (This)->lpVtbl->AddRef(This)
4940#define ID3D10Effect_Release(This) (This)->lpVtbl->Release(This)
4941/*** ID3D10Effect methods ***/
4942#define ID3D10Effect_IsValid(This) (This)->lpVtbl->IsValid(This)
4943#define ID3D10Effect_IsPool(This) (This)->lpVtbl->IsPool(This)
4944#define ID3D10Effect_GetDevice(This,device) (This)->lpVtbl->GetDevice(This,device)
4945#define ID3D10Effect_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
4946#define ID3D10Effect_GetConstantBufferByIndex(This,index) (This)->lpVtbl->GetConstantBufferByIndex(This,index)
4947#define ID3D10Effect_GetConstantBufferByName(This,name) (This)->lpVtbl->GetConstantBufferByName(This,name)
4948#define ID3D10Effect_GetVariableByIndex(This,index) (This)->lpVtbl->GetVariableByIndex(This,index)
4949#define ID3D10Effect_GetVariableByName(This,name) (This)->lpVtbl->GetVariableByName(This,name)
4950#define ID3D10Effect_GetVariableBySemantic(This,semantic) (This)->lpVtbl->GetVariableBySemantic(This,semantic)
4951#define ID3D10Effect_GetTechniqueByIndex(This,index) (This)->lpVtbl->GetTechniqueByIndex(This,index)
4952#define ID3D10Effect_GetTechniqueByName(This,name) (This)->lpVtbl->GetTechniqueByName(This,name)
4953#define ID3D10Effect_Optimize(This) (This)->lpVtbl->Optimize(This)
4954#define ID3D10Effect_IsOptimized(This) (This)->lpVtbl->IsOptimized(This)
4955#else
4956/*** IUnknown methods ***/
4957static inline HRESULT ID3D10Effect_QueryInterface(ID3D10Effect* This,REFIID riid,void **ppvObject) {
4958    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4959}
4960static inline ULONG ID3D10Effect_AddRef(ID3D10Effect* This) {
4961    return This->lpVtbl->AddRef(This);
4962}
4963static inline ULONG ID3D10Effect_Release(ID3D10Effect* This) {
4964    return This->lpVtbl->Release(This);
4965}
4966/*** ID3D10Effect methods ***/
4967static inline WINBOOL ID3D10Effect_IsValid(ID3D10Effect* This) {
4968    return This->lpVtbl->IsValid(This);
4969}
4970static inline WINBOOL ID3D10Effect_IsPool(ID3D10Effect* This) {
4971    return This->lpVtbl->IsPool(This);
4972}
4973static inline HRESULT ID3D10Effect_GetDevice(ID3D10Effect* This,ID3D10Device **device) {
4974    return This->lpVtbl->GetDevice(This,device);
4975}
4976static inline HRESULT ID3D10Effect_GetDesc(ID3D10Effect* This,D3D10_EFFECT_DESC *desc) {
4977    return This->lpVtbl->GetDesc(This,desc);
4978}
4979static inline ID3D10EffectConstantBuffer * ID3D10Effect_GetConstantBufferByIndex(ID3D10Effect* This,UINT index) {
4980    return This->lpVtbl->GetConstantBufferByIndex(This,index);
4981}
4982static inline ID3D10EffectConstantBuffer * ID3D10Effect_GetConstantBufferByName(ID3D10Effect* This,const char *name) {
4983    return This->lpVtbl->GetConstantBufferByName(This,name);
4984}
4985static inline ID3D10EffectVariable * ID3D10Effect_GetVariableByIndex(ID3D10Effect* This,UINT index) {
4986    return This->lpVtbl->GetVariableByIndex(This,index);
4987}
4988static inline ID3D10EffectVariable * ID3D10Effect_GetVariableByName(ID3D10Effect* This,const char *name) {
4989    return This->lpVtbl->GetVariableByName(This,name);
4990}
4991static inline ID3D10EffectVariable * ID3D10Effect_GetVariableBySemantic(ID3D10Effect* This,const char *semantic) {
4992    return This->lpVtbl->GetVariableBySemantic(This,semantic);
4993}
4994static inline ID3D10EffectTechnique * ID3D10Effect_GetTechniqueByIndex(ID3D10Effect* This,UINT index) {
4995    return This->lpVtbl->GetTechniqueByIndex(This,index);
4996}
4997static inline ID3D10EffectTechnique * ID3D10Effect_GetTechniqueByName(ID3D10Effect* This,const char *name) {
4998    return This->lpVtbl->GetTechniqueByName(This,name);
4999}
5000static inline HRESULT ID3D10Effect_Optimize(ID3D10Effect* This) {
5001    return This->lpVtbl->Optimize(This);
5002}
5003static inline WINBOOL ID3D10Effect_IsOptimized(ID3D10Effect* This) {
5004    return This->lpVtbl->IsOptimized(This);
5005}
5006#endif
5007#endif
5008
5009#endif
5010
5011
5012#endif  /* __ID3D10Effect_INTERFACE_DEFINED__ */
5013
5014/*****************************************************************************
5015 * ID3D10EffectPool interface
5016 */
5017#ifndef __ID3D10EffectPool_INTERFACE_DEFINED__
5018#define __ID3D10EffectPool_INTERFACE_DEFINED__
5019
5020DEFINE_GUID(IID_ID3D10EffectPool, 0x9537ab04, 0x3250, 0x412e, 0x82,0x13, 0xfc,0xd2,0xf8,0x67,0x79,0x33);
5021#if defined(__cplusplus) && !defined(CINTERFACE)
5022MIDL_INTERFACE("9537ab04-3250-412e-8213-fcd2f8677933")
5023ID3D10EffectPool : public IUnknown
5024{
5025    virtual ID3D10Effect * STDMETHODCALLTYPE AsEffect(
5026        ) = 0;
5027
5028};
5029#ifdef __CRT_UUID_DECL
5030__CRT_UUID_DECL(ID3D10EffectPool, 0x9537ab04, 0x3250, 0x412e, 0x82,0x13, 0xfc,0xd2,0xf8,0x67,0x79,0x33)
5031#endif
5032#else
5033typedef struct ID3D10EffectPoolVtbl {
5034    BEGIN_INTERFACE
5035
5036    /*** IUnknown methods ***/
5037    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5038        ID3D10EffectPool *This,
5039        REFIID riid,
5040        void **ppvObject);
5041
5042    ULONG (STDMETHODCALLTYPE *AddRef)(
5043        ID3D10EffectPool *This);
5044
5045    ULONG (STDMETHODCALLTYPE *Release)(
5046        ID3D10EffectPool *This);
5047
5048    /*** ID3D10EffectPool methods ***/
5049    ID3D10Effect * (STDMETHODCALLTYPE *AsEffect)(
5050        ID3D10EffectPool *This);
5051
5052    END_INTERFACE
5053} ID3D10EffectPoolVtbl;
5054
5055interface ID3D10EffectPool {
5056    CONST_VTBL ID3D10EffectPoolVtbl* lpVtbl;
5057};
5058
5059#ifdef COBJMACROS
5060#ifndef WIDL_C_INLINE_WRAPPERS
5061/*** IUnknown methods ***/
5062#define ID3D10EffectPool_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5063#define ID3D10EffectPool_AddRef(This) (This)->lpVtbl->AddRef(This)
5064#define ID3D10EffectPool_Release(This) (This)->lpVtbl->Release(This)
5065/*** ID3D10EffectPool methods ***/
5066#define ID3D10EffectPool_AsEffect(This) (This)->lpVtbl->AsEffect(This)
5067#else
5068/*** IUnknown methods ***/
5069static inline HRESULT ID3D10EffectPool_QueryInterface(ID3D10EffectPool* This,REFIID riid,void **ppvObject) {
5070    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5071}
5072static inline ULONG ID3D10EffectPool_AddRef(ID3D10EffectPool* This) {
5073    return This->lpVtbl->AddRef(This);
5074}
5075static inline ULONG ID3D10EffectPool_Release(ID3D10EffectPool* This) {
5076    return This->lpVtbl->Release(This);
5077}
5078/*** ID3D10EffectPool methods ***/
5079static inline ID3D10Effect * ID3D10EffectPool_AsEffect(ID3D10EffectPool* This) {
5080    return This->lpVtbl->AsEffect(This);
5081}
5082#endif
5083#endif
5084
5085#endif
5086
5087
5088#endif  /* __ID3D10EffectPool_INTERFACE_DEFINED__ */
5089
5090/*****************************************************************************
5091 * ID3D10EffectPass interface
5092 */
5093#ifndef __ID3D10EffectPass_INTERFACE_DEFINED__
5094#define __ID3D10EffectPass_INTERFACE_DEFINED__
5095
5096DEFINE_GUID(IID_ID3D10EffectPass, 0x5cfbeb89, 0x1a06, 0x46e0, 0xb2,0x82, 0xe3,0xf9,0xbf,0xa3,0x6a,0x54);
5097#if defined(__cplusplus) && !defined(CINTERFACE)
5098MIDL_INTERFACE("5cfbeb89-1a06-46e0-b282-e3f9bfa36a54")
5099ID3D10EffectPass
5100{
5101
5102    BEGIN_INTERFACE
5103
5104    virtual WINBOOL STDMETHODCALLTYPE IsValid(
5105        ) = 0;
5106
5107    virtual HRESULT STDMETHODCALLTYPE GetDesc(
5108        D3D10_PASS_DESC *desc) = 0;
5109
5110    virtual HRESULT STDMETHODCALLTYPE GetVertexShaderDesc(
5111        D3D10_PASS_SHADER_DESC *desc) = 0;
5112
5113    virtual HRESULT STDMETHODCALLTYPE GetGeometryShaderDesc(
5114        D3D10_PASS_SHADER_DESC *desc) = 0;
5115
5116    virtual HRESULT STDMETHODCALLTYPE GetPixelShaderDesc(
5117        D3D10_PASS_SHADER_DESC *desc) = 0;
5118
5119    virtual ID3D10EffectVariable * STDMETHODCALLTYPE GetAnnotationByIndex(
5120        UINT index) = 0;
5121
5122    virtual ID3D10EffectVariable * STDMETHODCALLTYPE GetAnnotationByName(
5123        const char *name) = 0;
5124
5125    virtual HRESULT STDMETHODCALLTYPE Apply(
5126        UINT flags) = 0;
5127
5128    virtual HRESULT STDMETHODCALLTYPE ComputeStateBlockMask(
5129        D3D10_STATE_BLOCK_MASK *mask) = 0;
5130
5131    END_INTERFACE
5132
5133};
5134#ifdef __CRT_UUID_DECL
5135__CRT_UUID_DECL(ID3D10EffectPass, 0x5cfbeb89, 0x1a06, 0x46e0, 0xb2,0x82, 0xe3,0xf9,0xbf,0xa3,0x6a,0x54)
5136#endif
5137#else
5138typedef struct ID3D10EffectPassVtbl {
5139    BEGIN_INTERFACE
5140
5141    /*** ID3D10EffectPass methods ***/
5142    WINBOOL (STDMETHODCALLTYPE *IsValid)(
5143        ID3D10EffectPass *This);
5144
5145    HRESULT (STDMETHODCALLTYPE *GetDesc)(
5146        ID3D10EffectPass *This,
5147        D3D10_PASS_DESC *desc);
5148
5149    HRESULT (STDMETHODCALLTYPE *GetVertexShaderDesc)(
5150        ID3D10EffectPass *This,
5151        D3D10_PASS_SHADER_DESC *desc);
5152
5153    HRESULT (STDMETHODCALLTYPE *GetGeometryShaderDesc)(
5154        ID3D10EffectPass *This,
5155        D3D10_PASS_SHADER_DESC *desc);
5156
5157    HRESULT (STDMETHODCALLTYPE *GetPixelShaderDesc)(
5158        ID3D10EffectPass *This,
5159        D3D10_PASS_SHADER_DESC *desc);
5160
5161    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByIndex)(
5162        ID3D10EffectPass *This,
5163        UINT index);
5164
5165    ID3D10EffectVariable * (STDMETHODCALLTYPE *GetAnnotationByName)(
5166        ID3D10EffectPass *This,
5167        const char *name);
5168
5169    HRESULT (STDMETHODCALLTYPE *Apply)(
5170        ID3D10EffectPass *This,
5171        UINT flags);
5172
5173    HRESULT (STDMETHODCALLTYPE *ComputeStateBlockMask)(
5174        ID3D10EffectPass *This,
5175        D3D10_STATE_BLOCK_MASK *mask);
5176
5177    END_INTERFACE
5178} ID3D10EffectPassVtbl;
5179
5180interface ID3D10EffectPass {
5181    CONST_VTBL ID3D10EffectPassVtbl* lpVtbl;
5182};
5183
5184#ifdef COBJMACROS
5185#ifndef WIDL_C_INLINE_WRAPPERS
5186/*** ID3D10EffectPass methods ***/
5187#define ID3D10EffectPass_IsValid(This) (This)->lpVtbl->IsValid(This)
5188#define ID3D10EffectPass_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc)
5189#define ID3D10EffectPass_GetVertexShaderDesc(This,desc) (This)->lpVtbl->GetVertexShaderDesc(This,desc)
5190#define ID3D10EffectPass_GetGeometryShaderDesc(This,desc) (This)->lpVtbl->GetGeometryShaderDesc(This,desc)
5191#define ID3D10EffectPass_GetPixelShaderDesc(This,desc) (This)->lpVtbl->GetPixelShaderDesc(This,desc)
5192#define ID3D10EffectPass_GetAnnotationByIndex(This,index) (This)->lpVtbl->GetAnnotationByIndex(This,index)
5193#define ID3D10EffectPass_GetAnnotationByName(This,name) (This)->lpVtbl->GetAnnotationByName(This,name)
5194#define ID3D10EffectPass_Apply(This,flags) (This)->lpVtbl->Apply(This,flags)
5195#define ID3D10EffectPass_ComputeStateBlockMask(This,mask) (This)->lpVtbl->ComputeStateBlockMask(This,mask)
5196#else
5197/*** ID3D10EffectPass methods ***/
5198static inline WINBOOL ID3D10EffectPass_IsValid(ID3D10EffectPass* This) {
5199    return This->lpVtbl->IsValid(This);
5200}
5201static inline HRESULT ID3D10EffectPass_GetDesc(ID3D10EffectPass* This,D3D10_PASS_DESC *desc) {
5202    return This->lpVtbl->GetDesc(This,desc);
5203}
5204static inline HRESULT ID3D10EffectPass_GetVertexShaderDesc(ID3D10EffectPass* This,D3D10_PASS_SHADER_DESC *desc) {
5205    return This->lpVtbl->GetVertexShaderDesc(This,desc);
5206}
5207static inline HRESULT ID3D10EffectPass_GetGeometryShaderDesc(ID3D10EffectPass* This,D3D10_PASS_SHADER_DESC *desc) {
5208    return This->lpVtbl->GetGeometryShaderDesc(This,desc);
5209}
5210static inline HRESULT ID3D10EffectPass_GetPixelShaderDesc(ID3D10EffectPass* This,D3D10_PASS_SHADER_DESC *desc) {
5211    return This->lpVtbl->GetPixelShaderDesc(This,desc);
5212}
5213static inline ID3D10EffectVariable * ID3D10EffectPass_GetAnnotationByIndex(ID3D10EffectPass* This,UINT index) {
5214    return This->lpVtbl->GetAnnotationByIndex(This,index);
5215}
5216static inline ID3D10EffectVariable * ID3D10EffectPass_GetAnnotationByName(ID3D10EffectPass* This,const char *name) {
5217    return This->lpVtbl->GetAnnotationByName(This,name);
5218}
5219static inline HRESULT ID3D10EffectPass_Apply(ID3D10EffectPass* This,UINT flags) {
5220    return This->lpVtbl->Apply(This,flags);
5221}
5222static inline HRESULT ID3D10EffectPass_ComputeStateBlockMask(ID3D10EffectPass* This,D3D10_STATE_BLOCK_MASK *mask) {
5223    return This->lpVtbl->ComputeStateBlockMask(This,mask);
5224}
5225#endif
5226#endif
5227
5228#endif
5229
5230
5231#endif  /* __ID3D10EffectPass_INTERFACE_DEFINED__ */
5232
5233/*****************************************************************************
5234 * ID3D10StateBlock interface
5235 */
5236#ifndef __ID3D10StateBlock_INTERFACE_DEFINED__
5237#define __ID3D10StateBlock_INTERFACE_DEFINED__
5238
5239DEFINE_GUID(IID_ID3D10StateBlock, 0x0803425a, 0x57f5, 0x4dd6, 0x94,0x65, 0xa8,0x75,0x70,0x83,0x4a,0x08);
5240#if defined(__cplusplus) && !defined(CINTERFACE)
5241MIDL_INTERFACE("0803425a-57f5-4dd6-9465-a87570834a08")
5242ID3D10StateBlock : public IUnknown
5243{
5244    virtual HRESULT STDMETHODCALLTYPE Capture(
5245        ) = 0;
5246
5247    virtual HRESULT STDMETHODCALLTYPE Apply(
5248        ) = 0;
5249
5250    virtual HRESULT STDMETHODCALLTYPE ReleaseAllDeviceObjects(
5251        ) = 0;
5252
5253    virtual HRESULT STDMETHODCALLTYPE GetDevice(
5254        ID3D10Device **device) = 0;
5255
5256};
5257#ifdef __CRT_UUID_DECL
5258__CRT_UUID_DECL(ID3D10StateBlock, 0x0803425a, 0x57f5, 0x4dd6, 0x94,0x65, 0xa8,0x75,0x70,0x83,0x4a,0x08)
5259#endif
5260#else
5261typedef struct ID3D10StateBlockVtbl {
5262    BEGIN_INTERFACE
5263
5264    /*** IUnknown methods ***/
5265    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5266        ID3D10StateBlock *This,
5267        REFIID riid,
5268        void **ppvObject);
5269
5270    ULONG (STDMETHODCALLTYPE *AddRef)(
5271        ID3D10StateBlock *This);
5272
5273    ULONG (STDMETHODCALLTYPE *Release)(
5274        ID3D10StateBlock *This);
5275
5276    /*** ID3D10StateBlock methods ***/
5277    HRESULT (STDMETHODCALLTYPE *Capture)(
5278        ID3D10StateBlock *This);
5279
5280    HRESULT (STDMETHODCALLTYPE *Apply)(
5281        ID3D10StateBlock *This);
5282
5283    HRESULT (STDMETHODCALLTYPE *ReleaseAllDeviceObjects)(
5284        ID3D10StateBlock *This);
5285
5286    HRESULT (STDMETHODCALLTYPE *GetDevice)(
5287        ID3D10StateBlock *This,
5288        ID3D10Device **device);
5289
5290    END_INTERFACE
5291} ID3D10StateBlockVtbl;
5292
5293interface ID3D10StateBlock {
5294    CONST_VTBL ID3D10StateBlockVtbl* lpVtbl;
5295};
5296
5297#ifdef COBJMACROS
5298#ifndef WIDL_C_INLINE_WRAPPERS
5299/*** IUnknown methods ***/
5300#define ID3D10StateBlock_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5301#define ID3D10StateBlock_AddRef(This) (This)->lpVtbl->AddRef(This)
5302#define ID3D10StateBlock_Release(This) (This)->lpVtbl->Release(This)
5303/*** ID3D10StateBlock methods ***/
5304#define ID3D10StateBlock_Capture(This) (This)->lpVtbl->Capture(This)
5305#define ID3D10StateBlock_Apply(This) (This)->lpVtbl->Apply(This)
5306#define ID3D10StateBlock_ReleaseAllDeviceObjects(This) (This)->lpVtbl->ReleaseAllDeviceObjects(This)
5307#define ID3D10StateBlock_GetDevice(This,device) (This)->lpVtbl->GetDevice(This,device)
5308#else
5309/*** IUnknown methods ***/
5310static inline HRESULT ID3D10StateBlock_QueryInterface(ID3D10StateBlock* This,REFIID riid,void **ppvObject) {
5311    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5312}
5313static inline ULONG ID3D10StateBlock_AddRef(ID3D10StateBlock* This) {
5314    return This->lpVtbl->AddRef(This);
5315}
5316static inline ULONG ID3D10StateBlock_Release(ID3D10StateBlock* This) {
5317    return This->lpVtbl->Release(This);
5318}
5319/*** ID3D10StateBlock methods ***/
5320static inline HRESULT ID3D10StateBlock_Capture(ID3D10StateBlock* This) {
5321    return This->lpVtbl->Capture(This);
5322}
5323static inline HRESULT ID3D10StateBlock_Apply(ID3D10StateBlock* This) {
5324    return This->lpVtbl->Apply(This);
5325}
5326static inline HRESULT ID3D10StateBlock_ReleaseAllDeviceObjects(ID3D10StateBlock* This) {
5327    return This->lpVtbl->ReleaseAllDeviceObjects(This);
5328}
5329static inline HRESULT ID3D10StateBlock_GetDevice(ID3D10StateBlock* This,ID3D10Device **device) {
5330    return This->lpVtbl->GetDevice(This,device);
5331}
5332#endif
5333#endif
5334
5335#endif
5336
5337
5338#endif  /* __ID3D10StateBlock_INTERFACE_DEFINED__ */
5339
5340HRESULT __stdcall  D3D10CompileEffectFromMemory(void *data,SIZE_T data_size,const char *filename,const D3D10_SHADER_MACRO *defines,ID3D10Include *include,UINT hlsl_flags,UINT fx_flags,ID3D10Blob **effect,ID3D10Blob **errors);
5341
5342HRESULT __stdcall  D3D10CreateEffectFromMemory(void *data,SIZE_T data_size,UINT flags,ID3D10Device *device,ID3D10EffectPool *effect_pool,ID3D10Effect **effect);
5343
5344HRESULT __stdcall  D3D10CreateEffectPoolFromMemory(void *data,SIZE_T data_size,UINT fx_flags,ID3D10Device *device,ID3D10EffectPool **effect_pool);
5345
5346HRESULT __stdcall  D3D10CreateStateBlock(ID3D10Device *device,D3D10_STATE_BLOCK_MASK *mask,ID3D10StateBlock **stateblock);
5347
5348HRESULT __stdcall  D3D10StateBlockMaskDifference(D3D10_STATE_BLOCK_MASK *mask_x,D3D10_STATE_BLOCK_MASK *mask_y,D3D10_STATE_BLOCK_MASK *result);
5349
5350HRESULT __stdcall  D3D10StateBlockMaskDisableAll(D3D10_STATE_BLOCK_MASK *mask);
5351
5352HRESULT __stdcall  D3D10StateBlockMaskDisableCapture(D3D10_STATE_BLOCK_MASK *mask,D3D10_DEVICE_STATE_TYPES state_type,UINT start_idx,UINT count);
5353
5354HRESULT __stdcall  D3D10StateBlockMaskEnableAll(D3D10_STATE_BLOCK_MASK *mask);
5355
5356HRESULT __stdcall  D3D10StateBlockMaskEnableCapture(D3D10_STATE_BLOCK_MASK *mask,D3D10_DEVICE_STATE_TYPES state_type,UINT start_idx,UINT count);
5357
5358WINBOOL __stdcall  D3D10StateBlockMaskGetSetting(D3D10_STATE_BLOCK_MASK *mask,D3D10_DEVICE_STATE_TYPES state_type,UINT idx);
5359
5360HRESULT __stdcall  D3D10StateBlockMaskIntersect(D3D10_STATE_BLOCK_MASK *mask_x,D3D10_STATE_BLOCK_MASK *mask_y,D3D10_STATE_BLOCK_MASK *result);
5361
5362HRESULT __stdcall  D3D10StateBlockMaskUnion(D3D10_STATE_BLOCK_MASK *mask_x,D3D10_STATE_BLOCK_MASK *mask_y,D3D10_STATE_BLOCK_MASK *result);
5363
5364/* Begin additional prototypes for all interfaces */
5365
5366
5367/* End additional prototypes */
5368
5369#ifdef __cplusplus
5370}
5371#endif
5372
5373#endif /* __d3d10effect_h__ */