vk · Functions · C24
16 public declarations with native signatures and source-owned contracts.
Fnvk::create_indirect_commands_layout_ext
Contract
Call vkCreateIndirectCommandsLayoutEXT using this context’s cached function pointer.
Errors
Reports a missing command or a negative native VkResult; non-error results are preserved.
Safety
The context and all handles must be live and belong to the same Vulkan
implementation/device. Meet vkCreateIndirectCommandsLayoutEXT valid usage, enabled API/extension/feature,
pointer-chain lifetime, callback compatibility and host/GPU synchronization
requirements. Native resources require explicit destruction after completion.
Preserves native raw pointers, explicit counts, optional nulls and return values. The caller supplies correctly aligned live storage, initialized output-chain headers and every extent implied by native counts, strides or nested records. No allocation, retry, output initialization, ownership transfer or alias fallback occurs in this wrapper. Outputs, including partial outputs on native failure, remain caller-owned and must be inspected/cleaned up according to Vulkan.
Fnvk::create_indirect_commands_layout_nv
Contract
Call vkCreateIndirectCommandsLayoutNV using this context’s cached function pointer.
Errors
Reports a missing command or a negative native VkResult; non-error results are preserved.
Safety
The context and all handles must be live and belong to the same Vulkan
implementation/device. Meet vkCreateIndirectCommandsLayoutNV valid usage, enabled API/extension/feature,
pointer-chain lifetime, callback compatibility and host/GPU synchronization
requirements. Native resources require explicit destruction after completion.
Preserves native raw pointers, explicit counts, optional nulls and return values. The caller supplies correctly aligned live storage, initialized output-chain headers and every extent implied by native counts, strides or nested records. No allocation, retry, output initialization, ownership transfer or alias fallback occurs in this wrapper. Outputs, including partial outputs on native failure, remain caller-owned and must be inspected/cleaned up according to Vulkan.
Fnvk::create_indirect_execution_set_ext
Contract
Call vkCreateIndirectExecutionSetEXT using this context’s cached function pointer.
Errors
Reports a missing command or a negative native VkResult; non-error results are preserved.
Safety
The context and all handles must be live and belong to the same Vulkan
implementation/device. Meet vkCreateIndirectExecutionSetEXT valid usage, enabled API/extension/feature,
pointer-chain lifetime, callback compatibility and host/GPU synchronization
requirements. Native resources require explicit destruction after completion.
Preserves native raw pointers, explicit counts, optional nulls and return values. The caller supplies correctly aligned live storage, initialized output-chain headers and every extent implied by native counts, strides or nested records. No allocation, retry, output initialization, ownership transfer or alias fallback occurs in this wrapper. Outputs, including partial outputs on native failure, remain caller-owned and must be inspected/cleaned up according to Vulkan.
Fnvk::create_instance
Contract
Create a headless or extension-configured Vulkan instance.
Errors
Reports host metadata/version-query failures before creation, driver errors,
invalid native outputs and unavailable destruction. If rollback is impossible,
CallError::InitializationFailed retains the native object for explicit recovery.
Safety
The create info, its reachable pointers and allocator callbacks must meet Vulkan valid usage. Allocator state must remain alive until destruction.
Fnvk::create_ios_surface_mvk
Contract
Call vkCreateIOSSurfaceMVK using this context’s cached function pointer.
Errors
Reports a missing command or a negative native VkResult; non-error results are preserved.
Safety
The context and all handles must be live and belong to the same Vulkan
implementation/device. Meet vkCreateIOSSurfaceMVK valid usage, enabled API/extension/feature,
pointer-chain lifetime, callback compatibility and host/GPU synchronization
requirements. Native resources require explicit destruction after completion.
Preserves native raw pointers, explicit counts, optional nulls and return values. The caller supplies correctly aligned live storage, initialized output-chain headers and every extent implied by native counts, strides or nested records. No allocation, retry, output initialization, ownership transfer or alias fallback occurs in this wrapper. Outputs, including partial outputs on native failure, remain caller-owned and must be inspected/cleaned up according to Vulkan.
Fnvk::create_mac_os_surface_mvk
Contract
Call vkCreateMacOSSurfaceMVK using this context’s cached function pointer.
Errors
Reports a missing command or a negative native VkResult; non-error results are preserved.
Safety
The context and all handles must be live and belong to the same Vulkan
implementation/device. Meet vkCreateMacOSSurfaceMVK valid usage, enabled API/extension/feature,
pointer-chain lifetime, callback compatibility and host/GPU synchronization
requirements. Native resources require explicit destruction after completion.
Preserves native raw pointers, explicit counts, optional nulls and return values. The caller supplies correctly aligned live storage, initialized output-chain headers and every extent implied by native counts, strides or nested records. No allocation, retry, output initialization, ownership transfer or alias fallback occurs in this wrapper. Outputs, including partial outputs on native failure, remain caller-owned and must be inspected/cleaned up according to Vulkan.
Fnvk::create_metal_surface_ext
Contract
Call vkCreateMetalSurfaceEXT using this context’s cached function pointer.
Errors
Reports a missing command or a negative native VkResult; non-error results are preserved.
Safety
The context and all handles must be live and belong to the same Vulkan
implementation/device. Meet vkCreateMetalSurfaceEXT valid usage, enabled API/extension/feature,
pointer-chain lifetime, callback compatibility and host/GPU synchronization
requirements. Native resources require explicit destruction after completion.
Preserves native raw pointers, explicit counts, optional nulls and return values. The caller supplies correctly aligned live storage, initialized output-chain headers and every extent implied by native counts, strides or nested records. No allocation, retry, output initialization, ownership transfer or alias fallback occurs in this wrapper. Outputs, including partial outputs on native failure, remain caller-owned and must be inspected/cleaned up according to Vulkan.
Fnvk::create_micromap_ext
Contract
Call vkCreateMicromapEXT using this context’s cached function pointer.
Errors
Reports a missing command or a negative native VkResult; non-error results are preserved.
Safety
The context and all handles must be live and belong to the same Vulkan
implementation/device. Meet vkCreateMicromapEXT valid usage, enabled API/extension/feature,
pointer-chain lifetime, callback compatibility and host/GPU synchronization
requirements. Native resources require explicit destruction after completion.
Preserves native raw pointers, explicit counts, optional nulls and return values. The caller supplies correctly aligned live storage, initialized output-chain headers and every extent implied by native counts, strides or nested records. No allocation, retry, output initialization, ownership transfer or alias fallback occurs in this wrapper. Outputs, including partial outputs on native failure, remain caller-owned and must be inspected/cleaned up according to Vulkan.
Fnvk::create_optical_flow_session_nv
Contract
Call vkCreateOpticalFlowSessionNV using this context’s cached function pointer.
Errors
Reports a missing command or a negative native VkResult; non-error results are preserved.
Safety
The context and all handles must be live and belong to the same Vulkan
implementation/device. Meet vkCreateOpticalFlowSessionNV valid usage, enabled API/extension/feature,
pointer-chain lifetime, callback compatibility and host/GPU synchronization
requirements. Native resources require explicit destruction after completion.
Preserves native raw pointers, explicit counts, optional nulls and return values. The caller supplies correctly aligned live storage, initialized output-chain headers and every extent implied by native counts, strides or nested records. No allocation, retry, output initialization, ownership transfer or alias fallback occurs in this wrapper. Outputs, including partial outputs on native failure, remain caller-owned and must be inspected/cleaned up according to Vulkan.
Fnvk::create_pipeline_binaries_khr
Contract
Call vkCreatePipelineBinariesKHR using this context’s cached function pointer.
Errors
Reports a missing command or a negative native VkResult; non-error results are preserved.
Safety
The context and all handles must be live and belong to the same Vulkan
implementation/device. Meet vkCreatePipelineBinariesKHR valid usage, enabled API/extension/feature,
pointer-chain lifetime, callback compatibility and host/GPU synchronization
requirements. Native resources require explicit destruction after completion.
Preserves native raw pointers, explicit counts, optional nulls and return values. The caller supplies correctly aligned live storage, initialized output-chain headers and every extent implied by native counts, strides or nested records. No allocation, retry, output initialization, ownership transfer or alias fallback occurs in this wrapper. Outputs, including partial outputs on native failure, remain caller-owned and must be inspected/cleaned up according to Vulkan.
Fnvk::create_pipeline_cache
Contract
Call vkCreatePipelineCache 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 vkCreatePipelineCache valid usage, enabled API/extension/feature,
pointer-chain lifetime, callback compatibility and host/GPU synchronization
requirements. Native resources require explicit destruction after completion.
Fnvk::create_pipeline_layout
Contract
Call vkCreatePipelineLayout 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 vkCreatePipelineLayout valid usage, enabled API/extension/feature,
pointer-chain lifetime, callback compatibility and host/GPU synchronization
requirements. Native resources require explicit destruction after completion.
Fnvk::create_private_data_slot
Contract
Call vkCreatePrivateDataSlot using this context’s cached function pointer.
Errors
Reports a missing command or a negative native VkResult; non-error results are preserved.
Safety
The context and all handles must be live and belong to the same Vulkan
implementation/device. Meet vkCreatePrivateDataSlot valid usage, enabled API/extension/feature,
pointer-chain lifetime, callback compatibility and host/GPU synchronization
requirements. Native resources require explicit destruction after completion.
Preserves native raw pointers, explicit counts, optional nulls and return values. The caller supplies correctly aligned live storage, initialized output-chain headers and every extent implied by native counts, strides or nested records. No allocation, retry, output initialization, ownership transfer or alias fallback occurs in this wrapper. Outputs, including partial outputs on native failure, remain caller-owned and must be inspected/cleaned up according to Vulkan.
Fnvk::create_private_data_slot_ext
Contract
Call vkCreatePrivateDataSlotEXT using this context’s cached function pointer.
Errors
Reports a missing command or a negative native VkResult; non-error results are preserved.
Safety
The context and all handles must be live and belong to the same Vulkan
implementation/device. Meet vkCreatePrivateDataSlotEXT valid usage, enabled API/extension/feature,
pointer-chain lifetime, callback compatibility and host/GPU synchronization
requirements. Native resources require explicit destruction after completion.
Preserves native raw pointers, explicit counts, optional nulls and return values. The caller supplies correctly aligned live storage, initialized output-chain headers and every extent implied by native counts, strides or nested records. No allocation, retry, output initialization, ownership transfer or alias fallback occurs in this wrapper. Outputs, including partial outputs on native failure, remain caller-owned and must be inspected/cleaned up according to Vulkan.
Fnvk::create_query_pool
Contract
Call vkCreateQueryPool 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 vkCreateQueryPool valid usage, enabled API/extension/feature,
pointer-chain lifetime, callback compatibility and host/GPU synchronization
requirements. Native resources require explicit destruction after completion.
Fnvk::create_ray_tracing_pipelines_khr
pub unsafe fn create_ray_tracing_pipelines_khr(
device: &Device,
deferred_operation: DeferredOperationKHR,
pipeline_cache: PipelineCache,
create_info_count: u32,
p_create_infos: *const RayTracingPipelineCreateInfoKHR<'_>,
p_allocator: *const AllocationCallbacks,
p_pipelines: *mut Pipeline,
) -> Result<Result, CallError>Contract
Call vkCreateRayTracingPipelinesKHR using this context’s cached function pointer.
Errors
Reports a missing command or a negative native VkResult; non-error results are preserved.
Safety
The context and all handles must be live and belong to the same Vulkan
implementation/device. Meet vkCreateRayTracingPipelinesKHR valid usage, enabled API/extension/feature,
pointer-chain lifetime, callback compatibility and host/GPU synchronization
requirements. Native resources require explicit destruction after completion.
Preserves native raw pointers, explicit counts, optional nulls and return values. The caller supplies correctly aligned live storage, initialized output-chain headers and every extent implied by native counts, strides or nested records. No allocation, retry, output initialization, ownership transfer or alias fallback occurs in this wrapper. Outputs, including partial outputs on native failure, remain caller-owned and must be inspected/cleaned up according to Vulkan.