2 * Copyright 2009 Henri Verbeet for CodeWeavers
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
20 #ifndef __WINE_D3D10EFFECT_H
21 #define __WINE_D3D10EFFECT_H
25 typedef struct _D3D10_EFFECT_TYPE_DESC
28 D3D10_SHADER_VARIABLE_CLASS Class
;
29 D3D10_SHADER_VARIABLE_TYPE Type
;
37 } D3D10_EFFECT_TYPE_DESC
;
39 DEFINE_GUID(IID_ID3D10EffectType
, 0x4e9e1ddc, 0xcd9d, 0x4772, 0xa8, 0x37, 0x00, 0x18, 0x0b, 0x9b, 0x88, 0xfd);
41 #define INTERFACE ID3D10EffectType
42 DECLARE_INTERFACE(ID3D10EffectType
)
44 STDMETHOD_(BOOL
, IsValid
)(THIS
) PURE
;
45 STDMETHOD(GetDesc
)(THIS_ D3D10_EFFECT_TYPE_DESC
*desc
) PURE
;
46 STDMETHOD_(struct ID3D10EffectType
*, GetMemberTypeByIndex
)(THIS_ UINT index
) PURE
;
47 STDMETHOD_(struct ID3D10EffectType
*, GetMemberTypeByName
)(THIS_ LPCSTR name
) PURE
;
48 STDMETHOD_(struct ID3D10EffectType
*, GetMemberTypeBySemantic
)(THIS_ LPCSTR semantic
) PURE
;
49 STDMETHOD_(LPCSTR
, GetMemberName
)(THIS_ UINT index
) PURE
;
50 STDMETHOD_(LPCSTR
, GetMemberSemantic
)(THIS_ UINT index
) PURE
;
54 #endif /* __WINE_D3D10EFFECT_H */