23 #ifndef LIBRETRO_VULKAN_H__ 24 #define LIBRETRO_VULKAN_H__ 29 #define RETRO_HW_RENDER_INTERFACE_VULKAN_VERSION 5 30 #define RETRO_HW_RENDER_CONTEXT_NEGOTIATION_INTERFACE_VULKAN_VERSION 1 42 const VkSemaphore *semaphores,
49 const VkCommandBuffer *
cmd);
73 const char **required_device_extensions,
74 unsigned num_required_device_extensions,
75 const char **required_device_layers,
76 unsigned num_required_device_layers,
retro_vulkan_get_sync_index_t get_sync_index
Definition: libretro_vulkan.h:326
VkImageLayout image_layout
Definition: libretro_vulkan.h:35
retro_vulkan_set_image_t set_image
Definition: libretro_vulkan.h:292
retro_vulkan_set_signal_semaphore_t set_signal_semaphore
Definition: libretro_vulkan.h:394
PFN_vkVoidFunction(VKAPI_PTR * PFN_vkGetDeviceProcAddr)(VkDevice device, const char *pName)
Definition: vulkan_core.h:2731
PFN_vkGetInstanceProcAddr get_instance_proc_addr
Definition: libretro_vulkan.h:170
unsigned interface_version
Definition: libretro_vulkan.h:93
VkPhysicalDevice gpu
Definition: libretro_vulkan.h:163
void(* retro_vulkan_set_command_buffers_t)(void *handle, uint32_t num_cmd, const VkCommandBuffer *cmd)
Definition: libretro_vulkan.h:47
retro_vulkan_create_device_t create_device
Definition: libretro_vulkan.h:125
VkInstance instance
Definition: libretro_vulkan.h:161
void(* retro_vulkan_set_image_t)(void *handle, const struct retro_vulkan_image *image, uint32_t num_semaphores, const VkSemaphore *semaphores, uint32_t src_queue_family)
Definition: libretro_vulkan.h:39
PFN_vkGetDeviceProcAddr get_device_proc_addr
Definition: libretro_vulkan.h:169
typedef void(__stdcall *PFN_DESTRUCTION_CALLBACK)(void *pData)
unsigned queue_index
Definition: libretro_vulkan.h:180
typedef bool(RETRO_CALLCONV *retro_replace_image_index_t)(unsigned index
retro_hw_render_interface_type
Definition: libretro.h:1203
uint32_t(* retro_vulkan_get_sync_index_mask_t)(void *handle)
Definition: libretro_vulkan.h:46
VkQueue queue
Definition: libretro_vulkan.h:61
Definition: libretro_vulkan.h:139
VkImageViewCreateInfo create_info
Definition: libretro_vulkan.h:36
VkImageLayout
Definition: vulkan_core.h:798
uint32_t queue_family_index
Definition: libretro_vulkan.h:62
ubyte cmd
Definition: wiiuse_internal.h:319
VkPhysicalDevice gpu
Definition: libretro_vulkan.h:59
void(* retro_vulkan_lock_queue_t)(void *handle)
Definition: libretro_vulkan.h:51
retro_vulkan_get_application_info_t get_application_info
Definition: libretro_vulkan.h:98
VkImageView image_view
Definition: libretro_vulkan.h:34
Definition: vulkan_core.h:1674
void(* retro_vulkan_set_signal_semaphore_t)(void *handle, VkSemaphore semaphore)
Definition: libretro_vulkan.h:53
Definition: vulkan_core.h:1615
VkQueue queue
Definition: libretro_vulkan.h:179
GLenum GLsizei GLenum GLenum const GLvoid * image
Definition: glext.h:6305
Definition: libretro_vulkan.h:32
retro_hw_render_context_negotiation_interface_type
Definition: libretro.h:1257
uint32_t(* retro_vulkan_get_sync_index_t)(void *handle)
Definition: libretro_vulkan.h:45
void(* retro_vulkan_unlock_queue_t)(void *handle)
Definition: libretro_vulkan.h:52
retro_vulkan_wait_sync_index_t wait_sync_index
Definition: libretro_vulkan.h:371
VkQueue presentation_queue
Definition: libretro_vulkan.h:63
void(* retro_vulkan_destroy_device_t)(void)
Definition: libretro_vulkan.h:79
Definition: libretro_vulkan.h:88
enum retro_hw_render_interface_type interface_type
Definition: libretro_vulkan.h:142
VkDevice device
Definition: libretro_vulkan.h:60
bool(* retro_vulkan_create_device_t)(struct retro_vulkan_context *context, VkInstance instance, VkPhysicalDevice gpu, VkSurfaceKHR surface, PFN_vkGetInstanceProcAddr get_instance_proc_addr, const char **required_device_extensions, unsigned num_required_device_extensions, const char **required_device_layers, unsigned num_required_device_layers, const VkPhysicalDeviceFeatures *required_features)
Definition: libretro_vulkan.h:67
uint32_t presentation_queue_family_index
Definition: libretro_vulkan.h:64
enum retro_hw_render_context_negotiation_interface_type interface_type
Definition: libretro_vulkan.h:91
retro_vulkan_destroy_device_t destroy_device
Definition: libretro_vulkan.h:136
Definition: libretro_vulkan.h:57
const VkApplicationInfo *(* retro_vulkan_get_application_info_t)(void)
Definition: libretro_vulkan.h:55
retro_vulkan_set_command_buffers_t set_command_buffers
Definition: libretro_vulkan.h:366
unsigned interface_version
Definition: libretro_vulkan.h:144
Definition: vulkan_core.h:2138
retro_vulkan_unlock_queue_t unlock_queue
Definition: libretro_vulkan.h:383
void(* retro_vulkan_wait_sync_index_t)(void *handle)
Definition: libretro_vulkan.h:50
unsigned int uint32_t
Definition: stdint.h:126
retro_vulkan_lock_queue_t lock_queue
Definition: libretro_vulkan.h:382
retro_vulkan_get_sync_index_mask_t get_sync_index_mask
Definition: libretro_vulkan.h:343
void * handle
Definition: libretro_vulkan.h:158
PFN_vkVoidFunction(VKAPI_PTR * PFN_vkGetInstanceProcAddr)(VkInstance instance, const char *pName)
Definition: vulkan_core.h:2730
VkDevice device
Definition: libretro_vulkan.h:165