Commit 9e34b8b0 authored by Jacek Caban's avatar Jacek Caban Committed by Alexandre Julliard

winevulkan: Implement Vulkan entry points as wrappers around unix_funcs.

parent c7eeeb01
......@@ -5,6 +5,7 @@ EXTRALIBS = $(PTHREAD_LIBS)
C_SRCS = \
loader.c \
loader_thunks.c \
vulkan.c \
vulkan_thunks.c
......
......@@ -351,7 +351,7 @@ void WINAPI wine_vkGetPhysicalDeviceProperties2(VkPhysicalDevice phys_dev,
{
TRACE("%p, %p\n", phys_dev, properties2);
thunk_vkGetPhysicalDeviceProperties2(phys_dev, properties2);
unix_funcs->p_vkGetPhysicalDeviceProperties2(phys_dev, properties2);
fill_luid_property(properties2);
}
......@@ -360,7 +360,7 @@ void WINAPI wine_vkGetPhysicalDeviceProperties2KHR(VkPhysicalDevice phys_dev,
{
TRACE("%p, %p\n", phys_dev, properties2);
thunk_vkGetPhysicalDeviceProperties2KHR(phys_dev, properties2);
unix_funcs->p_vkGetPhysicalDeviceProperties2KHR(phys_dev, properties2);
fill_luid_property(properties2);
}
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -401,4 +401,14 @@ struct unix_funcs
VkResult (WINAPI *p_vkWriteAccelerationStructuresPropertiesKHR)(VkDevice, uint32_t, const VkAccelerationStructureKHR *, VkQueryType, size_t, void *, size_t);
};
/* Functions for which we have custom implementations outside of the thunks. */
VkResult WINAPI wine_vkCreateInstance(const VkInstanceCreateInfo *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkInstance *pInstance);
VkResult WINAPI wine_vkEnumerateInstanceExtensionProperties(const char *pLayerName, uint32_t *pPropertyCount, VkExtensionProperties *pProperties);
VkResult WINAPI wine_vkEnumerateInstanceLayerProperties(uint32_t *pPropertyCount, VkLayerProperties *pProperties);
VkResult WINAPI wine_vkEnumerateInstanceVersion(uint32_t *pApiVersion);
PFN_vkVoidFunction WINAPI wine_vkGetDeviceProcAddr(VkDevice device, const char *pName);
PFN_vkVoidFunction WINAPI wine_vkGetInstanceProcAddr(VkInstance instance, const char *pName);
void WINAPI wine_vkGetPhysicalDeviceProperties2(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties2 *pProperties);
void WINAPI wine_vkGetPhysicalDeviceProperties2KHR(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties2 *pProperties);
#endif /* __WINE_VULKAN_LOADER_THUNKS_H */
......@@ -247,13 +247,8 @@ BOOL wine_vk_is_type_wrapped(VkObjectType type) DECLSPEC_HIDDEN;
uint64_t wine_vk_unwrap_handle(VkObjectType type, uint64_t handle) DECLSPEC_HIDDEN;
extern const struct unix_funcs loader_funcs;
extern const struct unix_funcs *unix_funcs;
const struct unix_funcs *unix_vk_init(const struct vulkan_funcs *driver) DECLSPEC_HIDDEN;
VkResult WINAPI unix_vkCreateInstance(const VkInstanceCreateInfo *create_info,
const VkAllocationCallbacks *allocator, VkInstance *instance) DECLSPEC_HIDDEN;
VkResult WINAPI unix_vkEnumerateInstanceExtensionProperties(const char *layer_name,
uint32_t *count, VkExtensionProperties *properties) DECLSPEC_HIDDEN;
VkResult WINAPI unix_vkEnumerateInstanceVersion(uint32_t *version) DECLSPEC_HIDDEN;
#endif /* __WINE_VULKAN_PRIVATE_H */
This source diff could not be displayed because it is too large. You can view the blob instead.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment