ReactOS 0.4.17-dev-934-g091855f
d3d10_private.h
Go to the documentation of this file.
1/*
2 * Copyright 2008-2009 Henri Verbeet for CodeWeavers
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19#ifndef __WINE_D3D10_PRIVATE_H
20#define __WINE_D3D10_PRIVATE_H
21
22#include <math.h>
23#include <stdint.h>
24
25#include "wine/debug.h"
26#include "wine/rbtree.h"
27
28#define COBJMACROS
29#include "winbase.h"
30#include "winuser.h"
31#include "objbase.h"
32
33#include "d3d10.h"
34#include "d3dcompiler.h"
35#include "utils.h"
36
37/*
38 * This doesn't belong here, but for some functions it is possible to return that value,
39 * see http://msdn.microsoft.com/en-us/library/bb205278%28v=VS.85%29.aspx
40 * The original definition is in D3DX10core.h.
41 */
42#define D3DERR_INVALIDCALL 0x8876086c
43
45{
47};
48
50{
58};
59
61{
62 float m[4][4];
63};
64
66{
68 unsigned int bind_point;
69 unsigned int bind_count;
70
72};
73
75{
76 char *signature;
77 unsigned int signature_size;
78 unsigned int element_count;
80};
81
83{
87 union
88 {
94
95 unsigned int resource_count;
98 unsigned int isinline : 1;
99};
100
102{
106};
107
109{
112};
113
115{
116 union
117 {
123 union
124 {
131 unsigned int index;
133};
134
136{
139};
140
142{
145
148};
149
150/* ID3D10EffectType */
152{
154
155 char *name;
158 unsigned int flags;
159
163
164 unsigned int element_count;
165 unsigned int size_unpacked;
166 unsigned int stride;
167 unsigned int size_packed;
168 unsigned int member_count;
169 unsigned int column_count;
170 unsigned int row_count;
173};
174
176{
177 char *name;
178 char *semantic;
181};
182
184{
186 unsigned int count;
187};
188
189/* ID3D10EffectVariable */
191{
193
196
197 char *name;
198 char *semantic;
207
208 union
209 {
214 } u;
215};
216
218{
220 unsigned int index;
221};
222
223/* ID3D10EffectPass */
225{
227
229 char *name;
231
241 float blend_factor[4];
242};
243
244/* ID3D10EffectTechnique */
246{
248
250 char *name;
252 unsigned int pass_count;
254};
255
257{
260};
261
263{
266};
267
269{
271 unsigned int current;
272 unsigned int count;
273};
274
275/* ID3D10Effect */
277{
281
285 unsigned int local_buffer_count;
287 unsigned int object_count;
290 unsigned int technique_count;
292 unsigned int texture_count;
295
297
310};
311
312HRESULT d3d10_effect_parse(struct d3d10_effect *effect, const void *data, SIZE_T data_size);
313
314/* D3D10Core */
316 unsigned int flags, D3D_FEATURE_LEVEL feature_level, ID3D10Device **device);
317
318/* d3dcompiler_39 function prototypes */
319HRESULT WINAPI D3DCompileFromMemory(const void *data, SIZE_T data_size, const char *filename,
320 const D3D_SHADER_MACRO *defines, ID3DInclude *include, const char *entrypoint,
322
324 UINT flags, const char *comments, ID3DBlob **disassembly);
325
326#endif /* __WINE_D3D10_PRIVATE_H */
d3d10_effect_flags
@ D3D10_EFFECT_OPTIMIZED
@ D3D10_EFFECT_IS_POOL
d3d10_effect_object_operation
Definition: d3d10_private.h:50
@ D3D10_EOO_VALUE_EXPRESSION
Definition: d3d10_private.h:56
@ D3D10_EOO_CONST
Definition: d3d10_private.h:51
@ D3D10_EOO_VAR_INDEX
Definition: d3d10_private.h:54
@ D3D10_EOO_INDEX_EXPRESSION
Definition: d3d10_private.h:55
@ D3D10_EOO_VAR
Definition: d3d10_private.h:52
@ D3D10_EOO_ANONYMOUS_SHADER
Definition: d3d10_private.h:57
@ D3D10_EOO_CONST_INDEX
Definition: d3d10_private.h:53
HRESULT WINAPI D3DDisassembleCode(const void *data, SIZE_T data_size, UINT flags, const char *comments, ID3DBlob **disassembly)
HRESULT WINAPI D3DCompileFromMemory(const void *data, SIZE_T data_size, const char *filename, const D3D_SHADER_MACRO *defines, ID3DInclude *include, const char *entrypoint, const char *target, UINT sflags, UINT eflags, ID3DBlob **shader, ID3DBlob **error_messages)
HRESULT d3d10_effect_parse(struct d3d10_effect *effect, const void *data, SIZE_T data_size)
Definition: effect.c:4308
HRESULT WINAPI D3D10CoreCreateDevice(IDXGIFactory *factory, IDXGIAdapter *adapter, unsigned int flags, D3D_FEATURE_LEVEL feature_level, ID3D10Device **device)
d3d10_effect_object_type_flags
Definition: d3d10_private.h:45
@ D3D10_EOT_FLAG_GS_SO
Definition: d3d10_private.h:46
D3D_SHADER_INPUT_TYPE D3D10_SHADER_INPUT_TYPE
Definition: d3d10shader.idl:57
D3D_SHADER_VARIABLE_TYPE D3D10_SHADER_VARIABLE_TYPE
Definition: d3d10shader.idl:60
D3D_SHADER_VARIABLE_CLASS D3D10_SHADER_VARIABLE_CLASS
Definition: d3d10shader.idl:45
D3D_FEATURE_LEVEL
Definition: d3dcommon.idl:102
static SIZE_T const char const D3D_SHADER_MACRO ID3DInclude * include
Definition: asm.c:31
static SIZE_T const char const D3D_SHADER_MACRO ID3DInclude UINT ID3DBlob ID3DBlob ** error_messages
Definition: asm.c:32
static SIZE_T const char const D3D_SHADER_MACRO * defines
Definition: asm.c:31
char comments[4096]
UINT32 uint32_t
Definition: types.h:75
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
return adapter
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
GLuint * samplers
Definition: glext.h:7280
GLuint buffer
Definition: glext.h:5915
GLuint sampler
Definition: glext.h:7283
GLuint shader
Definition: glext.h:6030
const GLuint * shaders
Definition: glext.h:7538
GLbitfield flags
Definition: glext.h:7161
const GLfloat * m
Definition: glext.h:10848
unsigned int UINT
Definition: sysinfo.c:13
const char * filename
Definition: ioapi.h:137
long LONG
Definition: pedump.c:60
#define wine_rb_entry
Definition: rbtree.h:404
#define wine_rb_tree
Definition: rbtree.h:405
struct d3d10_effect_variable * elements
ID3D10ShaderResourceView * resource_view
struct d3d10_effect_variable * shader
ID3D10EffectPass ID3D10EffectPass_iface
struct d3d10_effect_prop_dependencies dependencies
struct d3d10_effect_variable * depth_stencil
struct d3d10_effect_variable * blend
struct d3d10_effect_pass_shader_desc gs
struct d3d10_effect_pass_shader_desc ps
struct d3d10_effect_pass_shader_desc vs
struct d3d10_effect_variable * rasterizer
struct d3d10_effect_annotations annotations
struct d3d10_effect_technique * technique
struct d3d10_effect_prop_dependency * entries
ID3D10ShaderResourceView ** srv
struct d3d10_effect_variable * texture
D3D10_SAMPLER_DESC desc
struct d3d10_effect_variable * variable
Definition: d3d10_private.h:71
D3D10_SHADER_INPUT_TYPE in_type
Definition: d3d10_private.h:67
D3D10_SIGNATURE_PARAMETER_DESC * elements
Definition: d3d10_private.h:79
ID3D10VertexShader * vs
Definition: d3d10_private.h:89
union d3d10_effect_shader_variable::@255 shader
ID3D10ShaderReflection * reflection
Definition: d3d10_private.h:84
ID3D10PixelShader * ps
Definition: d3d10_private.h:90
struct d3d10_effect_shader_resource * resources
Definition: d3d10_private.h:96
ID3D10GeometryShader * gs
Definition: d3d10_private.h:91
ID3D10RasterizerState * rasterizer
ID3D10DepthStencilState * depth_stencil
D3D10_RASTERIZER_DESC rasterizer
D3D10_DEPTH_STENCIL_DESC depth_stencil
struct d3d10_effect_prop_dependencies dependencies
union d3d10_effect_state_object_variable::@256 desc
struct d3d10_effect * effect
struct d3d10_effect_annotations annotations
ID3D10EffectTechnique ID3D10EffectTechnique_iface
struct d3d10_effect_pass * passes
struct d3d10_effect_type * type
unsigned int size_unpacked
D3D10_SHADER_VARIABLE_CLASS type_class
struct d3d10_effect_type * elementtype
unsigned int member_count
D3D10_SHADER_VARIABLE_TYPE basetype
unsigned int stride
unsigned int element_count
struct d3d10_effect * effect
unsigned int row_count
struct d3d10_effect_type_member * members
struct wine_rb_entry entry
ID3D10EffectType ID3D10EffectType_iface
unsigned int flags
unsigned int size_packed
unsigned int column_count
struct d3d10_effect_variable ** v
struct d3d10_effect * effect
struct d3d10_effect_variable * elements
struct d3d10_effect_annotations annotations
unsigned int explicit_bind_point
union d3d10_effect_variable::@258 u
ID3D10EffectVariable ID3D10EffectVariable_iface
struct d3d10_effect_variable * members
struct d3d10_effect_type * type
struct d3d10_effect_variable * buffer
struct d3d10_effect_state_object_variable state
uint32_t version
ID3D10EffectPool ID3D10EffectPool_iface
unsigned int numeric_variable_count
struct d3d10_effect_variable * object_variables
unsigned int shared_buffer_count
unsigned int anonymous_shader_current
struct d3d10_effect * pool
unsigned int shared_object_count
uint32_t index_offset
struct d3d10_effect_anonymous_shader * anonymous_shaders
unsigned int local_buffer_count
ID3D10Effect ID3D10Effect_iface
uint32_t flags
struct d3d10_effect_var_array dsvs
struct d3d10_effect_var_array blend_states
struct d3d10_effect_var_array rtvs
struct d3d10_effect_var_array ds_states
unsigned int object_count
ID3D10Device * device
struct d3d10_effect_technique * techniques
struct d3d10_effect_var_array rs_states
struct d3d10_effect_variable * local_buffers
unsigned int technique_count
unsigned int texture_count
unsigned int anonymous_shader_count
Definition: devices.h:37
Definition: main.c:439
Definition: tools.h:99
Definition: cmds.c:130
ULONG_PTR SIZE_T
Definition: typedefs.h:80
#define WINAPI
Definition: msvc.h:6
unsigned char BYTE
Definition: xxhash.c:193