Realm

vk · Functions · F1

4 public declarations with native signatures and source-owned contracts.

FnRustExperimental

Fnvk::flush_mapped_memory_ranges

pub unsafe fn flush_mapped_memory_ranges( device: &Device, ranges: &[MappedMemoryRange<'_>], ) -> Result<(), CallError>
Flush mapped memory ranges to make host writes visible to the device.

Contract

Flush mapped memory ranges to make host writes visible to the device.

Required for non-host-coherent memory types before GPU reads.

Safety

All ranges must be within currently mapped memory objects.

Khronos reference: vkFlushMappedMemoryRanges

Fnvk::free_command_buffers

Contract

Free command buffers back to their pool.

Safety

All buffers must have finished execution on the GPU.

Khronos reference: vkFreeCommandBuffers

Fnvk::free_descriptor_sets

pub unsafe fn free_descriptor_sets( device: &Device, descriptor_pool: DescriptorPool, descriptor_sets: &[DescriptorSet], ) -> Result<(), CallError>
Call vkFreeDescriptorSets using this context’s cached function pointer.

Contract

Call vkFreeDescriptorSets using this context’s cached function pointer.

Errors

Reports a missing command, invalid slice lengths/counts or a native error.

Safety

The context and all handles must be live and belong to the same Vulkan implementation/device. Meet vkFreeDescriptorSets valid usage, enabled API/extension/feature, pointer-chain lifetime, callback compatibility and host/GPU synchronization requirements. Native resources require explicit destruction after completion.

Khronos reference: vkFreeDescriptorSets

Fnvk::free_memory

Contract

Free a previously allocated device memory object.

Safety

All resources bound to this memory must have been destroyed. The memory must not be freed more than once.

Khronos reference: vkFreeMemory