d3dx9: Factor out is_parameter_used() function.
Signed-off-by: Paul Gofman <gofmanp@gmail.com> Signed-off-by: Matteo Bruni <mbruni@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
ec7e766635
commit
57de7e9919
|
@ -4030,16 +4030,11 @@ static BOOL walk_parameter_dep(struct d3dx_parameter *param, walk_parameter_dep_
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static BOOL WINAPI ID3DXEffectImpl_IsParameterUsed(ID3DXEffect* iface, D3DXHANDLE parameter, D3DXHANDLE technique)
|
static BOOL is_parameter_used(struct d3dx_parameter *param, struct d3dx_technique *tech)
|
||||||
{
|
{
|
||||||
struct ID3DXEffectImpl *effect = impl_from_ID3DXEffect(iface);
|
|
||||||
unsigned int i, j;
|
unsigned int i, j;
|
||||||
struct d3dx_parameter *param = get_valid_parameter(&effect->base_effect, parameter);
|
|
||||||
struct d3dx_technique *tech = get_valid_technique(&effect->base_effect, technique);
|
|
||||||
struct d3dx_pass *pass;
|
struct d3dx_pass *pass;
|
||||||
|
|
||||||
TRACE("iface %p, parameter %p, technique %p.\n", iface, parameter, technique);
|
|
||||||
TRACE("param %p, name %s, tech %p.\n", param, param ? debugstr_a(param->name) : "", tech);
|
|
||||||
if (!tech || !param)
|
if (!tech || !param)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
|
@ -4049,16 +4044,27 @@ static BOOL WINAPI ID3DXEffectImpl_IsParameterUsed(ID3DXEffect* iface, D3DXHANDL
|
||||||
for (j = 0; j < pass->state_count; ++j)
|
for (j = 0; j < pass->state_count; ++j)
|
||||||
{
|
{
|
||||||
if (walk_state_dep(&pass->states[j], is_same_parameter, param))
|
if (walk_state_dep(&pass->states[j], is_same_parameter, param))
|
||||||
{
|
|
||||||
TRACE("Returning TRUE.\n");
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
TRACE("Returning FALSE.\n");
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static BOOL WINAPI ID3DXEffectImpl_IsParameterUsed(ID3DXEffect* iface, D3DXHANDLE parameter, D3DXHANDLE technique)
|
||||||
|
{
|
||||||
|
struct ID3DXEffectImpl *effect = impl_from_ID3DXEffect(iface);
|
||||||
|
struct d3dx_parameter *param = get_valid_parameter(&effect->base_effect, parameter);
|
||||||
|
struct d3dx_technique *tech = get_valid_technique(&effect->base_effect, technique);
|
||||||
|
BOOL ret;
|
||||||
|
|
||||||
|
TRACE("iface %p, parameter %p, technique %p.\n", iface, parameter, technique);
|
||||||
|
TRACE("param %p, name %s, tech %p.\n", param, param ? debugstr_a(param->name) : "", tech);
|
||||||
|
|
||||||
|
ret = is_parameter_used(param, tech);
|
||||||
|
TRACE("Returning %#x.\n", ret);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
static HRESULT WINAPI ID3DXEffectImpl_Begin(ID3DXEffect *iface, UINT *passes, DWORD flags)
|
static HRESULT WINAPI ID3DXEffectImpl_Begin(ID3DXEffect *iface, UINT *passes, DWORD flags)
|
||||||
{
|
{
|
||||||
struct ID3DXEffectImpl *effect = impl_from_ID3DXEffect(iface);
|
struct ID3DXEffectImpl *effect = impl_from_ID3DXEffect(iface);
|
||||||
|
|
Loading…
Reference in New Issue