mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2025-04-13 05:43:18 -07:00
vkd3d: Add ID3D12Device8 interface stubs.
This commit is contained in:
parent
172e7edf2d
commit
7d2c274b9b
Notes:
Alexandre Julliard
2024-03-08 23:47:57 +01:00
Approved-by: Henri Verbeet (@hverbeet) Approved-by: Alexandre Julliard (@julliard) Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/683
File diff suppressed because it is too large
Load Diff
@ -2253,7 +2253,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_ID3D12Device7((ID3D12Device7 *)device);
|
||||
struct d3d12_device *d3d12_device = unsafe_impl_from_ID3D12Device8((ID3D12Device8 *)device);
|
||||
struct d3d12_resource *object;
|
||||
HRESULT hr;
|
||||
|
||||
|
@ -71,11 +71,11 @@ HRESULT vkd3d_create_device(const struct vkd3d_device_create_info *create_info,
|
||||
|
||||
if (!device)
|
||||
{
|
||||
ID3D12Device_Release(&object->ID3D12Device7_iface);
|
||||
ID3D12Device_Release(&object->ID3D12Device8_iface);
|
||||
return S_FALSE;
|
||||
}
|
||||
|
||||
return return_interface(&object->ID3D12Device7_iface, &IID_ID3D12Device, iid, device);
|
||||
return return_interface(&object->ID3D12Device8_iface, &IID_ID3D12Device, iid, device);
|
||||
}
|
||||
|
||||
/* ID3D12RootSignatureDeserializer */
|
||||
|
@ -1735,7 +1735,7 @@ struct vkd3d_desc_object_cache
|
||||
/* ID3D12Device */
|
||||
struct d3d12_device
|
||||
{
|
||||
ID3D12Device7 ID3D12Device7_iface;
|
||||
ID3D12Device8 ID3D12Device8_iface;
|
||||
unsigned int refcount;
|
||||
|
||||
VkDevice vk_device;
|
||||
@ -1810,29 +1810,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_ID3D12Device7(ID3D12Device7 *iface);
|
||||
struct d3d12_device *unsafe_impl_from_ID3D12Device8(ID3D12Device8 *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 ID3D12Device7_QueryInterface(&device->ID3D12Device7_iface, iid, object);
|
||||
return ID3D12Device8_QueryInterface(&device->ID3D12Device8_iface, iid, object);
|
||||
}
|
||||
|
||||
static inline ULONG d3d12_device_add_ref(struct d3d12_device *device)
|
||||
{
|
||||
return ID3D12Device7_AddRef(&device->ID3D12Device7_iface);
|
||||
return ID3D12Device8_AddRef(&device->ID3D12Device8_iface);
|
||||
}
|
||||
|
||||
static inline ULONG d3d12_device_release(struct d3d12_device *device)
|
||||
{
|
||||
return ID3D12Device7_Release(&device->ID3D12Device7_iface);
|
||||
return ID3D12Device8_Release(&device->ID3D12Device8_iface);
|
||||
}
|
||||
|
||||
static inline unsigned int d3d12_device_get_descriptor_handle_increment_size(struct d3d12_device *device,
|
||||
D3D12_DESCRIPTOR_HEAP_TYPE descriptor_type)
|
||||
{
|
||||
return ID3D12Device7_GetDescriptorHandleIncrementSize(&device->ID3D12Device7_iface, descriptor_type);
|
||||
return ID3D12Device8_GetDescriptorHandleIncrementSize(&device->ID3D12Device8_iface, descriptor_type);
|
||||
}
|
||||
|
||||
/* utils */
|
||||
|
Loading…
x
Reference in New Issue
Block a user