vkd3d: Move ID3D12RootSignature impl_froms to header
Basic casts should not be function calls. Signed-off-by: Joshua Ashton <joshua@froggi.es>
This commit is contained in:
parent
875fbe5f50
commit
7c993ae1a6
|
@ -7180,7 +7180,7 @@ static void STDMETHODCALLTYPE d3d12_command_list_SetComputeRootSignature(d3d12_c
|
|||
TRACE("iface %p, root_signature %p.\n", iface, root_signature);
|
||||
|
||||
d3d12_command_list_set_root_signature(list, VK_PIPELINE_BIND_POINT_COMPUTE,
|
||||
unsafe_impl_from_ID3D12RootSignature(root_signature));
|
||||
impl_from_ID3D12RootSignature(root_signature));
|
||||
}
|
||||
|
||||
static void STDMETHODCALLTYPE d3d12_command_list_SetGraphicsRootSignature(d3d12_command_list_iface *iface,
|
||||
|
@ -7191,7 +7191,7 @@ static void STDMETHODCALLTYPE d3d12_command_list_SetGraphicsRootSignature(d3d12_
|
|||
TRACE("iface %p, root_signature %p.\n", iface, root_signature);
|
||||
|
||||
d3d12_command_list_set_root_signature(list, VK_PIPELINE_BIND_POINT_GRAPHICS,
|
||||
unsafe_impl_from_ID3D12RootSignature(root_signature));
|
||||
impl_from_ID3D12RootSignature(root_signature));
|
||||
}
|
||||
|
||||
static void d3d12_command_list_set_descriptor_table(struct d3d12_command_list *list,
|
||||
|
|
|
@ -530,7 +530,7 @@ static HRESULT d3d12_state_object_parse_subobjects(struct d3d12_state_object *ob
|
|||
{
|
||||
data->associations[data->associations_count].export = association->pExports[j];
|
||||
data->associations[data->associations_count].root_signature =
|
||||
unsafe_impl_from_ID3D12RootSignature(local_rs->pLocalRootSignature);
|
||||
impl_from_ID3D12RootSignature(local_rs->pLocalRootSignature);
|
||||
data->associations_count++;
|
||||
}
|
||||
}
|
||||
|
@ -766,9 +766,9 @@ static struct d3d12_root_signature *d3d12_state_object_pipeline_data_get_local_r
|
|||
}
|
||||
|
||||
if (data->high_priority_local_root_signature)
|
||||
return unsafe_impl_from_ID3D12RootSignature(data->high_priority_local_root_signature);
|
||||
return impl_from_ID3D12RootSignature(data->high_priority_local_root_signature);
|
||||
else if (data->low_priority_local_root_signature)
|
||||
return unsafe_impl_from_ID3D12RootSignature(data->low_priority_local_root_signature);
|
||||
return impl_from_ID3D12RootSignature(data->low_priority_local_root_signature);
|
||||
else
|
||||
return NULL;
|
||||
}
|
||||
|
@ -877,7 +877,7 @@ static HRESULT d3d12_state_object_compile_pipeline(struct d3d12_state_object *ob
|
|||
shader_interface_info.stage = VK_SHADER_STAGE_ALL;
|
||||
shader_interface_info.xfb_info = NULL;
|
||||
|
||||
global_signature = unsafe_impl_from_ID3D12RootSignature(data->global_root_signature);
|
||||
global_signature = impl_from_ID3D12RootSignature(data->global_root_signature);
|
||||
|
||||
if (global_signature)
|
||||
{
|
||||
|
|
|
@ -25,11 +25,6 @@
|
|||
#include <stdio.h>
|
||||
|
||||
/* ID3D12RootSignature */
|
||||
static inline struct d3d12_root_signature *impl_from_ID3D12RootSignature(ID3D12RootSignature *iface)
|
||||
{
|
||||
return CONTAINING_RECORD(iface, struct d3d12_root_signature, ID3D12RootSignature_iface);
|
||||
}
|
||||
|
||||
static HRESULT STDMETHODCALLTYPE d3d12_root_signature_QueryInterface(ID3D12RootSignature *iface,
|
||||
REFIID riid, void **object)
|
||||
{
|
||||
|
@ -142,7 +137,7 @@ static HRESULT STDMETHODCALLTYPE d3d12_root_signature_GetDevice(ID3D12RootSignat
|
|||
return d3d12_device_query_interface(root_signature->device, iid, device);
|
||||
}
|
||||
|
||||
static CONST_VTBL struct ID3D12RootSignatureVtbl d3d12_root_signature_vtbl =
|
||||
CONST_VTBL struct ID3D12RootSignatureVtbl d3d12_root_signature_vtbl =
|
||||
{
|
||||
/* IUnknown methods */
|
||||
d3d12_root_signature_QueryInterface,
|
||||
|
@ -157,14 +152,6 @@ static CONST_VTBL struct ID3D12RootSignatureVtbl d3d12_root_signature_vtbl =
|
|||
d3d12_root_signature_GetDevice,
|
||||
};
|
||||
|
||||
struct d3d12_root_signature *unsafe_impl_from_ID3D12RootSignature(ID3D12RootSignature *iface)
|
||||
{
|
||||
if (!iface)
|
||||
return NULL;
|
||||
assert(iface->lpVtbl == &d3d12_root_signature_vtbl);
|
||||
return impl_from_ID3D12RootSignature(iface);
|
||||
}
|
||||
|
||||
static VkShaderStageFlags stage_flags_from_visibility(D3D12_SHADER_VISIBILITY visibility)
|
||||
{
|
||||
switch (visibility)
|
||||
|
@ -2206,9 +2193,9 @@ static HRESULT d3d12_pipeline_state_init_compute(struct d3d12_pipeline_state *st
|
|||
state->refcount = 1;
|
||||
|
||||
if (desc->root_signature)
|
||||
root_signature = unsafe_impl_from_ID3D12RootSignature(desc->root_signature);
|
||||
root_signature = impl_from_ID3D12RootSignature(desc->root_signature);
|
||||
else
|
||||
root_signature = unsafe_impl_from_ID3D12RootSignature(state->private_root_signature);
|
||||
root_signature = impl_from_ID3D12RootSignature(state->private_root_signature);
|
||||
|
||||
shader_interface.flags = d3d12_root_signature_get_shader_interface_flags(root_signature);
|
||||
shader_interface.min_ssbo_alignment = d3d12_device_get_ssbo_alignment(device);
|
||||
|
@ -3034,9 +3021,9 @@ static HRESULT d3d12_pipeline_state_init_graphics(struct d3d12_pipeline_state *s
|
|||
}
|
||||
|
||||
if (desc->root_signature)
|
||||
root_signature = unsafe_impl_from_ID3D12RootSignature(desc->root_signature);
|
||||
root_signature = impl_from_ID3D12RootSignature(desc->root_signature);
|
||||
else
|
||||
root_signature = unsafe_impl_from_ID3D12RootSignature(state->private_root_signature);
|
||||
root_signature = impl_from_ID3D12RootSignature(state->private_root_signature);
|
||||
|
||||
sample_count = vk_samples_from_dxgi_sample_desc(&desc->sample_desc);
|
||||
if (desc->sample_desc.Count != 1 && desc->sample_desc.Quality)
|
||||
|
|
|
@ -1344,7 +1344,16 @@ struct d3d12_root_signature
|
|||
|
||||
HRESULT d3d12_root_signature_create(struct d3d12_device *device, const void *bytecode,
|
||||
size_t bytecode_length, struct d3d12_root_signature **root_signature);
|
||||
struct d3d12_root_signature *unsafe_impl_from_ID3D12RootSignature(ID3D12RootSignature *iface);
|
||||
|
||||
static inline struct d3d12_root_signature *impl_from_ID3D12RootSignature(ID3D12RootSignature *iface)
|
||||
{
|
||||
extern CONST_VTBL struct ID3D12RootSignatureVtbl d3d12_root_signature_vtbl;
|
||||
if (!iface)
|
||||
return NULL;
|
||||
assert(iface->lpVtbl == &d3d12_root_signature_vtbl);
|
||||
return CONTAINING_RECORD(iface, struct d3d12_root_signature, ID3D12RootSignature_iface);
|
||||
}
|
||||
|
||||
unsigned int d3d12_root_signature_get_shader_interface_flags(const struct d3d12_root_signature *root_signature);
|
||||
|
||||
int vkd3d_parse_root_signature_v_1_0(const struct vkd3d_shader_code *dxbc,
|
||||
|
|
Loading…
Reference in New Issue