ReactOS  0.4.15-dev-2359-g0dedb9b
d3dx9_private.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2002 Raphael Junqueira
3  * Copyright (C) 2008 David Adam
4  * Copyright (C) 2008 Tony Wasserka
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19  *
20  */
21 
22 #ifndef __WINE_D3DX9_PRIVATE_H
23 #define __WINE_D3DX9_PRIVATE_H
24 
25 #include <stdint.h>
26 #define NONAMELESSUNION
27 #include "wine/debug.h"
28 #include "wine/heap.h"
29 #include "wine/rbtree.h"
30 
31 #define COBJMACROS
32 #include "d3dx9.h"
33 
34 #define ULONG64_MAX (~(ULONG64)0)
35 
36 struct vec4
37 {
38  float x, y, z, w;
39 };
40 
41 struct volume
42 {
46 };
47 
48 /* for internal use */
50  FORMAT_ARGB, /* unsigned */
51  FORMAT_ARGBF16,/* float 16 */
52  FORMAT_ARGBF, /* float */
56 };
57 
60  BYTE bits[4];
61  BYTE shift[4];
67  void (*from_rgba)(const struct vec4 *src, struct vec4 *dst);
68  void (*to_rgba)(const struct vec4 *src, struct vec4 *dst, const PALETTEENTRY *palette);
69 };
70 
72 {
73  ID3DXInclude ID3DXInclude_iface;
74 };
75 
77 extern const struct ID3DXIncludeVtbl d3dx_include_from_file_vtbl DECLSPEC_HIDDEN;
78 
80 {
81  if (format->type == FORMAT_ARGB || format->type == FORMAT_ARGBF16
82  || format->type == FORMAT_ARGBF || format->type == FORMAT_DXT)
83  return TRUE;
84  return !!format->to_rgba;
85 }
86 
88 {
89  if (format->type == FORMAT_ARGB || format->type == FORMAT_ARGBF16
90  || format->type == FORMAT_ARGBF || format->type == FORMAT_DXT)
91  return TRUE;
92  return !!format->from_rgba;
93 }
94 
97 
99 
102 
103 void copy_pixels(const BYTE *src, UINT src_row_pitch, UINT src_slice_pitch,
104  BYTE *dst, UINT dst_row_pitch, UINT dst_slice_pitch, const struct volume *size,
106 void convert_argb_pixels(const BYTE *src, UINT src_row_pitch, UINT src_slice_pitch,
107  const struct volume *src_size, const struct pixel_format_desc *src_format,
108  BYTE *dst, UINT dst_row_pitch, UINT dst_slice_pitch, const struct volume *dst_size,
110 void point_filter_argb_pixels(const BYTE *src, UINT src_row_pitch, UINT src_slice_pitch,
111  const struct volume *src_size, const struct pixel_format_desc *src_format,
112  BYTE *dst, UINT dst_row_pitch, UINT dst_slice_pitch, const struct volume *dst_size,
114 
115 HRESULT load_texture_from_dds(IDirect3DTexture9 *texture, const void *src_data, const PALETTEENTRY *palette,
116  DWORD filter, D3DCOLOR color_key, const D3DXIMAGE_INFO *src_info, unsigned int skip_levels,
117  unsigned int *loaded_miplevels) DECLSPEC_HIDDEN;
118 HRESULT load_cube_texture_from_dds(IDirect3DCubeTexture9 *cube_texture, const void *src_data,
120 HRESULT load_volume_from_dds(IDirect3DVolume9 *dst_volume, const PALETTEENTRY *dst_palette,
121  const D3DBOX *dst_box, const void *src_data, const D3DBOX *src_box, DWORD filter, D3DCOLOR color_key,
122  const D3DXIMAGE_INFO *src_info) DECLSPEC_HIDDEN;
123 HRESULT load_volume_texture_from_dds(IDirect3DVolumeTexture9 *volume_texture, const void *src_data,
125 HRESULT lock_surface(IDirect3DSurface9 *surface, const RECT *surface_rect, D3DLOCKED_RECT *lock,
126  IDirect3DSurface9 **temp_surface, BOOL write) DECLSPEC_HIDDEN;
127 HRESULT unlock_surface(IDirect3DSurface9 *surface, const RECT *surface_rect,
128  IDirect3DSurface9 *temp_surface, BOOL update) DECLSPEC_HIDDEN;
129 HRESULT save_dds_texture_to_memory(ID3DXBuffer **dst_buffer, IDirect3DBaseTexture9 *src_texture,
130  const PALETTEENTRY *src_palette) DECLSPEC_HIDDEN;
131 
132 unsigned short float_32_to_16(const float in) DECLSPEC_HIDDEN;
133 float float_16_to_32(const unsigned short in) DECLSPEC_HIDDEN;
134 
135 /* debug helpers */
139 
140 /* parameter type conversion helpers */
141 static inline BOOL get_bool(D3DXPARAMETER_TYPE type, const void *data)
142 {
143  switch (type)
144  {
145  case D3DXPT_FLOAT:
146  case D3DXPT_INT:
147  case D3DXPT_BOOL:
148  return !!*(DWORD *)data;
149 
150  case D3DXPT_VOID:
151  return *(BOOL *)data;
152 
153  default:
154  return FALSE;
155  }
156 }
157 
158 static inline int get_int(D3DXPARAMETER_TYPE type, const void *data)
159 {
160  switch (type)
161  {
162  case D3DXPT_FLOAT:
163  return (int)(*(float *)data);
164 
165  case D3DXPT_INT:
166  case D3DXPT_VOID:
167  return *(int *)data;
168 
169  case D3DXPT_BOOL:
170  return get_bool(type, data);
171 
172  default:
173  return 0;
174  }
175 }
176 
177 static inline float get_float(D3DXPARAMETER_TYPE type, const void *data)
178 {
179  switch (type)
180  {
181  case D3DXPT_FLOAT:
182  case D3DXPT_VOID:
183  return *(float *)data;
184 
185  case D3DXPT_INT:
186  return (float)(*(int *)data);
187 
188  case D3DXPT_BOOL:
189  return (float)get_bool(type, data);
190 
191  default:
192  return 0.0f;
193  }
194 }
195 
196 static inline void set_number(void *outdata, D3DXPARAMETER_TYPE outtype, const void *indata, D3DXPARAMETER_TYPE intype)
197 {
198  if (outtype == intype)
199  {
200  *(DWORD *)outdata = *(DWORD *)indata;
201  return;
202  }
203 
204  switch (outtype)
205  {
206  case D3DXPT_FLOAT:
207  *(float *)outdata = get_float(intype, indata);
208  break;
209 
210  case D3DXPT_BOOL:
211  *(BOOL *)outdata = get_bool(intype, indata);
212  break;
213 
214  case D3DXPT_INT:
215  *(int *)outdata = get_int(intype, indata);
216  break;
217 
218  default:
219  *(DWORD *)outdata = 0;
220  break;
221  }
222 }
223 
225 {
226  return type == D3DXPT_SAMPLER
229 }
230 
231 /* Returns the smallest power of 2 which is greater than or equal to num */
233 {
234 #ifndef __REACTOS__
235  uint32_t index;
236 #else
237  unsigned long index;
238 #endif
239  return BitScanReverse(&index, num - 1) ? 1u << (index + 1) : 1;
240 }
241 
242 struct d3dx_parameter;
243 
245 {
254 };
255 
257 {
261  unsigned int register_index;
262  unsigned int register_count;
264  unsigned int element_count;
265 };
266 
268 {
269  unsigned int input_count;
272  unsigned int const_set_count;
273  unsigned int const_set_size;
277 };
278 
280 {
282  unsigned int table_sizes[PRES_REGTAB_COUNT]; /* registers count */
283 };
284 
285 struct d3dx_pres_ins;
286 
288 {
290 
291  unsigned int ins_count;
293 
295 };
296 
298 {
300 
303 
305 };
306 
308 {
310  char *full_name;
312 };
313 
314 struct d3dx_shared_data;
316 
318 {
319  char magic_string[4];
322  char *name;
323  void *data;
333 
335  char *semantic;
336 
337  char *full_name;
339 };
340 
342 {
349 };
350 
352 {
353  void *data;
355  unsigned int size, count;
357 };
358 
359 struct d3dx_effect;
360 
362 {
363  return &param->top_level_param->param == param;
364 }
365 
366 static inline struct d3dx_top_level_parameter
368 {
370 }
371 
373 {
374  return ++*version_counter;
375 }
376 
378 {
379  struct d3dx_shared_data *shared_data;
380 
381  if ((shared_data = param->shared_data))
382  return update_version < shared_data->update_version;
383  else
384  return update_version < param->update_version;
385 }
386 
388 {
389  return is_top_level_param_dirty(param->top_level_param, update_version);
390 }
391 
392 struct d3dx_parameter *get_parameter_by_name(struct d3dx_effect *effect,
393  struct d3dx_parameter *parameter, const char *name) DECLSPEC_HIDDEN;
394 
395 #ifdef __REACTOS__
396 #define SET_D3D_STATE_(_manager, _device, _method, ...) ((_manager) ? (_manager)->lpVtbl->_method((_manager), __VA_ARGS__) \
397  : (_device)->lpVtbl->_method((_device), __VA_ARGS__))
398 #define SET_D3D_STATE(_base_effect, _method, ...) SET_D3D_STATE_((_base_effect)->manager, (_base_effect)->device, _method, __VA_ARGS__)
399 #else
400 #define SET_D3D_STATE_(manager, device, method, args...) (manager ? manager->lpVtbl->method(manager, args) \
401  : device->lpVtbl->method(device, args))
402 #define SET_D3D_STATE(base_effect, args...) SET_D3D_STATE_(base_effect->manager, base_effect->device, args)
403 #endif
404 
405 HRESULT d3dx_create_param_eval(struct d3dx_effect *effect, void *byte_code,
406  unsigned int byte_code_size, D3DXPARAMETER_TYPE type,
407  struct d3dx_param_eval **peval, ULONG64 *version_counter,
408  const char **skip_constants, unsigned int skip_constants_count) DECLSPEC_HIDDEN;
411  const struct d3dx_parameter *param, void *param_value) DECLSPEC_HIDDEN;
412 HRESULT d3dx_param_eval_set_shader_constants(ID3DXEffectStateManager *manager, struct IDirect3DDevice9 *device,
413  struct d3dx_param_eval *peval, BOOL update_all) DECLSPEC_HIDDEN;
415 
420 };
421 
422 const struct ctab_constant *d3dx_shader_get_ctab_constant(ID3DXConstantTable *iface,
424 
425 #endif /* __WINE_D3DX9_PRIVATE_H */
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble * u
Definition: glfuncs.h:240
char magic_string[4]
UINT width
Definition: d3dx9_private.h:43
const struct ID3DXIncludeVtbl d3dx_include_from_file_vtbl
Definition: shader.c:315
const char * debug_d3dxparameter_class(D3DXPARAMETER_CLASS c) DECLSPEC_HIDDEN
Definition: util.c:237
static BOOL is_param_type_sampler(D3DXPARAMETER_TYPE type)
BOOL is_param_eval_input_dirty(struct d3dx_param_eval *peval, ULONG64 update_version) DECLSPEC_HIDDEN
Definition: preshader.c:1717
struct d3dx_shared_data * shared_data
struct png_info_def **typedef void(__cdecl typeof(png_destroy_read_struct))(struct png_struct_def **
Definition: typeof.h:49
rwlock_t lock
Definition: tcpcore.h:1163
D3DXPARAMETER_TYPE type
CRITICAL_SECTION from_file_mutex
Definition: shader.c:229
static const char * dst_format
Definition: dib.c:1133
const char * D3DXHANDLE
Definition: d3dx9shader.h:48
static int get_int(D3DXPARAMETER_TYPE type, const void *data)
#define TRUE
Definition: types.h:120
GLdouble GLdouble GLdouble r
Definition: gl.h:2055
D3DXCONSTANT_DESC * inputs
enum pres_reg_tables table
GLdouble GLdouble t
Definition: gl.h:2047
static void set_number(void *outdata, D3DXPARAMETER_TYPE outtype, const void *indata, D3DXPARAMETER_TYPE intype)
GLuint buffer
Definition: glext.h:5915
char * full_name
const char * debug_d3dxparameter_registerset(D3DXREGISTER_SET r) DECLSPEC_HIDDEN
Definition: util.c:283
D3DXCONSTANT_DESC desc
static float get_float(D3DXPARAMETER_TYPE type, const void *data)
void(* to_rgba)(const struct vec4 *src, struct vec4 *dst, const PALETTEENTRY *palette)
Definition: d3dx9_private.h:68
const char * filename
Definition: ioapi.h:135
HRESULT load_cube_texture_from_dds(IDirect3DCubeTexture9 *cube_texture, const void *src_data, const PALETTEENTRY *palette, DWORD filter, D3DCOLOR color_key, const D3DXIMAGE_INFO *src_info) DECLSPEC_HIDDEN
WORD constantinfo_reserved
HRESULT d3dx_param_eval_set_shader_constants(ID3DXEffectStateManager *manager, struct IDirect3DDevice9 *device, struct d3dx_param_eval *peval, BOOL update_all) DECLSPEC_HIDDEN
Definition: preshader.c:1752
GLenum GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * bits
Definition: glext.h:10929
const char * debug_d3dxparameter_type(D3DXPARAMETER_TYPE t) DECLSPEC_HIDDEN
Definition: util.c:253
struct d3dx_const_param_eval_output * const_set
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
Definition: gl.h:1546
struct d3dx_parameter ** inputs_param
void point_filter_argb_pixels(const BYTE *src, UINT src_row_pitch, UINT src_slice_pitch, const struct volume *src_size, const struct pixel_format_desc *src_format, BYTE *dst, UINT dst_row_pitch, UINT dst_slice_pitch, const struct volume *dst_size, const struct pixel_format_desc *dst_format, D3DCOLOR color_key, const PALETTEENTRY *palette) DECLSPEC_HIDDEN
Definition: surface.c:1839
#define write
Definition: acwin.h:97
struct d3dx_top_level_parameter * top_level_param
unsigned int size
static BOOL is_top_level_param_dirty(struct d3dx_top_level_parameter *param, ULONG64 update_version)
struct wine_rb_entry entry
#define FALSE
Definition: types.h:117
ULONG64 update_version
unsigned int BOOL
Definition: ntddk_ex.h:94
Definition: devices.h:37
static BOOL get_bool(D3DXPARAMETER_TYPE type, const void *data)
HRESULT load_resource_into_memory(HMODULE module, HRSRC resinfo, void **buffer, DWORD *length) DECLSPEC_HIDDEN
Definition: util.c:170
GLenum GLuint GLenum GLsizei length
Definition: glext.h:5579
const struct ctab_constant * d3dx_shader_get_ctab_constant(ID3DXConstantTable *iface, D3DXHANDLE constant) DECLSPEC_HIDDEN
Definition: shader.c:984
unsigned int table_sizes[PRES_REGTAB_COUNT]
struct d3dx_parameter * members
unsigned int idx
Definition: utils.c:41
HRESULT d3dx_create_param_eval(struct d3dx_effect *effect, void *byte_code, unsigned int byte_code_size, D3DXPARAMETER_TYPE type, struct d3dx_param_eval **peval, ULONG64 *version_counter, const char **skip_constants, unsigned int skip_constants_count) DECLSPEC_HIDDEN
Definition: preshader.c:1233
static BOOL is_conversion_from_supported(const struct pixel_format_desc *format)
Definition: d3dx9_private.h:79
UINT height
Definition: d3dx9_private.h:44
const struct pixel_format_desc * get_format_info_idx(int idx) DECLSPEC_HIDDEN
Definition: util.c:226
struct d3dx_top_level_parameter ** parameters
HRESULT write_buffer_to_file(const WCHAR *filename, ID3DXBuffer *buffer) DECLSPEC_HIDDEN
Definition: util.c:186
struct d3dx_parameter * annotations
format_type
Definition: d3dx9_private.h:49
struct ID3DXBuffer ID3DXBuffer
Definition: d3dx8core.h:51
static BOOL is_top_level_parameter(struct d3dx_parameter *param)
GLuint index
Definition: glext.h:6031
enum _D3DFORMAT D3DFORMAT
PFLT_MESSAGE_WAITER_QUEUE CONTAINING_RECORD(Csq, DEVICE_EXTENSION, IrpQueue)) -> WaiterQ.mLock) _IRQL_raises_(DISPATCH_LEVEL) VOID NTAPI FltpAcquireMessageWaiterLock(_In_ PIO_CSQ Csq, _Out_ PKIRQL Irql)
Definition: Messaging.c:560
HRESULT load_volume_from_dds(IDirect3DVolume9 *dst_volume, const PALETTEENTRY *dst_palette, const D3DBOX *dst_box, const void *src_data, const D3DBOX *src_box, DWORD filter, D3DCOLOR color_key, const D3DXIMAGE_INFO *src_info) DECLSPEC_HIDDEN
Definition: surface.c:719
HRESULT save_dds_texture_to_memory(ID3DXBuffer **dst_buffer, IDirect3DBaseTexture9 *src_texture, const PALETTEENTRY *src_palette) DECLSPEC_HIDDEN
Definition: surface.c:672
float float_16_to_32(const unsigned short in) DECLSPEC_HIDDEN
Definition: math.c:2203
UINT depth
Definition: d3dx9_private.h:45
GLsizeiptr size
Definition: glext.h:5919
__wchar_t WCHAR
Definition: xmlstorage.h:180
struct ctab_constant * constants
static ULONG64 next_update_version(ULONG64 *version_counter)
GLenum GLuint texture
Definition: glext.h:6295
LONG HRESULT
Definition: typedefs.h:79
unsigned int input_count
unsigned int count
pres_reg_tables
GLfloat param
Definition: glext.h:5796
const GLubyte * c
Definition: glext.h:8905
enum format_type type
Definition: d3dx9_private.h:66
unsigned short WORD
Definition: ntddk_ex.h:93
unsigned long DWORD
Definition: ntddk_ex.h:95
GLuint GLuint num
Definition: glext.h:9618
unsigned int ins_count
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
static BOOL is_param_dirty(struct d3dx_parameter *param, ULONG64 update_version)
float w
Definition: d3dx9_private.h:38
HRESULT map_view_of_file(const WCHAR *filename, void **buffer, DWORD *length) DECLSPEC_HIDDEN
Definition: util.c:120
unsigned __int64 ULONG64
Definition: imports.h:198
struct d3dx_const_tab shader_inputs
#define index(s, c)
Definition: various.h:29
#define BitScanReverse
Definition: interlocked.h:6
void * tables[PRES_REGTAB_COUNT]
struct d3dx_param_eval * param_eval
HRESULT load_volume_texture_from_dds(IDirect3DVolumeTexture9 *volume_texture, const void *src_data, const PALETTEENTRY *palette, DWORD filter, DWORD color_key, const D3DXIMAGE_INFO *src_info) DECLSPEC_HIDDEN
Definition: surface.c:847
enum _D3DXREGISTER_SET D3DXREGISTER_SET
GLenum src
Definition: glext.h:6340
static uint32_t make_pow2(uint32_t num)
enum D3DXPARAMETER_CLASS constant_class
unsigned char BYTE
Definition: xxhash.c:193
static HPALETTE palette
Definition: clipboard.c:1345
ID3DXInclude ID3DXInclude_iface
Definition: d3dx9_private.h:73
void copy_pixels(const BYTE *src, UINT src_row_pitch, UINT src_slice_pitch, BYTE *dst, UINT dst_row_pitch, UINT dst_slice_pitch, const struct volume *size, const struct pixel_format_desc *format) DECLSPEC_HIDDEN
Definition: surface.c:1700
D3DXPARAMETER_TYPE
Definition: d3dx9shader.h:71
struct d3dx_parameter * get_parameter_by_name(struct d3dx_effect *effect, struct d3dx_parameter *parameter, const char *name) DECLSPEC_HIDDEN
Definition: effect.c:1026
HRESULT d3dx_evaluate_parameter(struct d3dx_param_eval *peval, const struct d3dx_parameter *param, void *param_value) DECLSPEC_HIDDEN
Definition: preshader.c:1723
struct d3dx_preshader pres
HRESULT unlock_surface(IDirect3DSurface9 *surface, const RECT *surface_rect, IDirect3DSurface9 *temp_surface, BOOL update) DECLSPEC_HIDDEN
Definition: surface.c:267
GLuint in
Definition: glext.h:9616
static struct d3dx_top_level_parameter * top_level_parameter_from_parameter(struct d3dx_parameter *param)
unsigned int const_set_size
Definition: rbtree.h:35
void convert_argb_pixels(const BYTE *src, UINT src_row_pitch, UINT src_slice_pitch, const struct volume *src_size, const struct pixel_format_desc *src_format, BYTE *dst, UINT dst_row_pitch, UINT dst_slice_pitch, const struct volume *dst_size, const struct pixel_format_desc *dst_format, D3DCOLOR color_key, const PALETTEENTRY *palette) DECLSPEC_HIDDEN
Definition: surface.c:1731
GLenum GLenum dst
Definition: glext.h:6340
struct wine_rb_entry rb_entry
unsigned int UINT
Definition: ndis.h:50
float z
Definition: d3dx9_private.h:38
UINT32 uint32_t
Definition: types.h:75
static BOOL is_conversion_to_supported(const struct pixel_format_desc *format)
Definition: d3dx9_private.h:87
struct d3dx_pres_ins * ins
struct d3dx_parameter * param
void d3dx_free_param_eval(struct d3dx_param_eval *peval) DECLSPEC_HIDDEN
Definition: preshader.c:1358
Definition: name.c:38
ULONG64 * version_counter
HRESULT lock_surface(IDirect3DSurface9 *surface, const RECT *surface_rect, D3DLOCKED_RECT *lock, IDirect3DSurface9 **temp_surface, BOOL write) DECLSPEC_HIDDEN
Definition: surface.c:209
D3DXPARAMETER_TYPE param_type
CRITICAL_SECTION from_file_mutex DECLSPEC_HIDDEN
Definition: d3dx9_private.h:77
struct d3dx_regstore regs
void(* from_rgba)(const struct vec4 *src, struct vec4 *dst)
Definition: d3dx9_private.h:67
struct d3dx_const_tab inputs
ULONG64 update_version
const struct pixel_format_desc * get_format_info(D3DFORMAT format) DECLSPEC_HIDDEN
Definition: util.c:217
unsigned int const_set_count
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
float x
Definition: d3dx9_private.h:38
float y
Definition: d3dx9_private.h:38
enum pres_reg_tables * regset2table
unsigned short float_32_to_16(const float in) DECLSPEC_HIDDEN
Definition: math.c:2102
GLint GLint GLint GLint GLint GLint GLint GLbitfield GLenum filter
Definition: glext.h:7005
HRESULT load_texture_from_dds(IDirect3DTexture9 *texture, const void *src_data, const PALETTEENTRY *palette, DWORD filter, D3DCOLOR color_key, const D3DXIMAGE_INFO *src_info, unsigned int skip_levels, unsigned int *loaded_miplevels) DECLSPEC_HIDDEN
Definition: surface.c:737
D3DXPARAMETER_CLASS
Definition: d3dx9shader.h:60
struct d3dx_parameter * param