ReactOS 0.4.15-dev-8076-g06e89b2
d3d10shader.h File Reference
#include "d3d10.h"
Include dependency graph for d3d10shader.h:

Go to the source code of this file.

Classes

struct  _D3D10_SHADER_INPUT_BIND_DESC
 
struct  _D3D10_SIGNATURE_PARAMETER_DESC
 
struct  _D3D10_SHADER_DESC
 
struct  _D3D10_SHADER_BUFFER_DESC
 
struct  _D3D10_SHADER_VARIABLE_DESC
 
struct  _D3D10_SHADER_TYPE_DESC
 

Macros

#define D3D10_SHADER_DEBUG   0x0001
 
#define D3D10_SHADER_SKIP_VALIDATION   0x0002
 
#define D3D10_SHADER_SKIP_OPTIMIZATION   0x0004
 
#define D3D10_SHADER_PACK_MATRIX_ROW_MAJOR   0x0008
 
#define D3D10_SHADER_PACK_MATRIX_COLUMN_MAJOR   0x0010
 
#define D3D10_SHADER_PARTIAL_PRECISION   0x0020
 
#define D3D10_SHADER_FORCE_VS_SOFTWARE_NO_OPT   0x0040
 
#define D3D10_SHADER_FORCE_PS_SOFTWARE_NO_OPT   0x0080
 
#define D3D10_SHADER_NO_PRESHADER   0x0100
 
#define D3D10_SHADER_AVOID_FLOW_CONTROL   0x0200
 
#define D3D10_SHADER_PREFER_FLOW_CONTROL   0x0400
 
#define D3D10_SHADER_ENABLE_STRICTNESS   0x0800
 
#define D3D10_SHADER_ENABLE_BACKWARDS_COMPATIBILITY   0x1000
 
#define D3D10_SHADER_IEEE_STRICTNESS   0x2000
 
#define D3D10_SHADER_WARNINGS_ARE_ERRORS   0x40000
 
#define D3D10_SHADER_OPTIMIZATION_LEVEL0   0x4000
 
#define D3D10_SHADER_OPTIMIZATION_LEVEL1   0x0000
 
#define D3D10_SHADER_OPTIMIZATION_LEVEL2   0xC000
 
#define D3D10_SHADER_OPTIMIZATION_LEVEL3   0x8000
 
#define IID_ID3D10Include   IID_ID3DInclude
 
#define INTERFACE   ID3D10ShaderReflectionType
 
#define INTERFACE   ID3D10ShaderReflectionVariable
 
#define INTERFACE   ID3D10ShaderReflectionConstantBuffer
 
#define INTERFACE   ID3D10ShaderReflection
 

Typedefs

typedef D3D_SHADER_MACRO D3D10_SHADER_MACRO
 
typedef D3D_SHADER_MACROLPD3D10_SHADER_MACRO
 
typedef D3D_SHADER_VARIABLE_CLASS D3D10_SHADER_VARIABLE_CLASS
 
typedef D3D_SHADER_VARIABLE_CLASSLPD3D10_SHADER_VARIABLE_CLASS
 
typedef D3D_CBUFFER_TYPE D3D10_CBUFFER_TYPE
 
typedef D3D_CBUFFER_TYPELPD3D10_CBUFFER_TYPE
 
typedef D3D_REGISTER_COMPONENT_TYPE D3D10_REGISTER_COMPONENT_TYPE
 
typedef D3D_RESOURCE_RETURN_TYPE D3D10_RESOURCE_RETURN_TYPE
 
typedef D3D_NAME D3D10_NAME
 
typedef D3D_SHADER_INPUT_TYPE D3D10_SHADER_INPUT_TYPE
 
typedef D3D_SHADER_INPUT_TYPELPD3D10_SHADER_INPUT_TYPE
 
typedef D3D_SHADER_VARIABLE_TYPE D3D10_SHADER_VARIABLE_TYPE
 
typedef D3D_SHADER_VARIABLE_TYPELPD3D10_SHADER_VARIABLE_TYPE
 
typedef D3D_INCLUDE_TYPE D3D10_INCLUDE_TYPE
 
typedef ID3DInclude ID3D10Include
 
typedef ID3DIncludeLPD3D10INCLUDE
 
typedef struct _D3D10_SHADER_INPUT_BIND_DESC D3D10_SHADER_INPUT_BIND_DESC
 
typedef struct _D3D10_SIGNATURE_PARAMETER_DESC D3D10_SIGNATURE_PARAMETER_DESC
 
typedef struct _D3D10_SHADER_DESC D3D10_SHADER_DESC
 
typedef struct _D3D10_SHADER_BUFFER_DESC D3D10_SHADER_BUFFER_DESC
 
typedef struct _D3D10_SHADER_VARIABLE_DESC D3D10_SHADER_VARIABLE_DESC
 
typedef struct _D3D10_SHADER_TYPE_DESC D3D10_SHADER_TYPE_DESC
 

Functions

 DEFINE_GUID (IID_ID3D10ShaderReflectionType, 0xc530ad7d, 0x9b16, 0x4395, 0xa9, 0x79, 0xba, 0x2e, 0xcf, 0xf8, 0x3a, 0xdd)
 
 DECLARE_INTERFACE (ID3D10ShaderReflectionType)
 
 DEFINE_GUID (IID_ID3D10ShaderReflectionVariable, 0x1bf63c95, 0x2650, 0x405d, 0x99, 0xc1, 0x36, 0x36, 0xbd, 0x1d, 0xa0, 0xa1)
 
 DECLARE_INTERFACE (ID3D10ShaderReflectionVariable)
 
 DEFINE_GUID (IID_ID3D10ShaderReflectionConstantBuffer, 0x66c66a94, 0xdddd, 0x4b62, 0xa6, 0x6a, 0xf0, 0xda, 0x33, 0xc2, 0xb4, 0xd0)
 
 DECLARE_INTERFACE (ID3D10ShaderReflectionConstantBuffer)
 
 DEFINE_GUID (IID_ID3D10ShaderReflection, 0xd40e20b6, 0xf8f7, 0x42ad, 0xab, 0x20, 0x4b, 0xaf, 0x8f, 0x15, 0xdf, 0xaa)
 
 DECLARE_INTERFACE_ (ID3D10ShaderReflection, IUnknown)
 
HRESULT WINAPI D3D10CompileShader (const char *data, SIZE_T data_size, const char *filename, const D3D10_SHADER_MACRO *defines, ID3D10Include *include, const char *entrypoint, const char *profile, UINT flags, ID3D10Blob **shader, ID3D10Blob **error_messages)
 
HRESULT WINAPI D3D10DisassembleShader (const void *data, SIZE_T data_size, BOOL color_code, const char *comments, ID3D10Blob **disassembly)
 
const char *WINAPI D3D10GetVertexShaderProfile (ID3D10Device *device)
 
const char *WINAPI D3D10GetGeometryShaderProfile (ID3D10Device *device)
 
const char *WINAPI D3D10GetPixelShaderProfile (ID3D10Device *device)
 
HRESULT WINAPI D3D10ReflectShader (const void *data, SIZE_T data_size, ID3D10ShaderReflection **reflector)
 
HRESULT WINAPI D3D10GetInputSignatureBlob (const void *data, SIZE_T data_size, ID3D10Blob **blob)
 
HRESULT WINAPI D3D10GetOutputSignatureBlob (const void *data, SIZE_T data_size, ID3D10Blob **blob)
 
HRESULT WINAPI D3D10GetInputAndOutputSignatureBlob (const void *data, SIZE_T data_size, ID3D10Blob **blob)
 
HRESULT WINAPI D3D10GetShaderDebugInfo (const void *data, SIZE_T data_size, ID3D10Blob **blob)
 

Macro Definition Documentation

◆ D3D10_SHADER_AVOID_FLOW_CONTROL

#define D3D10_SHADER_AVOID_FLOW_CONTROL   0x0200

Definition at line 34 of file d3d10shader.h.

◆ D3D10_SHADER_DEBUG

#define D3D10_SHADER_DEBUG   0x0001

Definition at line 25 of file d3d10shader.h.

◆ D3D10_SHADER_ENABLE_BACKWARDS_COMPATIBILITY

#define D3D10_SHADER_ENABLE_BACKWARDS_COMPATIBILITY   0x1000

Definition at line 37 of file d3d10shader.h.

◆ D3D10_SHADER_ENABLE_STRICTNESS

#define D3D10_SHADER_ENABLE_STRICTNESS   0x0800

Definition at line 36 of file d3d10shader.h.

◆ D3D10_SHADER_FORCE_PS_SOFTWARE_NO_OPT

#define D3D10_SHADER_FORCE_PS_SOFTWARE_NO_OPT   0x0080

Definition at line 32 of file d3d10shader.h.

◆ D3D10_SHADER_FORCE_VS_SOFTWARE_NO_OPT

#define D3D10_SHADER_FORCE_VS_SOFTWARE_NO_OPT   0x0040

Definition at line 31 of file d3d10shader.h.

◆ D3D10_SHADER_IEEE_STRICTNESS

#define D3D10_SHADER_IEEE_STRICTNESS   0x2000

Definition at line 38 of file d3d10shader.h.

◆ D3D10_SHADER_NO_PRESHADER

#define D3D10_SHADER_NO_PRESHADER   0x0100

Definition at line 33 of file d3d10shader.h.

◆ D3D10_SHADER_OPTIMIZATION_LEVEL0

#define D3D10_SHADER_OPTIMIZATION_LEVEL0   0x4000

Definition at line 41 of file d3d10shader.h.

◆ D3D10_SHADER_OPTIMIZATION_LEVEL1

#define D3D10_SHADER_OPTIMIZATION_LEVEL1   0x0000

Definition at line 42 of file d3d10shader.h.

◆ D3D10_SHADER_OPTIMIZATION_LEVEL2

#define D3D10_SHADER_OPTIMIZATION_LEVEL2   0xC000

Definition at line 43 of file d3d10shader.h.

◆ D3D10_SHADER_OPTIMIZATION_LEVEL3

#define D3D10_SHADER_OPTIMIZATION_LEVEL3   0x8000

Definition at line 44 of file d3d10shader.h.

◆ D3D10_SHADER_PACK_MATRIX_COLUMN_MAJOR

#define D3D10_SHADER_PACK_MATRIX_COLUMN_MAJOR   0x0010

Definition at line 29 of file d3d10shader.h.

◆ D3D10_SHADER_PACK_MATRIX_ROW_MAJOR

#define D3D10_SHADER_PACK_MATRIX_ROW_MAJOR   0x0008

Definition at line 28 of file d3d10shader.h.

◆ D3D10_SHADER_PARTIAL_PRECISION

#define D3D10_SHADER_PARTIAL_PRECISION   0x0020

Definition at line 30 of file d3d10shader.h.

◆ D3D10_SHADER_PREFER_FLOW_CONTROL

#define D3D10_SHADER_PREFER_FLOW_CONTROL   0x0400

Definition at line 35 of file d3d10shader.h.

◆ D3D10_SHADER_SKIP_OPTIMIZATION

#define D3D10_SHADER_SKIP_OPTIMIZATION   0x0004

Definition at line 27 of file d3d10shader.h.

◆ D3D10_SHADER_SKIP_VALIDATION

#define D3D10_SHADER_SKIP_VALIDATION   0x0002

Definition at line 26 of file d3d10shader.h.

◆ D3D10_SHADER_WARNINGS_ARE_ERRORS

#define D3D10_SHADER_WARNINGS_ARE_ERRORS   0x40000

Definition at line 39 of file d3d10shader.h.

◆ IID_ID3D10Include

#define IID_ID3D10Include   IID_ID3DInclude

Definition at line 71 of file d3d10shader.h.

◆ INTERFACE [1/4]

#define INTERFACE   ID3D10ShaderReflectionType

Definition at line 192 of file d3d10shader.h.

◆ INTERFACE [2/4]

#define INTERFACE   ID3D10ShaderReflectionVariable

Definition at line 192 of file d3d10shader.h.

◆ INTERFACE [3/4]

#define INTERFACE   ID3D10ShaderReflectionConstantBuffer

Definition at line 192 of file d3d10shader.h.

◆ INTERFACE [4/4]

#define INTERFACE   ID3D10ShaderReflection

Definition at line 192 of file d3d10shader.h.

Typedef Documentation

◆ D3D10_CBUFFER_TYPE

Definition at line 53 of file d3d10shader.h.

◆ D3D10_INCLUDE_TYPE

Definition at line 68 of file d3d10shader.h.

◆ D3D10_NAME

Definition at line 60 of file d3d10shader.h.

◆ D3D10_REGISTER_COMPONENT_TYPE

◆ D3D10_RESOURCE_RETURN_TYPE

◆ D3D10_SHADER_BUFFER_DESC

◆ D3D10_SHADER_DESC

◆ D3D10_SHADER_INPUT_BIND_DESC

◆ D3D10_SHADER_INPUT_TYPE

Definition at line 62 of file d3d10shader.h.

◆ D3D10_SHADER_MACRO

Definition at line 47 of file d3d10shader.h.

◆ D3D10_SHADER_TYPE_DESC

◆ D3D10_SHADER_VARIABLE_CLASS

◆ D3D10_SHADER_VARIABLE_DESC

◆ D3D10_SHADER_VARIABLE_TYPE

◆ D3D10_SIGNATURE_PARAMETER_DESC

◆ ID3D10Include

Definition at line 69 of file d3d10shader.h.

◆ LPD3D10_CBUFFER_TYPE

Definition at line 54 of file d3d10shader.h.

◆ LPD3D10_SHADER_INPUT_TYPE

Definition at line 63 of file d3d10shader.h.

◆ LPD3D10_SHADER_MACRO

Definition at line 48 of file d3d10shader.h.

◆ LPD3D10_SHADER_VARIABLE_CLASS

◆ LPD3D10_SHADER_VARIABLE_TYPE

◆ LPD3D10INCLUDE

Definition at line 70 of file d3d10shader.h.

Function Documentation

◆ D3D10CompileShader()

HRESULT WINAPI D3D10CompileShader ( const char data,
SIZE_T  data_size,
const char filename,
const D3D10_SHADER_MACRO defines,
ID3D10Include include,
const char entrypoint,
const char profile,
UINT  flags,
ID3D10Blob **  shader,
ID3D10Blob **  error_messages 
)

◆ D3D10DisassembleShader()

HRESULT WINAPI D3D10DisassembleShader ( const void data,
SIZE_T  data_size,
BOOL  color_code,
const char comments,
ID3D10Blob **  disassembly 
)

◆ D3D10GetGeometryShaderProfile()

const char *WINAPI D3D10GetGeometryShaderProfile ( ID3D10Device device)

◆ D3D10GetInputAndOutputSignatureBlob()

HRESULT WINAPI D3D10GetInputAndOutputSignatureBlob ( const void data,
SIZE_T  data_size,
ID3D10Blob **  blob 
)

◆ D3D10GetInputSignatureBlob()

HRESULT WINAPI D3D10GetInputSignatureBlob ( const void data,
SIZE_T  data_size,
ID3D10Blob **  blob 
)

◆ D3D10GetOutputSignatureBlob()

HRESULT WINAPI D3D10GetOutputSignatureBlob ( const void data,
SIZE_T  data_size,
ID3D10Blob **  blob 
)

◆ D3D10GetPixelShaderProfile()

const char *WINAPI D3D10GetPixelShaderProfile ( ID3D10Device device)

◆ D3D10GetShaderDebugInfo()

HRESULT WINAPI D3D10GetShaderDebugInfo ( const void data,
SIZE_T  data_size,
ID3D10Blob **  blob 
)

◆ D3D10GetVertexShaderProfile()

const char *WINAPI D3D10GetVertexShaderProfile ( ID3D10Device device)

◆ D3D10ReflectShader()

HRESULT WINAPI D3D10ReflectShader ( const void data,
SIZE_T  data_size,
ID3D10ShaderReflection **  reflector 
)

◆ DECLARE_INTERFACE() [1/3]

DECLARE_INTERFACE ( ID3D10ShaderReflectionConstantBuffer  )

Definition at line 182 of file d3d10shader.h.

183{
185 STDMETHOD_(struct ID3D10ShaderReflectionVariable *, GetVariableByIndex)(THIS_ UINT index) PURE;
186 STDMETHOD_(struct ID3D10ShaderReflectionVariable *, GetVariableByName)(THIS_ const char *name) PURE;
187};
#define index(s, c)
Definition: various.h:29
#define PURE
Definition: basetyps.h:64
#define THIS_
Definition: basetyps.h:65
#define STDMETHOD_(t, m)
Definition: basetyps.h:63
#define STDMETHOD(m)
Definition: basetyps.h:62
static const WCHAR desc[]
Definition: protectdata.c:36
unsigned int UINT
Definition: ndis.h:50
Definition: name.c:39

◆ DECLARE_INTERFACE() [2/3]

DECLARE_INTERFACE ( ID3D10ShaderReflectionType  )

Definition at line 160 of file d3d10shader.h.

161{
163 STDMETHOD_(struct ID3D10ShaderReflectionType *, GetMemberTypeByIndex)(THIS_ UINT index) PURE;
164 STDMETHOD_(struct ID3D10ShaderReflectionType *, GetMemberTypeByName)(THIS_ const char *name) PURE;
165 STDMETHOD_(const char *, GetMemberTypeName)(THIS_ UINT index) PURE;
166};

◆ DECLARE_INTERFACE() [3/3]

DECLARE_INTERFACE ( ID3D10ShaderReflectionVariable  )

Definition at line 172 of file d3d10shader.h.

173{
175 STDMETHOD_(struct ID3D10ShaderReflectionType *, GetType)(THIS) PURE;
176};
#define THIS
Definition: basetyps.h:66
#define GetType(This)
Definition: conio.h:54

◆ DECLARE_INTERFACE_()

DECLARE_INTERFACE_ ( ID3D10ShaderReflection  ,
IUnknown   
)

Definition at line 193 of file d3d10shader.h.

194{
195 /* IUnknown methods */
199 /* ID3D10ShaderReflection methods */
201 STDMETHOD_(struct ID3D10ShaderReflectionConstantBuffer *, GetConstantBufferByIndex)(THIS_ UINT index) PURE;
202 STDMETHOD_(struct ID3D10ShaderReflectionConstantBuffer *, GetConstantBufferByName)(THIS_ const char *name) PURE;
206};
_In_ BOOLEAN Release
Definition: cdrom.h:920
REFIID riid
Definition: atlbase.h:39
static HRESULT QueryInterface(REFIID, void **)
Definition: events.c:2587
static ULONG WINAPI AddRef(IStream *iface)
Definition: clist.c:90
#define REFIID
Definition: guiddef.h:118
static FILE * out
Definition: regtests2xml.c:44
uint32_t ULONG
Definition: typedefs.h:59

◆ DEFINE_GUID() [1/4]

DEFINE_GUID ( IID_ID3D10ShaderReflection  ,
0xd40e20b6  ,
0xf8f7  ,
0x42ad  ,
0xab  ,
0x20  ,
0x4b  ,
0xaf  ,
0x8f  ,
0x15  ,
0xdf  ,
0xaa   
)

◆ DEFINE_GUID() [2/4]

DEFINE_GUID ( IID_ID3D10ShaderReflectionConstantBuffer  ,
0x66c66a94  ,
0xdddd  ,
0x4b62  ,
0xa6  ,
0x6a  ,
0xf0  ,
0xda  ,
0x33  ,
0xc2  ,
0xb4  ,
0xd0   
)

◆ DEFINE_GUID() [3/4]

DEFINE_GUID ( IID_ID3D10ShaderReflectionType  ,
0xc530ad7d  ,
0x9b16  ,
0x4395  ,
0xa9  ,
0x79  ,
0xba  ,
0x2e  ,
0xcf  ,
0xf8  ,
0x3a  ,
0xdd   
)

◆ DEFINE_GUID() [4/4]

DEFINE_GUID ( IID_ID3D10ShaderReflectionVariable  ,
0x1bf63c95  ,
0x2650  ,
0x405d  ,
0x99  ,
0xc1  ,
0x36  ,
0x36  ,
0xbd  ,
0x1d  ,
0xa0  ,
0xa1   
)