Module Sarek_vulkan.Vulkan_bindings

Library Loading

val vulkan_lib : Dl.library option Stdlib.Lazy.t

Load Vulkan library dynamically (lazy)

val is_available : unit -> bool

Check if Vulkan library is available

val get_vulkan_lib : unit -> Dl.library

Get Vulkan library, raising if not available

val foreign_vk_lazy : string -> ('a -> 'b) Ctypes.fn -> ('a -> 'b) lazy_t

Create a lazy foreign binding to Vulkan API

Instance Functions

val vkCreateInstance_lazy : (Vulkan_types.vk_instance_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_instance Ctypes.structure Ctypes_static.ptr Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkCreateInstance : Vulkan_types.vk_instance_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_instance Ctypes.structure Ctypes_static.ptr Ctypes_static.ptr -> Vulkan_types.vk_result
val vkDestroyInstance_lazy : (Vulkan_types.vk_instance Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> unit) lazy_t
val vkDestroyInstance : Vulkan_types.vk_instance Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> unit
val vkEnumeratePhysicalDevices_lazy : (Vulkan_types.vk_instance Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 Ctypes_static.ptr -> Vulkan_types.vk_physical_device Ctypes.structure Ctypes_static.ptr Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkEnumeratePhysicalDevices : Vulkan_types.vk_instance Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 Ctypes_static.ptr -> Vulkan_types.vk_physical_device Ctypes.structure Ctypes_static.ptr Ctypes_static.ptr -> Vulkan_types.vk_result

Physical Device Functions

val vkGetPhysicalDeviceProperties_lazy : (Vulkan_types.vk_physical_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_physical_device_properties Ctypes.structure Ctypes_static.ptr -> unit) lazy_t
val vkGetPhysicalDeviceProperties : Vulkan_types.vk_physical_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_physical_device_properties Ctypes.structure Ctypes_static.ptr -> unit
val vkGetPhysicalDeviceQueueFamilyProperties_lazy : (Vulkan_types.vk_physical_device Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 Ctypes_static.ptr -> Vulkan_types.vk_queue_family_properties Ctypes.structure Ctypes_static.ptr -> unit) lazy_t
val vkGetPhysicalDeviceQueueFamilyProperties : Vulkan_types.vk_physical_device Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 Ctypes_static.ptr -> Vulkan_types.vk_queue_family_properties Ctypes.structure Ctypes_static.ptr -> unit
val vkGetPhysicalDeviceMemoryProperties_lazy : (Vulkan_types.vk_physical_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_physical_device_memory_properties Ctypes.structure Ctypes_static.ptr -> unit) lazy_t
val vkGetPhysicalDeviceMemoryProperties : Vulkan_types.vk_physical_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_physical_device_memory_properties Ctypes.structure Ctypes_static.ptr -> unit

Device Functions

val vkCreateDevice_lazy : (Vulkan_types.vk_physical_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_device_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkCreateDevice : Vulkan_types.vk_physical_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_device_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr Ctypes_static.ptr -> Vulkan_types.vk_result
val vkDestroyDevice_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> unit) lazy_t
val vkDestroyDevice : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> unit
val vkGetDeviceQueue_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> Unsigned.uint32 -> Vulkan_types.vk_queue Ctypes.structure Ctypes_static.ptr Ctypes_static.ptr -> unit) lazy_t
val vkGetDeviceQueue : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> Unsigned.uint32 -> Vulkan_types.vk_queue Ctypes.structure Ctypes_static.ptr Ctypes_static.ptr -> unit
val vkDeviceWaitIdle_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkDeviceWaitIdle : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_result

Memory Functions

val vkAllocateMemory_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_memory_allocate_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_device_memory Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkAllocateMemory : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_memory_allocate_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_device_memory Ctypes_static.ptr -> Vulkan_types.vk_result
val vkFreeMemory_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_device_memory -> unit Ctypes_static.ptr -> unit) lazy_t
val vkFreeMemory : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_device_memory -> unit Ctypes_static.ptr -> unit
val vkMapMemory_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_device_memory -> Vulkan_types.vk_device_size -> Vulkan_types.vk_device_size -> Vulkan_types.vk_flags -> unit Ctypes_static.ptr Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkMapMemory : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_device_memory -> Vulkan_types.vk_device_size -> Vulkan_types.vk_device_size -> Vulkan_types.vk_flags -> unit Ctypes_static.ptr Ctypes_static.ptr -> Vulkan_types.vk_result
val vkUnmapMemory_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_device_memory -> unit) lazy_t
val vkUnmapMemory : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_device_memory -> unit

Buffer Functions

val vkCreateBuffer_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_buffer_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_buffer Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkCreateBuffer : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_buffer_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_buffer Ctypes_static.ptr -> Vulkan_types.vk_result
val vkDestroyBuffer_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_buffer -> unit Ctypes_static.ptr -> unit) lazy_t
val vkDestroyBuffer : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_buffer -> unit Ctypes_static.ptr -> unit
val vkGetBufferMemoryRequirements_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_buffer -> Vulkan_types.vk_memory_requirements Ctypes.structure Ctypes_static.ptr -> unit) lazy_t
val vkGetBufferMemoryRequirements : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_buffer -> Vulkan_types.vk_memory_requirements Ctypes.structure Ctypes_static.ptr -> unit
val vkBindBufferMemory_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_buffer -> Vulkan_types.vk_device_memory -> Vulkan_types.vk_device_size -> Vulkan_types.vk_result) lazy_t

Shader Module Functions

val vkCreateShaderModule_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_shader_module_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_shader_module Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkCreateShaderModule : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_shader_module_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_shader_module Ctypes_static.ptr -> Vulkan_types.vk_result
val vkDestroyShaderModule_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_shader_module -> unit Ctypes_static.ptr -> unit) lazy_t
val vkDestroyShaderModule : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_shader_module -> unit Ctypes_static.ptr -> unit

Pipeline Functions

val vkCreateComputePipelines_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_pipeline_cache -> Unsigned.uint32 -> Vulkan_types.vk_compute_pipeline_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_pipeline Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkCreateComputePipelines : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_pipeline_cache -> Unsigned.uint32 -> Vulkan_types.vk_compute_pipeline_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_pipeline Ctypes_static.ptr -> Vulkan_types.vk_result
val vkDestroyPipeline_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_pipeline -> unit Ctypes_static.ptr -> unit) lazy_t
val vkDestroyPipeline : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_pipeline -> unit Ctypes_static.ptr -> unit
val vkCreatePipelineLayout_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_pipeline_layout_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_pipeline_layout Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkCreatePipelineLayout : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_pipeline_layout_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_pipeline_layout Ctypes_static.ptr -> Vulkan_types.vk_result
val vkDestroyPipelineLayout_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_pipeline_layout -> unit Ctypes_static.ptr -> unit) lazy_t
val vkDestroyPipelineLayout : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_pipeline_layout -> unit Ctypes_static.ptr -> unit

Descriptor Functions

val vkCreateDescriptorSetLayout_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_descriptor_set_layout_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_descriptor_set_layout Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkCreateDescriptorSetLayout : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_descriptor_set_layout_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_descriptor_set_layout Ctypes_static.ptr -> Vulkan_types.vk_result
val vkDestroyDescriptorSetLayout_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_descriptor_set_layout -> unit Ctypes_static.ptr -> unit) lazy_t
val vkDestroyDescriptorSetLayout : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_descriptor_set_layout -> unit Ctypes_static.ptr -> unit
val vkCreateDescriptorPool_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_descriptor_pool_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_descriptor_pool Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkCreateDescriptorPool : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_descriptor_pool_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_descriptor_pool Ctypes_static.ptr -> Vulkan_types.vk_result
val vkDestroyDescriptorPool_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_descriptor_pool -> unit Ctypes_static.ptr -> unit) lazy_t
val vkDestroyDescriptorPool : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_descriptor_pool -> unit Ctypes_static.ptr -> unit
val vkAllocateDescriptorSets_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_descriptor_set_allocate_info Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_descriptor_set Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkAllocateDescriptorSets : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_descriptor_set_allocate_info Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_descriptor_set Ctypes_static.ptr -> Vulkan_types.vk_result
val vkUpdateDescriptorSets_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> Vulkan_types.vk_write_descriptor_set Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> unit Ctypes_static.ptr -> unit) lazy_t
val vkUpdateDescriptorSets : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> Vulkan_types.vk_write_descriptor_set Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> unit Ctypes_static.ptr -> unit

Command Pool/Buffer Functions

val vkCreateCommandPool_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_command_pool_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_command_pool Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkCreateCommandPool : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_command_pool_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_command_pool Ctypes_static.ptr -> Vulkan_types.vk_result
val vkDestroyCommandPool_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_command_pool -> unit Ctypes_static.ptr -> unit) lazy_t
val vkDestroyCommandPool : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_command_pool -> unit Ctypes_static.ptr -> unit
val vkAllocateCommandBuffers_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_command_buffer_allocate_info Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkAllocateCommandBuffers : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_command_buffer_allocate_info Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr Ctypes_static.ptr -> Vulkan_types.vk_result
val vkBeginCommandBuffer_lazy : (Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_command_buffer_begin_info Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkBeginCommandBuffer : Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_command_buffer_begin_info Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_result
val vkEndCommandBuffer_lazy : (Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkEndCommandBuffer : Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_result
val vkResetCommandBuffer_lazy : (Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_flags -> Vulkan_types.vk_result) lazy_t
val vkResetCommandBuffer : Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_flags -> Vulkan_types.vk_result

Command Recording Functions

val vkCmdBindPipeline_lazy : (Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> Vulkan_types.vk_pipeline -> unit) lazy_t
val vkCmdBindPipeline : Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> Vulkan_types.vk_pipeline -> unit
val vkCmdBindDescriptorSets_lazy : (Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> Vulkan_types.vk_pipeline_layout -> Unsigned.uint32 -> Unsigned.uint32 -> Vulkan_types.vk_descriptor_set Ctypes_static.ptr -> Unsigned.uint32 -> Unsigned.uint32 Ctypes_static.ptr -> unit) lazy_t
val vkCmdBindDescriptorSets : Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> Vulkan_types.vk_pipeline_layout -> Unsigned.uint32 -> Unsigned.uint32 -> Vulkan_types.vk_descriptor_set Ctypes_static.ptr -> Unsigned.uint32 -> Unsigned.uint32 Ctypes_static.ptr -> unit
val vkCmdPushConstants_lazy : (Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_pipeline_layout -> Unsigned.uint32 -> Unsigned.uint32 -> Unsigned.uint32 -> unit Ctypes_static.ptr -> unit) lazy_t
val vkCmdPushConstants : Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_pipeline_layout -> Unsigned.uint32 -> Unsigned.uint32 -> Unsigned.uint32 -> unit Ctypes_static.ptr -> unit
val vkCmdDispatch_lazy : (Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> Unsigned.uint32 -> Unsigned.uint32 -> unit) lazy_t
val vkCmdDispatch : Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> Unsigned.uint32 -> Unsigned.uint32 -> unit
val vkCmdFillBuffer_lazy : (Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_buffer -> Vulkan_types.vk_device_size -> Vulkan_types.vk_device_size -> Unsigned.uint32 -> unit) lazy_t
val vkCmdFillBuffer : Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_buffer -> Vulkan_types.vk_device_size -> Vulkan_types.vk_device_size -> Unsigned.uint32 -> unit
val vkCmdPipelineBarrier_lazy : (Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_flags -> Vulkan_types.vk_flags -> Vulkan_types.vk_flags -> Unsigned.uint32 -> unit Ctypes_static.ptr -> Unsigned.uint32 -> Vulkan_types.vk_buffer_memory_barrier Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> unit Ctypes_static.ptr -> unit) lazy_t
val vkCmdPipelineBarrier : Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_flags -> Vulkan_types.vk_flags -> Vulkan_types.vk_flags -> Unsigned.uint32 -> unit Ctypes_static.ptr -> Unsigned.uint32 -> Vulkan_types.vk_buffer_memory_barrier Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> unit Ctypes_static.ptr -> unit
val vkCmdCopyBuffer_lazy : (Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_buffer -> Vulkan_types.vk_buffer -> Unsigned.uint32 -> unit Ctypes_static.ptr -> unit) lazy_t
val vkCmdCopyBuffer : Vulkan_types.vk_command_buffer Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_buffer -> Vulkan_types.vk_buffer -> Unsigned.uint32 -> unit Ctypes_static.ptr -> unit

Fence Functions

val vkCreateFence_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_fence_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_fence Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkCreateFence : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_fence_create_info Ctypes.structure Ctypes_static.ptr -> unit Ctypes_static.ptr -> Vulkan_types.vk_fence Ctypes_static.ptr -> Vulkan_types.vk_result
val vkDestroyFence_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_fence -> unit Ctypes_static.ptr -> unit) lazy_t
val vkDestroyFence : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_fence -> unit Ctypes_static.ptr -> unit
val vkWaitForFences_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> Vulkan_types.vk_fence Ctypes_static.ptr -> Vulkan_types.vk_bool32 -> Unsigned.uint64 -> Vulkan_types.vk_result) lazy_t
val vkWaitForFences : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> Vulkan_types.vk_fence Ctypes_static.ptr -> Vulkan_types.vk_bool32 -> Unsigned.uint64 -> Vulkan_types.vk_result
val vkResetFences_lazy : (Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> Vulkan_types.vk_fence Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkResetFences : Vulkan_types.vk_device Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> Vulkan_types.vk_fence Ctypes_static.ptr -> Vulkan_types.vk_result

Queue Functions

val vkQueueSubmit_lazy : (Vulkan_types.vk_queue Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> Vulkan_types.vk_submit_info Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_fence -> Vulkan_types.vk_result) lazy_t
val vkQueueSubmit : Vulkan_types.vk_queue Ctypes.structure Ctypes_static.ptr -> Unsigned.uint32 -> Vulkan_types.vk_submit_info Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_fence -> Vulkan_types.vk_result
val vkQueueWaitIdle_lazy : (Vulkan_types.vk_queue Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_result) lazy_t
val vkQueueWaitIdle : Vulkan_types.vk_queue Ctypes.structure Ctypes_static.ptr -> Vulkan_types.vk_result

Version Query

val vkEnumerateInstanceVersion_lazy : (Unsigned.uint32 Ctypes_static.ptr -> Vulkan_types.vk_result) option lazy_t
val vkEnumerateInstanceVersion : Unsigned.uint32 Ctypes_static.ptr -> Vulkan_types.vk_result