vkd3d: Add ID3D12Device6 interface stub.

This commit is contained in:
Conor McCarthy 2023-06-07 14:35:36 +10:00 committed by Alexandre Julliard
parent 95e4222cc6
commit 76fbbe980a
Notes: Alexandre Julliard 2024-02-01 23:07:43 +01:00
Approved-by: Henri Verbeet (@hverbeet)
Approved-by: Alexandre Julliard (@julliard)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/617
4 changed files with 139 additions and 126 deletions

File diff suppressed because it is too large Load Diff

View File

@ -2239,7 +2239,7 @@ HRESULT d3d12_reserved_resource_create(struct d3d12_device *device,
HRESULT vkd3d_create_image_resource(ID3D12Device *device,
const struct vkd3d_image_resource_create_info *create_info, ID3D12Resource **resource)
{
struct d3d12_device *d3d12_device = unsafe_impl_from_ID3D12Device5((ID3D12Device5 *)device);
struct d3d12_device *d3d12_device = unsafe_impl_from_ID3D12Device6((ID3D12Device6 *)device);
struct d3d12_resource *object;
HRESULT hr;

View File

@ -71,11 +71,11 @@ HRESULT vkd3d_create_device(const struct vkd3d_device_create_info *create_info,
if (!device)
{
ID3D12Device_Release(&object->ID3D12Device5_iface);
ID3D12Device_Release(&object->ID3D12Device6_iface);
return S_FALSE;
}
return return_interface(&object->ID3D12Device5_iface, &IID_ID3D12Device, iid, device);
return return_interface(&object->ID3D12Device6_iface, &IID_ID3D12Device, iid, device);
}
/* ID3D12RootSignatureDeserializer */

View File

@ -1748,7 +1748,7 @@ struct vkd3d_desc_object_cache
/* ID3D12Device */
struct d3d12_device
{
ID3D12Device5 ID3D12Device5_iface;
ID3D12Device6 ID3D12Device6_iface;
unsigned int refcount;
VkDevice vk_device;
@ -1823,29 +1823,29 @@ struct vkd3d_queue *d3d12_device_get_vkd3d_queue(struct d3d12_device *device, D3
bool d3d12_device_is_uma(struct d3d12_device *device, bool *coherent);
void d3d12_device_mark_as_removed(struct d3d12_device *device, HRESULT reason,
const char *message, ...) VKD3D_PRINTF_FUNC(3, 4);
struct d3d12_device *unsafe_impl_from_ID3D12Device5(ID3D12Device5 *iface);
struct d3d12_device *unsafe_impl_from_ID3D12Device6(ID3D12Device6 *iface);
HRESULT d3d12_device_add_descriptor_heap(struct d3d12_device *device, struct d3d12_descriptor_heap *heap);
void d3d12_device_remove_descriptor_heap(struct d3d12_device *device, struct d3d12_descriptor_heap *heap);
static inline HRESULT d3d12_device_query_interface(struct d3d12_device *device, REFIID iid, void **object)
{
return ID3D12Device5_QueryInterface(&device->ID3D12Device5_iface, iid, object);
return ID3D12Device6_QueryInterface(&device->ID3D12Device6_iface, iid, object);
}
static inline ULONG d3d12_device_add_ref(struct d3d12_device *device)
{
return ID3D12Device5_AddRef(&device->ID3D12Device5_iface);
return ID3D12Device6_AddRef(&device->ID3D12Device6_iface);
}
static inline ULONG d3d12_device_release(struct d3d12_device *device)
{
return ID3D12Device5_Release(&device->ID3D12Device5_iface);
return ID3D12Device6_Release(&device->ID3D12Device6_iface);
}
static inline unsigned int d3d12_device_get_descriptor_handle_increment_size(struct d3d12_device *device,
D3D12_DESCRIPTOR_HEAP_TYPE descriptor_type)
{
return ID3D12Device5_GetDescriptorHandleIncrementSize(&device->ID3D12Device5_iface, descriptor_type);
return ID3D12Device6_GetDescriptorHandleIncrementSize(&device->ID3D12Device6_iface, descriptor_type);
}
/* utils */