Realm

vk · Functions · C22

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

FnRustExperimental

Fnvk::create_buffer_collection_fuchsia

pub unsafe fn create_buffer_collection_fuchsia( device: &Device, p_create_info: *const BufferCollectionCreateInfoFUCHSIA<'_>, p_allocator: *const AllocationCallbacks, p_collection: *mut BufferCollectionFUCHSIA, ) -> Result<Result, CallError>
Call vkCreateBufferCollectionFUCHSIA using this context’s cached function pointer.

Contract

Call vkCreateBufferCollectionFUCHSIA 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 vkCreateBufferCollectionFUCHSIA 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.

Khronos reference: vkCreateBufferCollectionFUCHSIA

Fnvk::create_buffer_view

pub unsafe fn create_buffer_view( device: &Device, create_info: &BufferViewCreateInfo<'_>, allocator: Option<&AllocationCallbacks>, ) -> Result<BufferView, CallError>
Call vkCreateBufferView using this context’s cached function pointer.

Contract

Call vkCreateBufferView 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 vkCreateBufferView 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: vkCreateBufferView

Fnvk::create_command_pool

pub unsafe fn create_command_pool( device: &Device, create_info: &CommandPoolCreateInfo<'_>, allocator: Option<&AllocationCallbacks>, ) -> Result<CommandPool, CallError>

Contract

Create a command pool.

Safety

create_info.queue_family_index must be valid for this device.

Khronos reference: vkCreateCommandPool

Fnvk::create_compute_pipelines

pub unsafe fn create_compute_pipelines( device: &Device, pipeline_cache: PipelineCache, create_infos: &[ComputePipelineCreateInfo<'_>], allocator: Option<&AllocationCallbacks>, pipelines: &mut [Pipeline], ) -> Result<Result, CallError>
Call vkCreateComputePipelines using this context’s cached function pointer.

Contract

Call vkCreateComputePipelines 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 vkCreateComputePipelines valid usage, enabled API/extension/feature, pointer-chain lifetime, callback compatibility and host/GPU synchronization requirements. Native resources require explicit destruction after completion.

Returns non-error native status codes unchanged, including compile-required. On native failure, output slots can contain successfully created pipelines; the caller must inspect and destroy every non-null handle. Slots are not reset before the call: their previous contents must not own live resources.

Khronos reference: vkCreateComputePipelines

Fnvk::create_cu_function_nvx

pub unsafe fn create_cu_function_nvx( device: &Device, p_create_info: *const CuFunctionCreateInfoNVX<'_>, p_allocator: *const AllocationCallbacks, p_function: *mut CuFunctionNVX, ) -> Result<Result, CallError>
Call vkCreateCuFunctionNVX using this context’s cached function pointer.

Contract

Call vkCreateCuFunctionNVX 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 vkCreateCuFunctionNVX 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.

Khronos reference: vkCreateCuFunctionNVX

Fnvk::create_cu_module_nvx

pub unsafe fn create_cu_module_nvx( device: &Device, p_create_info: *const CuModuleCreateInfoNVX<'_>, p_allocator: *const AllocationCallbacks, p_module: *mut CuModuleNVX, ) -> Result<Result, CallError>
Call vkCreateCuModuleNVX using this context’s cached function pointer.

Contract

Call vkCreateCuModuleNVX 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 vkCreateCuModuleNVX 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.

Khronos reference: vkCreateCuModuleNVX

Fnvk::create_cuda_function_nv

pub unsafe fn create_cuda_function_nv( device: &Device, p_create_info: *const CudaFunctionCreateInfoNV<'_>, p_allocator: *const AllocationCallbacks, p_function: *mut CudaFunctionNV, ) -> Result<Result, CallError>
Call vkCreateCudaFunctionNV using this context’s cached function pointer.

Contract

Call vkCreateCudaFunctionNV 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 vkCreateCudaFunctionNV 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.

Khronos reference: vkCreateCudaFunctionNV

Fnvk::create_cuda_module_nv

pub unsafe fn create_cuda_module_nv( device: &Device, p_create_info: *const CudaModuleCreateInfoNV<'_>, p_allocator: *const AllocationCallbacks, p_module: *mut CudaModuleNV, ) -> Result<Result, CallError>
Call vkCreateCudaModuleNV using this context’s cached function pointer.

Contract

Call vkCreateCudaModuleNV 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 vkCreateCudaModuleNV 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.

Khronos reference: vkCreateCudaModuleNV

Fnvk::create_data_graph_pipeline_session_arm

pub unsafe fn create_data_graph_pipeline_session_arm( device: &Device, p_create_info: *const DataGraphPipelineSessionCreateInfoARM<'_>, p_allocator: *const AllocationCallbacks, p_session: *mut DataGraphPipelineSessionARM, ) -> Result<Result, CallError>
Call vkCreateDataGraphPipelineSessionARM using this context’s cached function pointer.

Contract

Call vkCreateDataGraphPipelineSessionARM 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 vkCreateDataGraphPipelineSessionARM 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.

Khronos reference: vkCreateDataGraphPipelineSessionARM

Fnvk::create_data_graph_pipelines_arm

pub unsafe fn create_data_graph_pipelines_arm( device: &Device, deferred_operation: DeferredOperationKHR, pipeline_cache: PipelineCache, create_info_count: u32, p_create_infos: *const DataGraphPipelineCreateInfoARM<'_>, p_allocator: *const AllocationCallbacks, p_pipelines: *mut Pipeline, ) -> Result<Result, CallError>
Call vkCreateDataGraphPipelinesARM using this context’s cached function pointer.

Contract

Call vkCreateDataGraphPipelinesARM 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 vkCreateDataGraphPipelinesARM 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.

Khronos reference: vkCreateDataGraphPipelinesARM

Fnvk::create_debug_report_callback_ext

pub unsafe fn create_debug_report_callback_ext( instance: &Instance, p_create_info: *const DebugReportCallbackCreateInfoEXT<'_>, p_allocator: *const AllocationCallbacks, p_callback: *mut DebugReportCallbackEXT, ) -> Result<Result, CallError>
Call vkCreateDebugReportCallbackEXT using this context’s cached function pointer.

Contract

Call vkCreateDebugReportCallbackEXT 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 vkCreateDebugReportCallbackEXT 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.

Khronos reference: vkCreateDebugReportCallbackEXT

Fnvk::create_debug_utils_messenger_ext

pub unsafe fn create_debug_utils_messenger_ext( instance: &Instance, p_create_info: *const DebugUtilsMessengerCreateInfoEXT<'_>, p_allocator: *const AllocationCallbacks, p_messenger: *mut DebugUtilsMessengerEXT, ) -> Result<Result, CallError>
Call vkCreateDebugUtilsMessengerEXT using this context’s cached function pointer.

Contract

Call vkCreateDebugUtilsMessengerEXT 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 vkCreateDebugUtilsMessengerEXT 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.

Khronos reference: vkCreateDebugUtilsMessengerEXT

Fnvk::create_deferred_operation_khr

pub unsafe fn create_deferred_operation_khr( device: &Device, p_allocator: *const AllocationCallbacks, p_deferred_operation: *mut DeferredOperationKHR, ) -> Result<Result, CallError>
Call vkCreateDeferredOperationKHR using this context’s cached function pointer.

Contract

Call vkCreateDeferredOperationKHR 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 vkCreateDeferredOperationKHR 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.

Khronos reference: vkCreateDeferredOperationKHR

Fnvk::create_descriptor_pool

pub unsafe fn create_descriptor_pool( device: &Device, create_info: &DescriptorPoolCreateInfo<'_>, allocator: Option<&AllocationCallbacks>, ) -> Result<DescriptorPool, CallError>
Call vkCreateDescriptorPool using this context’s cached function pointer.

Contract

Call vkCreateDescriptorPool 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 vkCreateDescriptorPool 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: vkCreateDescriptorPool

Fnvk::create_descriptor_set_layout

pub unsafe fn create_descriptor_set_layout( device: &Device, create_info: &DescriptorSetLayoutCreateInfo<'_>, allocator: Option<&AllocationCallbacks>, ) -> Result<DescriptorSetLayout, CallError>
Call vkCreateDescriptorSetLayout using this context’s cached function pointer.

Contract

Call vkCreateDescriptorSetLayout 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 vkCreateDescriptorSetLayout 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: vkCreateDescriptorSetLayout

Fnvk::create_descriptor_update_template

pub unsafe fn create_descriptor_update_template( device: &Device, create_info: &DescriptorUpdateTemplateCreateInfo<'_>, allocator: Option<&AllocationCallbacks>, ) -> Result<DescriptorUpdateTemplate, CallError>
Call vkCreateDescriptorUpdateTemplate using this context’s cached function pointer.

Contract

Call vkCreateDescriptorUpdateTemplate 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 vkCreateDescriptorUpdateTemplate 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: vkCreateDescriptorUpdateTemplate