Module Vulkan.Memory

type 'a buffer = 'a Vulkan_api.Memory.buffer
val alloc : Sarek_vulkan__Vulkan_api.Device.t -> int -> ('a, 'b) Stdlib.Bigarray.kind -> 'c Vulkan_api.Memory.buffer
val alloc_custom : Sarek_vulkan__Vulkan_api.Device.t -> size:int -> elem_size:int -> 'a Vulkan_api.Memory.buffer
val alloc_zero_copy : 'a -> 'b -> 'c -> 'd option
val free : 'a Vulkan_api.Memory.buffer -> unit
val host_to_device : src:('a, 'b, 'c) Stdlib.Bigarray.Array1.t -> dst:'d Vulkan_api.Memory.buffer -> unit
val device_to_host : src:'a Vulkan_api.Memory.buffer -> dst:('b, 'c, 'd) Stdlib.Bigarray.Array1.t -> unit
val host_ptr_to_device : src_ptr:unit Ctypes_static.ptr -> byte_size:int -> dst:'a Vulkan_api.Memory.buffer -> unit
val device_to_host_ptr : src:'a Vulkan_api.Memory.buffer -> dst_ptr:unit Ctypes_static.ptr -> byte_size:int -> unit
val device_to_device : src:'a -> dst:'b -> 'c
val size : 'a Vulkan_api.Memory.buffer -> int
val device_ptr : 'a -> nativeint
val is_zero_copy : 'a -> bool