31 return (
token & 0xfffe0000) == 0xfffe0000;
86 TRACE(
"byte_code %p\n", byte_code);
102 return (
ptr - byte_code) *
sizeof(*ptr);
107 TRACE(
"byte_code %p\n", byte_code);
109 return byte_code ? *byte_code : 0;
146 TRACE(
"byte_code %p, fourcc %#lx, data %p, size %p.\n", byte_code, fourcc,
data,
size);
161 WARN(
"Invalid data supplied\n");
173 if (*(
ptr + 1) == fourcc)
175 UINT ctab_size = (comment_size - 1) *
sizeof(
DWORD);
176 const void *ctab_data =
ptr + 2;
181 TRACE(
"Returning comment data at %p with size %d\n", ctab_data, ctab_size);
198 void **assemble =
param;
216 TRACE(
"data %p, data_len %u, defines %p, include %p, flags %#lx, shader %p, error_messages %p.\n",
240 0, 0, {(
DWORD_PTR)(__FILE__
": from_file_mutex")}
252 const char *
p, *parent_name =
"";
260 parent_name = *((
const char **)parent_data - 1);
270 if ((
p =
strrchr(parent_name,
'\\')))
341 TRACE(
"filename %s, defines %p, include %p, flags %#lx, shader %p, error_messages %p.\n",
366 TRACE(
"filename %s, defines %p, include %p, flags %#lx, shader %p, error_messages %p.\n",
405 TRACE(
"module %p, resource %s, defines %p, include %p, flags %#lx, shader %p, error_messages %p.\n",
423 TRACE(
"module %p, resource %s, defines %p, include %p, flags %#lx, shader %p, error_messages %p.\n",
440 TRACE(
"data %s, length %u, defines %p, include %p, function %s, profile %s, "
441 "flags %#lx, shader %p, error_msgs %p, constant_table %p.\n",
472 TRACE(
"filename %s, defines %p, include %p, entrypoint %s, profile %s, "
473 "flags %#lx, shader %p, error_messages %p, constant_table %p.\n",
497 unsigned int filename_len;
503 TRACE(
"filename %s, defines %p, include %p, entrypoint %s, profile %s, "
504 "flags %#lx, shader %p, error_messages %p, constant_table %p.\n",
515 filename_a =
malloc(filename_len *
sizeof(
char));
554 TRACE(
"module %p, resource %s, defines %p, include %p, entrypoint %s, profile %s, "
555 "flags %#lx, shader %p, error_messages %p, constant_table %p.\n",
575 TRACE(
"module %p, resource %s, defines %p, include %p, entrypoint %s, profile %s, "
576 "flags %#lx, shader %p, error_messages %p, constant_table %p.\n",
591 TRACE(
"data %s, data_len %u, defines %p, include %p, shader %p, error_messages %p.\n",
606 TRACE(
"filename %s, defines %p, include %p, shader %p, error_messages %p.\n",
631 TRACE(
"filename %s, defines %p, include %p, shader %p, error_messages %p.\n",
673 TRACE(
"module %p, resource %s, defines %p, include %p, shader %p, error_messages %p.\n",
691 TRACE(
"module %p, resource %s, defines %p, include %p, shader %p, error_messages %p.\n",
730 if (
table->constants)
734 for (
i = 0;
i <
table->desc.Constants; ++
i)
750 return (
version & 0xffff0000) == 0xfffe0000;
786 TRACE(
"Returning parameter %p\n",
c);
790 FIXME(
"Unhandled case \"%c\"\n", *--part);
795 TRACE(
"Constant not found\n");
843 TRACE(
"Constant not found\n");
875 for (
i = 0;
i <
table->desc.Constants; ++
i)
878 return &
table->constants[
i];
914 TRACE(
"%p increasing refcount to %lu.\n",
table, refcount);
924 TRACE(
"%p decreasing refcount to %lu.\n",
table, refcount);
940 TRACE(
"iface %p.\n", iface);
986 WARN(
"Invalid argument specified\n");
1005 WARN(
"Invalid argument specified\n");
1009 TRACE(
"Returning RegisterIndex %u\n",
c->desc.RegisterIndex);
1010 return c->desc.RegisterIndex;
1023 if (
c && index < c->
desc.StructMembers)
1026 TRACE(
"Returning constant %p\n",
c);
1032 if (index < This->
desc.Constants)
1035 TRACE(
"Returning constant %p\n",
c);
1040 WARN(
"Index out of range\n");
1053 TRACE(
"Returning constant %p\n",
c);
1065 if (
c && index < c->
desc.Elements)
1067 if (
c->desc.Elements > 1)
c = &
c->constants[
index];
1068 TRACE(
"Returning constant %p\n",
c);
1072 WARN(
"Invalid argument specified\n");
1096 if (*size < desc->
Rows *
desc->Columns)
1114 if (
desc->Elements > 1)
1148 for (
i = 0;
i <
desc->StructMembers; ++
i)
1165 for (
i = 1;
i <
desc->StructMembers; ++
i)
1172 for (
i = 0;
i <
desc->StructMembers; ++
i)
1184 if (
desc->Elements > 1)
1202 switch (
desc->Class)
1210 regsize =
desc->Columns;
1214 regcount =
min(
desc->RegisterCount,
desc->Columns);
1217 regsize =
desc->Rows;
1234 switch (
desc->Class)
1237 if (*
size < regcount * 4)
1243 *
size -= 4 * regcount;
1248 *
size -= 4 * regcount;
1268 switch (
desc->Class)
1296 switch (
desc->Class)
1329 switch (
desc->RegisterSet)
1334 for (
i = 0;
i < regcount; ++
i)
1346 if (++
l >= regsize)
l = 0;
1351 for (
i = 0;
i < regcount; ++
i)
1353 INT vec[4] = {0, 0, 1, 0};
1355 for (
l = 0;
l < regsize; ++
l)
1370 for (
i = 0;
i < regcount; ++
i)
1374 for (
l = 0;
l < regsize; ++
l)
1402 WARN(
"Invalid argument specified\n");
1406 switch (
c->desc.Class)
1431 WARN(
"Invalid argument specified\n");
1435 switch (
c->desc.Class)
1459 WARN(
"Invalid argument specified\n");
1463 switch (
c->desc.Class)
1488 WARN(
"Invalid argument specified\n");
1492 switch (
c->desc.Class)
1516 WARN(
"Invalid argument specified\n");
1520 switch (
c->desc.Class)
1545 WARN(
"Invalid argument specified\n");
1549 switch (
c->desc.Class)
1577 WARN(
"Invalid argument specified\n");
1581 for (
i = 0;
i <
This->desc.Constants;
i++)
1589 switch (
desc->RegisterSet)
1594 desc->RegisterCount);
1597 desc->RegisterCount);
1603 desc->RegisterCount);
1606 desc->RegisterCount);
1612 desc->RegisterCount);
1615 desc->RegisterCount);
1642 WARN(
"Invalid argument specified\n");
1648 switch (
desc->Class)
1853 constant->desc.Elements = is_element ? 1 :
type->Elements;
1855 constant->desc.Name = ctab + nameoffset;
1859 TRACE(
"name %s, elements %u, index %u, defaultvalue %p, regset %s\n",
constant->desc.Name,
1862 TRACE(
"class %s, type %s, rows %d, columns %d, elements %d, struct_members %d\n",
1866 if (
type->Elements > 1 && !is_element)
1881 ERR(
"Out of memory\n");
1890 memberinfo ? memberinfo[
i].
Name : nameoffset,
regset);
1913 switch (
type->Class)
1919 offsetdiff =
type->Rows * 4;
1923 offsetdiff =
type->Rows * 4;
1928 offsetdiff =
type->Columns * 4;
1994 WARN(
"Invalid argument specified.\n");
2000 WARN(
"Invalid byte_code specified.\n");
2010 WARN(
"CTAB not found.\n");
2014 if (
size <
sizeof(*ctab_header))
2016 WARN(
"Invalid CTAB size.\n");
2021 if (ctab_header->
Size !=
sizeof(*ctab_header))
2023 WARN(
"Invalid D3DXSHADER_CONSTANTTABLE size.\n");
2027 object =
calloc(1,
sizeof(*
object));
2037 ERR(
"Out of memory\n");
2041 object->size =
size;
2044 object->flags =
flags;
2045 object->desc.Creator = ctab_header->
Creator ?
object->ctab + ctab_header->
Creator :
NULL;
2046 object->desc.Version = ctab_header->
Version;
2047 object->desc.Constants = ctab_header->
Constants;
2048 TRACE(
"Creator %s, Version %#lx, Constants %u, Target %s.\n",
2055 ERR(
"Out of memory\n");
2081 object->constants[
i].desc.RegisterCount = constant_info[
i].
RegisterCount;
2083 object->constants[
i].constantinfo_reserved = constant_info[
i].
Reserved;
2099 TRACE(
"(%p, %p): Forwarded to D3DXGetShaderConstantTableEx\n", byte_code,
constant_table);
2125 iface->lpVtbl->AddRef(iface);
2140 TRACE(
"%p increasing refcount to %lu.\n", linker, refcount);
2150 TRACE(
"%p decreasing refcount to %lu.\n", linker, refcount);
2169 WARN(
"Invalid argument supplied.\n");
2182 FIXME(
"iface %p: stub.\n", iface);
2189 FIXME(
"iface %p, index %u: stub.\n", iface,
index);
2205 FIXME(
"iface %p, name %p, desc %p: stub.\n", iface,
name,
desc);
2212 FIXME(
"iface %p, fragments %p: stub.\n", iface, fragments);
2219 FIXME(
"iface %p, buffer %p: stub.\n", iface,
buffer);
2236 FIXME(
"iface %p, profile %s, flags %#lx, handles %p, fragment_count %u, buffer %p, errors %p: stub.\n",
2246 FIXME(
"iface %p, profile %s, flags %#lx, handles %p, fragment_count %u, shader %p, errors %p: stub.\n",
2256 FIXME(
"iface %p, profile %s, flags %#lx, handles %p, fragment_count %u, shader %p, errors %p: stub.\n",
2264 FIXME(
"iface %p: stub.\n", iface);
2289 ID3DXFragmentLinker **linker)
2295 object =
calloc(1,
sizeof(*
object));
2304 object->flags =
flags;
2306 *linker = &
object->ID3DXFragmentLinker_iface;
2320 UINT i, sampler_count = 0;
2333 if (
size <
sizeof(*ctab_header))
return D3D_OK;
2336 if (ctab_header->
Size !=
sizeof(*ctab_header))
return D3D_OK;
2359 TRACE(
"Found %u samplers\n", sampler_count);
2398 iface->lpVtbl->AddRef(iface);
2413 TRACE(
"%p increasing refcount to %lu.\n", texture_shader, refcount);
2423 TRACE(
"%p decreasing refcount to %lu.\n", texture_shader, refcount);
2431 free(texture_shader);
2441 TRACE(
"iface %p, function %p.\n", iface, function);
2451 FIXME(
"iface %p, constant_buffer %p stub.\n", iface, constant_buffer);
2458 FIXME(
"iface %p, desc %p stub.\n", iface,
desc);
2465 FIXME(
"iface %p, constant %p, constant_desc %p, count %p stub.\n", iface,
constant, constant_desc,
count);
2493 FIXME(
"iface %p stub.\n", iface);
2507 FIXME(
"iface %p, constant %p, b %u stub.\n", iface,
constant,
b);
2521 FIXME(
"iface %p, constant %p, n %d stub.\n", iface,
constant,
n);
2535 FIXME(
"iface %p, constant %p, f %f stub.\n", iface,
constant,
f);
2650 TRACE(
"function %p, texture_shader %p.\n", function, texture_shader);
2652 if (!function || !texture_shader)
2661 if (!(
object =
calloc(1,
sizeof(*
object))))
2669 IUnknown_Release(&
object->ID3DXTextureShader_iface);
2676 IUnknown_Release(&
object->ID3DXTextureShader_iface);
2683 IUnknown_Release(&
object->ID3DXTextureShader_iface);
2687 *texture_shader = &
object->ID3DXTextureShader_iface;
2701 *(inputs++) = texcoord->
x;
2702 *(inputs++) = texcoord->
y;
2706 *(inputs++) = texelsize->
x;
2707 *(inputs++) = texelsize->
y;
2725 *(inputs++) = texcoord->
x;
2726 *(inputs++) = texcoord->
y;
2727 *(inputs++) = texcoord->
z;
2730 *(inputs++) = texelsize->
x;
2731 *(inputs++) = texelsize->
y;
2732 *(inputs++) = texelsize->
z;
2744 TRACE(
"texture %p, texture_shader %p.\n",
texture, texture_shader);
2753 TRACE(
"cube %p, texture_shader %p.\n", cube, texture_shader);
2761 unsigned int len = 0;
2772 ERR(
"Unexpected END token.\n");
2813 BOOL is_ps = version_token >> 16 == 0xffff;
2815 BYTE colors = 0, rastout = 0;
2819 if ((version_token & 0xffff0000) != 0xfffe0000 && (version_token & 0xffff0000) != 0xffff0000)
2822 major = version_token >> 8 & 0xff;
2823 minor = version_token & 0xff;
2825 TRACE(
"%s shader, version %u.%u.\n", is_ps ?
"Pixel" :
"Vertex",
major,
minor);
2828 has_dcl = (!is_ps && (!output ||
major == 3)) || (is_ps && !output &&
major >= 2);
2840 if (is_ps && !output &&
major == 2)
2901 rastout |= 1u <<
index;
2905 texcoords |= 1u <<
index;
2907 colors |= 1u <<
index;
2958 WARN(
"Invalid RASTOUT register index.\n");
std::map< E_MODULE, HMODULE > mod
static unsigned char bytes[4]
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
#define D3DERR_INVALIDCALL
#define D3DPS_VERSION(major, minor)
#define D3DSI_OPCODE_MASK
#define D3DSI_COMMENTSIZE_SHIFT
#define D3DSI_COMMENTSIZE_MASK
#define D3DSP_REGTYPE_MASK
#define D3DVS_VERSION(major, minor)
#define D3DSP_REGTYPE_SHIFT
#define IDirect3DDevice9_GetDeviceCaps(p, a)
#define IDirect3DDevice9_SetPixelShaderConstantI(p, a, b, c)
#define IDirect3DDevice9_SetVertexShaderConstantF(p, a, b, c)
#define IDirect3DDevice9_SetPixelShaderConstantF(p, a, b, c)
#define IDirect3DDevice9_Release(p)
#define IDirect3DDevice9_SetVertexShaderConstantI(p, a, b, c)
#define IDirect3DDevice9_SetPixelShaderConstantB(p, a, b, c)
#define IDirect3DDevice9_SetVertexShaderConstantB(p, a, b, c)
#define IDirect3DDevice9_AddRef(p)
#define D3DSP_REGTYPE_MASK2
#define D3DSI_INSTLENGTH_SHIFT
#define D3DSP_DCL_USAGE_MASK
#define D3DSP_REGTYPE_SHIFT2
enum _D3DDECLUSAGE D3DDECLUSAGE
#define D3DSP_DCL_USAGE_SHIFT
#define D3DSI_INSTLENGTH_MASK
#define D3DSP_REGNUM_MASK
#define D3DSP_DCL_USAGEINDEX_MASK
#define D3DSP_DCL_USAGEINDEX_SHIFT
#define D3DCOMPILE_ENABLE_BACKWARDS_COMPATIBILITY
static const WCHAR D3DCOMPILER_DLL_W[]
#define D3DCOMPILER_DLL_A
#define D3D_DISASM_ENABLE_COLOR_CODE
static SIZE_T const char const D3D_SHADER_MACRO ID3DInclude * include
static SIZE_T const char const D3D_SHADER_MACRO ID3DInclude UINT ID3DBlob ID3DBlob ** error_messages
static SIZE_T const char const D3D_SHADER_MACRO * defines
HRESULT WINAPI D3DPreprocess(const void *data, SIZE_T size, const char *filename, const D3D_SHADER_MACRO *defines, ID3DInclude *include, ID3DBlob **shader, ID3DBlob **error_messages)
HRESULT WINAPI D3DCompile(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 WINAPI D3DDisassemble(const void *data, SIZE_T size, UINT flags, const char *comments, ID3DBlob **disassembly)
#define D3DXERR_INVALIDDATA
struct ID3DXBuffer ID3DXBuffer
static void set_number(void *outdata, D3DXPARAMETER_TYPE outtype, const void *indata, D3DXPARAMETER_TYPE intype)
HRESULT d3dx_evaluate_parameter(struct d3dx_param_eval *peval, const struct d3dx_parameter *param, void *param_value)
const char * debug_d3dxparameter_type(D3DXPARAMETER_TYPE t)
const char * debug_d3dxparameter_registerset(D3DXREGISTER_SET r)
HRESULT d3dx_create_param_eval(struct d3dx_parameters_store *parameters, 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)
HRESULT d3dx_init_parameters_store(struct d3dx_parameters_store *store, unsigned int count)
void d3dx_free_param_eval(struct d3dx_param_eval *peval)
void d3dx_parameters_store_cleanup(struct d3dx_parameters_store *store)
const char * debug_d3dxparameter_class(D3DXPARAMETER_CLASS c)
HRESULT load_resource_into_memory(HMODULE module, HRSRC resinfo, void **buffer, DWORD *length)
HRESULT WINAPI D3DXCreateBuffer(DWORD size, ID3DXBuffer **buffer)
D3DXMATRIX *WINAPI D3DXMatrixTranspose(D3DXMATRIX *out, const D3DXMATRIX *in)
static HRESULT WINAPI d3dx9_texture_shader_QueryInterface(ID3DXTextureShader *iface, REFIID riid, void **out)
const struct ctab_constant * d3dx_shader_get_ctab_constant(ID3DXConstantTable *iface, D3DXHANDLE constant)
static D3DXHANDLE WINAPI ID3DXConstantTableImpl_GetConstant(ID3DXConstantTable *iface, D3DXHANDLE constant, UINT index)
static HRESULT WINAPI d3dx9_texture_shader_GetFunction(ID3DXTextureShader *iface, struct ID3DXBuffer **function)
static HRESULT set_scalar_array(struct ID3DXConstantTableImpl *table, IDirect3DDevice9 *device, D3DXHANDLE constant, const void *indata, UINT count, D3DXPARAMETER_TYPE intype)
HRESULT WINAPI D3DXFillCubeTextureTX(struct IDirect3DCubeTexture9 *cube, ID3DXTextureShader *texture_shader)
static HRESULT WINAPI d3dx9_fragment_linker_GetDevice(ID3DXFragmentLinker *iface, struct IDirect3DDevice9 **device)
HRESULT WINAPI D3DXAssembleShaderFromFileW(const WCHAR *filename, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages)
HRESULT WINAPI D3DXPreprocessShader(const char *data, UINT data_len, const D3DXMACRO *defines, ID3DXInclude *include, ID3DXBuffer **shader, ID3DXBuffer **error_messages)
static struct d3dx9_fragment_linker * impl_from_ID3DXFragmentLinker(ID3DXFragmentLinker *iface)
HRESULT WINAPI D3DXFillTextureTX(struct IDirect3DTexture9 *texture, ID3DXTextureShader *texture_shader)
void WINAPI texture_shader_fill_3d(D3DXVECTOR4 *out, const D3DXVECTOR3 *texcoord, const D3DXVECTOR3 *texelsize, void *data)
HRESULT WINAPI D3DXGetShaderConstantTableEx(const DWORD *byte_code, DWORD flags, ID3DXConstantTable **constant_table)
static HRESULT WINAPI ID3DXConstantTableImpl_SetVector(struct ID3DXConstantTable *iface, struct IDirect3DDevice9 *device, D3DXHANDLE constant, const D3DXVECTOR4 *vector)
static HRESULT WINAPI d3dx9_texture_shader_SetMatrix(ID3DXTextureShader *iface, D3DXHANDLE constant, const D3DXMATRIX *matrix)
static UINT WINAPI ID3DXConstantTableImpl_GetSamplerIndex(ID3DXConstantTable *iface, D3DXHANDLE constant)
static void free_constant_table(struct ID3DXConstantTableImpl *table)
static HRESULT WINAPI d3dx9_texture_shader_SetValue(ID3DXTextureShader *iface, D3DXHANDLE constant, const void *data, UINT bytes)
static BOOL is_vertex_shader(DWORD version)
static struct ctab_constant * get_constant_element_by_name(struct ctab_constant *constant, const char *name)
static D3DXHANDLE handle_from_constant(struct ctab_constant *constant)
HRESULT WINAPI D3DXCreateFragmentLinkerEx(IDirect3DDevice9 *device, UINT size, DWORD flags, ID3DXFragmentLinker **linker)
HRESULT WINAPI D3DXPreprocessShaderFromResourceA(HMODULE module, const char *resource, const D3DXMACRO *defines, ID3DXInclude *include, ID3DXBuffer **shader, ID3DXBuffer **error_messages)
static HRESULT WINAPI ID3DXConstantTableImpl_SetFloatArray(struct ID3DXConstantTable *iface, struct IDirect3DDevice9 *device, D3DXHANDLE constant, const float *f, UINT count)
CRITICAL_SECTION from_file_mutex
UINT WINAPI D3DXGetShaderSize(const DWORD *byte_code)
static HRESULT WINAPI d3dx9_texture_shader_SetBoolArray(ID3DXTextureShader *iface, D3DXHANDLE constant, const BOOL *b, UINT count)
const char *WINAPI D3DXGetPixelShaderProfile(struct IDirect3DDevice9 *device)
static HRESULT WINAPI d3dx_include_from_file_close(ID3DXInclude *iface, const void *data)
HRESULT WINAPI D3DXAssembleShaderFromResourceW(HMODULE module, const WCHAR *resource, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages)
static struct ctab_constant * get_constant_by_name(struct ID3DXConstantTableImpl *table, struct ctab_constant *constant, const char *name)
HRESULT WINAPI D3DXPreprocessShaderFromResourceW(HMODULE module, const WCHAR *resource, const D3DXMACRO *defines, ID3DXInclude *include, ID3DXBuffer **shader, ID3DXBuffer **error_messages)
static struct ctab_constant * get_valid_constant(struct ID3DXConstantTableImpl *table, D3DXHANDLE handle)
static UINT WINAPI d3dx9_fragment_linker_GetNumberOfFragments(ID3DXFragmentLinker *iface)
HRESULT WINAPI D3DXCompileShaderFromFileW(const WCHAR *filename, const D3DXMACRO *defines, ID3DXInclude *include, const char *entrypoint, const char *profile, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages, ID3DXConstantTable **constant_table)
static D3DXHANDLE WINAPI d3dx9_texture_shader_GetConstantElement(ID3DXTextureShader *iface, D3DXHANDLE constant, UINT index)
static HRESULT WINAPI ID3DXConstantTableImpl_SetMatrix(struct ID3DXConstantTable *iface, struct IDirect3DDevice9 *device, D3DXHANDLE constant, const D3DXMATRIX *matrix)
static HRESULT WINAPI d3dx9_texture_shader_SetDefaults(ID3DXTextureShader *iface)
HRESULT WINAPI D3DXPreprocessShaderFromFileW(const WCHAR *filename, const D3DXMACRO *defines, ID3DXInclude *include, ID3DXBuffer **shader, ID3DXBuffer **error_messages)
static HRESULT WINAPI d3dx9_texture_shader_SetFloat(ID3DXTextureShader *iface, D3DXHANDLE constant, FLOAT f)
static ULONG WINAPI d3dx9_fragment_linker_Release(ID3DXFragmentLinker *iface)
static HRESULT WINAPI d3dx9_fragment_linker_LinkPixelShader(ID3DXFragmentLinker *iface, const char *profile, DWORD flags, const D3DXHANDLE *handles, UINT fragment_count, IDirect3DPixelShader9 **shader, ID3DXBuffer **errors)
static HRESULT WINAPI d3dx9_fragment_linker_ClearCache(ID3DXFragmentLinker *iface)
static D3DXHANDLE WINAPI ID3DXConstantTableImpl_GetConstantElement(ID3DXConstantTable *iface, D3DXHANDLE constant, UINT index)
static HRESULT WINAPI d3dx9_fragment_linker_LinkShader(ID3DXFragmentLinker *iface, const char *profile, DWORD flags, const D3DXHANDLE *handles, UINT fragment_count, ID3DXBuffer **buffer, ID3DXBuffer **errors)
static D3DXHANDLE WINAPI d3dx9_texture_shader_GetConstantByName(ID3DXTextureShader *iface, D3DXHANDLE constant, const char *name)
static HRESULT WINAPI d3dx9_fragment_linker_GetFragmentDesc(ID3DXFragmentLinker *iface, D3DXHANDLE name, D3DXFRAGMENT_DESC *desc)
static CRITICAL_SECTION_DEBUG from_file_mutex_debug
static HRESULT WINAPI ID3DXConstantTableImpl_SetInt(struct ID3DXConstantTable *iface, struct IDirect3DDevice9 *device, D3DXHANDLE constant, INT n)
static HRESULT WINAPI ID3DXConstantTableImpl_SetDefaults(struct ID3DXConstantTable *iface, struct IDirect3DDevice9 *device)
static HRESULT WINAPI ID3DXConstantTableImpl_SetVectorArray(struct ID3DXConstantTable *iface, struct IDirect3DDevice9 *device, D3DXHANDLE constant, const D3DXVECTOR4 *vector, UINT count)
static DWORD WINAPI ID3DXConstantTableImpl_GetBufferSize(ID3DXConstantTable *iface)
static struct d3dx9_texture_shader * impl_from_ID3DXTextureShader(ID3DXTextureShader *iface)
HRESULT WINAPI D3DXGetShaderOutputSemantics(const DWORD *byte_code, D3DXSEMANTIC *semantics, UINT *count)
HRESULT WINAPI D3DXFindShaderComment(const DWORD *byte_code, DWORD fourcc, const void **data, UINT *size)
static HRESULT WINAPI ID3DXConstantTableImpl_SetBoolArray(struct ID3DXConstantTable *iface, struct IDirect3DDevice9 *device, D3DXHANDLE constant, const BOOL *b, UINT count)
static HRESULT set_matrix_pointer_array(struct ID3DXConstantTableImpl *table, IDirect3DDevice9 *device, D3DXHANDLE constant, const void **indata, UINT count, BOOL transpose)
static BOOL WINAPI load_d3dassemble_once(INIT_ONCE *once, void *param, void **context)
HRESULT WINAPI D3DXCompileShaderFromResourceW(HMODULE module, const WCHAR *resource, const D3DXMACRO *defines, ID3DXInclude *include, const char *entrypoint, const char *profile, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages, ID3DXConstantTable **constant_table)
HRESULT WINAPI D3DXPreprocessShaderFromFileA(const char *filename, const D3DXMACRO *defines, ID3DXInclude *include, ID3DXBuffer **shader, ID3DXBuffer **error_messages)
static HRESULT WINAPI ID3DXConstantTableImpl_SetMatrixPointerArray(struct ID3DXConstantTable *iface, struct IDirect3DDevice9 *device, D3DXHANDLE constant, const D3DXMATRIX **matrix, UINT count)
static HRESULT WINAPI d3dx9_fragment_linker_GetFragment(ID3DXFragmentLinker *iface, D3DXHANDLE name, ID3DXBuffer **buffer)
static HRESULT WINAPI ID3DXConstantTableImpl_SetMatrixTranspose(struct ID3DXConstantTable *iface, struct IDirect3DDevice9 *device, D3DXHANDLE constant, const D3DXMATRIX *matrix)
DWORD WINAPI D3DXGetShaderVersion(const DWORD *byte_code)
static HRESULT WINAPI d3dx9_texture_shader_SetVector(ID3DXTextureShader *iface, D3DXHANDLE constant, const D3DXVECTOR4 *vector)
HRESULT WINAPI D3DXAssembleShader(const char *data, UINT data_len, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages)
void WINAPI texture_shader_fill_2d(D3DXVECTOR4 *out, const D3DXVECTOR2 *texcoord, const D3DXVECTOR2 *texelsize, void *data)
static HRESULT WINAPI d3dx9_texture_shader_SetMatrixArray(ID3DXTextureShader *iface, D3DXHANDLE constant, const D3DXMATRIX *matrix, UINT count)
static struct ctab_constant * is_valid_sub_constant(struct ctab_constant *parent, D3DXHANDLE handle)
static D3DXHANDLE WINAPI d3dx9_fragment_linker_GetFragmentHandleByIndex(ID3DXFragmentLinker *iface, UINT index)
static HRESULT set_vector(struct ID3DXConstantTableImpl *table, IDirect3DDevice9 *device, D3DXHANDLE constant, const void *indata, D3DXPARAMETER_TYPE intype)
static ULONG WINAPI d3dx9_texture_shader_AddRef(ID3DXTextureShader *iface)
HRESULT WINAPI D3DXGetShaderSamplers(const DWORD *byte_code, const char **samplers, UINT *count)
static HRESULT set_vector_array(struct ID3DXConstantTableImpl *table, IDirect3DDevice9 *device, D3DXHANDLE constant, const void *indata, UINT count, D3DXPARAMETER_TYPE intype)
HRESULT WINAPI D3DXCompileShader(const char *data, UINT length, const D3DXMACRO *defines, ID3DXInclude *include, const char *function, const char *profile, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_msgs, ID3DXConstantTable **constant_table)
HRESULT WINAPI D3DXCompileShaderFromResourceA(HMODULE module, const char *resource, const D3DXMACRO *defines, ID3DXInclude *include, const char *entrypoint, const char *profile, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages, ID3DXConstantTable **constant_table)
static ULONG WINAPI d3dx9_fragment_linker_AddRef(ID3DXFragmentLinker *iface)
static HRESULT WINAPI ID3DXConstantTableImpl_SetIntArray(struct ID3DXConstantTable *iface, struct IDirect3DDevice9 *device, D3DXHANDLE constant, const INT *n, UINT count)
static HRESULT WINAPI d3dx_include_from_file_open(ID3DXInclude *iface, D3DXINCLUDE_TYPE include_type, const char *filename, const void *parent_data, const void **data, UINT *bytes)
static BOOL is_valid_bytecode(DWORD token)
static HRESULT WINAPI d3dx9_fragment_linker_AddFragments(ID3DXFragmentLinker *iface, const DWORD *fragments)
HRESULT WINAPI D3DXAssembleShaderFromFileA(const char *filename, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages)
static HRESULT WINAPI ID3DXConstantTableImpl_SetMatrixArray(struct ID3DXConstantTable *iface, struct IDirect3DDevice9 *device, D3DXHANDLE constant, const D3DXMATRIX *matrix, UINT count)
static HRESULT WINAPI ID3DXConstantTableImpl_SetFloat(struct ID3DXConstantTable *iface, struct IDirect3DDevice9 *device, D3DXHANDLE constant, float f)
static HRESULT WINAPI ID3DXConstantTableImpl_SetMatrixTransposePointerArray(struct ID3DXConstantTable *iface, struct IDirect3DDevice9 *device, D3DXHANDLE constant, const D3DXMATRIX **matrix, UINT count)
static struct ID3DXConstantTableImpl * impl_from_ID3DXConstantTable(ID3DXConstantTable *iface)
HRESULT WINAPI D3DXAssembleShaderFromResourceA(HMODULE module, const char *resource, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages)
static struct d3dx9_texture_shader * unsafe_impl_from_ID3DXTextureShader(ID3DXTextureShader *iface)
static HRESULT WINAPI d3dx9_texture_shader_SetFloatArray(ID3DXTextureShader *iface, D3DXHANDLE constant, const FLOAT *f, UINT count)
static HRESULT parse_ctab_constant_type(const char *ctab, DWORD typeoffset, struct ctab_constant *constant, BOOL is_element, WORD index, WORD max_index, DWORD *offset, DWORD nameoffset, UINT regset)
static const struct ID3DXTextureShaderVtbl d3dx9_texture_shader_vtbl
static HRESULT WINAPI ID3DXConstantTableImpl_GetDesc(ID3DXConstantTable *iface, D3DXCONSTANTTABLE_DESC *desc)
static DWORD get_index(const void **indata, UINT index, BOOL is_pointer)
static HRESULT WINAPI d3dx9_texture_shader_SetMatrixTransposePointerArray(ID3DXTextureShader *iface, D3DXHANDLE constant, const D3DXMATRIX **matrix, UINT count)
static HRESULT get_shader_semantics(const DWORD *byte_code, D3DXSEMANTIC *semantics, UINT *count, BOOL output)
static const struct ID3DXFragmentLinkerVtbl d3dx9_fragment_linker_vtbl
static void *WINAPI ID3DXConstantTableImpl_GetBufferPointer(ID3DXConstantTable *iface)
const char *WINAPI D3DXGetVertexShaderProfile(struct IDirect3DDevice9 *device)
static const void * main_file_data
static HRESULT WINAPI d3dx9_fragment_linker_LinkVertexShader(ID3DXFragmentLinker *iface, const char *profile, DWORD flags, const D3DXHANDLE *handles, UINT fragment_count, IDirect3DVertexShader9 **shader, ID3DXBuffer **errors)
static void free_constant(struct ctab_constant *constant)
HRESULT WINAPI D3DXGetShaderInputSemantics(const DWORD *byte_code, D3DXSEMANTIC *semantics, UINT *count)
HRESULT WINAPI D3DXCreateTextureShader(const DWORD *function, ID3DXTextureShader **texture_shader)
static HRESULT WINAPI d3dx9_fragment_linker_QueryInterface(ID3DXFragmentLinker *iface, REFIID riid, void **out)
const struct ID3DXIncludeVtbl d3dx_include_from_file_vtbl
static HRESULT WINAPI d3dx9_texture_shader_SetIntArray(ID3DXTextureShader *iface, D3DXHANDLE constant, const INT *n, UINT count)
static ULONG WINAPI ID3DXConstantTableImpl_AddRef(ID3DXConstantTable *iface)
static D3DXHANDLE WINAPI ID3DXConstantTableImpl_GetConstantByName(ID3DXConstantTable *iface, D3DXHANDLE constant, const char *name)
static HRESULT WINAPI ID3DXConstantTableImpl_SetMatrixTransposeArray(struct ID3DXConstantTable *iface, struct IDirect3DDevice9 *device, D3DXHANDLE constant, const D3DXMATRIX *matrix, UINT count)
static ULONG WINAPI ID3DXConstantTableImpl_Release(ID3DXConstantTable *iface)
static HRESULT WINAPI ID3DXConstantTableImpl_QueryInterface(ID3DXConstantTable *iface, REFIID riid, void **out)
static HRESULT WINAPI d3dx9_texture_shader_SetInt(ID3DXTextureShader *iface, D3DXHANDLE constant, INT n)
HRESULT WINAPI D3DXGetShaderConstantTable(const DWORD *byte_code, ID3DXConstantTable **constant_table)
static HRESULT WINAPI d3dx9_texture_shader_SetVectorArray(ID3DXTextureShader *iface, D3DXHANDLE constant, const D3DXVECTOR4 *vector, UINT count)
static HRESULT WINAPI d3dx9_texture_shader_SetMatrixTransposeArray(ID3DXTextureShader *iface, D3DXHANDLE constant, const D3DXMATRIX *matrix, UINT count)
static HRESULT WINAPI d3dx9_texture_shader_GetConstantDesc(ID3DXTextureShader *iface, D3DXHANDLE constant, D3DXCONSTANT_DESC *constant_desc, UINT *count)
static HRESULT WINAPI ID3DXConstantTableImpl_GetConstantDesc(ID3DXConstantTable *iface, D3DXHANDLE constant, D3DXCONSTANT_DESC *desc, UINT *count)
static D3DXHANDLE WINAPI d3dx9_fragment_linker_GetFragmentHandleByName(ID3DXFragmentLinker *iface, const char *name)
static HRESULT WINAPI d3dx9_texture_shader_GetDesc(ID3DXTextureShader *iface, D3DXCONSTANTTABLE_DESC *desc)
static ULONG WINAPI d3dx9_texture_shader_Release(ID3DXTextureShader *iface)
static D3DXHANDLE WINAPI d3dx9_texture_shader_GetConstant(ID3DXTextureShader *iface, D3DXHANDLE constant, UINT index)
static HRESULT WINAPI d3dx9_texture_shader_GetConstantBuffer(ID3DXTextureShader *iface, struct ID3DXBuffer **constant_buffer)
static HRESULT WINAPI d3dx9_texture_shader_SetMatrixTranspose(ID3DXTextureShader *iface, D3DXHANDLE constant, const D3DXMATRIX *matrix)
HRESULT WINAPI D3DXCreateFragmentLinker(IDirect3DDevice9 *device, UINT size, ID3DXFragmentLinker **linker)
static HRESULT WINAPI d3dx9_fragment_linker_GetAllFragments(ID3DXFragmentLinker *iface, ID3DXBuffer **buffer)
static HRESULT WINAPI d3dx9_texture_shader_SetMatrixPointerArray(ID3DXTextureShader *iface, D3DXHANDLE constant, const D3DXMATRIX **matrix, UINT count)
static HRESULT set_scalar(struct ID3DXConstantTableImpl *table, IDirect3DDevice9 *device, D3DXHANDLE constant, const void *indata, D3DXPARAMETER_TYPE intype)
static unsigned int get_instr_length(const DWORD *byte_code, unsigned int major, unsigned int minor)
static HRESULT set_matrix_array(struct ID3DXConstantTableImpl *table, IDirect3DDevice9 *device, D3DXHANDLE constant, const void *indata, UINT count, BOOL transpose)
static HRESULT WINAPI d3dx9_texture_shader_SetBool(ID3DXTextureShader *iface, D3DXHANDLE constant, BOOL b)
static HRESULT WINAPI ID3DXConstantTableImpl_SetBool(struct ID3DXConstantTable *iface, struct IDirect3DDevice9 *device, D3DXHANDLE constant, BOOL b)
HRESULT WINAPI D3DXCompileShaderFromFileA(const char *filename, const D3DXMACRO *defines, ID3DXInclude *include, const char *entrypoint, const char *profile, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages, ID3DXConstantTable **constant_table)
HRESULT WINAPI D3DXDisassembleShader(const DWORD *shader, BOOL colorcode, const char *comments, ID3DXBuffer **buffer)
static HRESULT WINAPI ID3DXConstantTableImpl_SetValue(struct ID3DXConstantTable *iface, struct IDirect3DDevice9 *device, D3DXHANDLE constant, const void *data, unsigned int bytes)
static const struct ID3DXConstantTableVtbl ID3DXConstantTable_Vtbl
HRESULT WINAPI D3DXFillTexture(struct IDirect3DTexture9 *texture, LPD3DXFILL2D function, void *funcdata)
HRESULT WINAPI D3DXFillCubeTexture(struct IDirect3DCubeTexture9 *texture, LPD3DXFILL3D function, void *funcdata)
#define ReadFile(a, b, c, d, e)
#define GetProcAddress(x, y)
#define INVALID_HANDLE_VALUE
#define CreateFileA(a, b, c, d, e, f, g)
#define WideCharToMultiByte
#define MultiByteToWideChar
static const WCHAR version[]
DWORD WINAPI GetFileSize(HANDLE hFile, LPDWORD lpFileSizeHigh)
HMODULE WINAPI GetModuleHandleW(LPCWSTR lpModuleName)
BOOL WINAPI InitOnceExecuteOnce(_Inout_ PINIT_ONCE InitOnce, _In_ __callback PINIT_ONCE_FN InitFn, _Inout_opt_ PVOID Parameter, _Outptr_opt_result_maybenull_ LPVOID *Context)
HRSRC WINAPI FindResourceW(HINSTANCE hModule, LPCWSTR name, LPCWSTR type)
HRSRC WINAPI FindResourceA(HMODULE hModule, LPCSTR name, LPCSTR type)
_ACRTIMP int __cdecl atoi(const char *)
_ACRTIMP char *__cdecl strchr(const char *, int)
_ACRTIMP size_t __cdecl strlen(const char *)
_ACRTIMP size_t __cdecl strcspn(const char *, const char *)
_ACRTIMP int __cdecl strncmp(const char *, const char *, size_t)
_ACRTIMP char *__cdecl strrchr(const char *, int)
#define D3DPS20CAPS_NODEPENDENTREADLIMIT
#define D3DPS20CAPS_GRADIENTINSTRUCTIONS
#define D3DPS20CAPS_NOTEXINSTRUCTIONLIMIT
#define D3DPS20CAPS_PREDICATION
#define D3DPS20CAPS_ARBITRARYSWIZZLE
#define ID3DXBuffer_GetBufferPointer(p)
#define ID3DXBuffer_Release(p)
#define ID3DXBuffer_AddRef(p)
#define ID3DXInclude_Close(p, a)
struct _D3DXSHADER_TYPEINFO * LPD3DXSHADER_TYPEINFO
#define D3DXCONSTTABLE_LARGEADDRESSAWARE
enum _D3DXINCLUDE_TYPE D3DXINCLUDE_TYPE
#define ID3DXInclude_Open(p, a, b, c, d, e)
#define ID3DXConstantTable_AddRef(p)
GLint GLint GLsizei GLsizei GLsizei depth
GLuint GLuint GLsizei count
GLuint GLuint GLsizei GLenum type
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLboolean GLboolean GLboolean b
GLsizei GLboolean transpose
GLuint GLsizei GLsizei * length
GLsizeiptr const GLvoid GLenum usage
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 const GLfloat const GLdouble const GLfloat GLint i
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 token
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 const GLfloat const GLdouble const GLfloat GLint GLint GLint j
__in WDFOBJECT __in PCWDF_OBJECT_CONTEXT_TYPE_INFO TypeInfo
static ID3DXConstantTable ** constant_table
#define memcpy(s1, s2, n)
D3D11_SHADER_VARIABLE_DESC desc
static const LARGE_INTEGER *static const HANDLE const LARGE_INTEGER *static PSLIST_ENTRY PSLIST_ENTRY last
static float(__cdecl *square_half_float)(float x
#define IsEqualGUID(rguid1, rguid2)
enum vkd3d_shader_register_type reg_type
ID3DXConstantTable ID3DXConstantTable_iface
struct ctab_constant * constants
D3DXCONSTANTTABLE_DESC desc
D3DVSHADERCAPS2_0 VS20Caps
DWORD VertexShaderVersion
D3DPSHADERCAPS2_0 PS20Caps
INT DynamicFlowControlDepth
LIST_ENTRY ProcessLocksList
struct IDirect3DDevice9 * device
ID3DXFragmentLinker ID3DXFragmentLinker_iface
struct d3dx_param_eval * eval
ID3DXTextureShader ID3DXTextureShader_iface
struct d3dx_parameters_store parameters
ID3DXInclude ID3DXInclude_iface
#define CONTAINING_RECORD(address, type, field)
static EFI_HANDLE * handles
static INIT_ONCE init_once
wchar_t tm const _CrtWcstime_Writes_and_advances_ptr_ count wchar_t ** out
DWORD WINAPI GetLastError(void)
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
#define INVALID_FILE_SIZE
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
#define INIT_ONCE_STATIC_INIT
static HRESULT HRESULT_FROM_WIN32(unsigned int x)