pub trait KhrAccelerationStructureExtensionDeviceCommands: DeviceV1_0 {
Show 16 methods
// Provided methods
unsafe fn build_acceleration_structures_khr(
&self,
deferred_operation: DeferredOperationKHR,
infos: &[impl Cast<Target = AccelerationStructureBuildGeometryInfoKHR>],
build_range_infos: &[&[impl Cast<Target = AccelerationStructureBuildRangeInfoKHR>]],
) -> VkResult<SuccessCode> { ... }
unsafe fn cmd_build_acceleration_structures_indirect_khr(
&self,
command_buffer: CommandBuffer,
infos: &[impl Cast<Target = AccelerationStructureBuildGeometryInfoKHR>],
indirect_device_addresses: &[DeviceAddress],
indirect_strides: &[u32],
max_primitive_counts: &[&[u32]],
) { ... }
unsafe fn cmd_build_acceleration_structures_khr(
&self,
command_buffer: CommandBuffer,
infos: &[impl Cast<Target = AccelerationStructureBuildGeometryInfoKHR>],
build_range_infos: &[&[impl Cast<Target = AccelerationStructureBuildRangeInfoKHR>]],
) { ... }
unsafe fn cmd_copy_acceleration_structure_khr(
&self,
command_buffer: CommandBuffer,
info: &CopyAccelerationStructureInfoKHR,
) { ... }
unsafe fn cmd_copy_acceleration_structure_to_memory_khr(
&self,
command_buffer: CommandBuffer,
info: &CopyAccelerationStructureToMemoryInfoKHR,
) { ... }
unsafe fn cmd_copy_memory_to_acceleration_structure_khr(
&self,
command_buffer: CommandBuffer,
info: &CopyMemoryToAccelerationStructureInfoKHR,
) { ... }
unsafe fn cmd_write_acceleration_structures_properties_khr(
&self,
command_buffer: CommandBuffer,
acceleration_structures: &[AccelerationStructureKHR],
query_type: QueryType,
query_pool: QueryPool,
first_query: u32,
) { ... }
unsafe fn copy_acceleration_structure_khr(
&self,
deferred_operation: DeferredOperationKHR,
info: &CopyAccelerationStructureInfoKHR,
) -> VkResult<SuccessCode> { ... }
unsafe fn copy_acceleration_structure_to_memory_khr(
&self,
deferred_operation: DeferredOperationKHR,
info: &CopyAccelerationStructureToMemoryInfoKHR,
) -> VkResult<SuccessCode> { ... }
unsafe fn copy_memory_to_acceleration_structure_khr(
&self,
deferred_operation: DeferredOperationKHR,
info: &CopyMemoryToAccelerationStructureInfoKHR,
) -> VkResult<SuccessCode> { ... }
unsafe fn create_acceleration_structure_khr(
&self,
create_info: &AccelerationStructureCreateInfoKHR,
allocator: Option<&AllocationCallbacks>,
) -> VkResult<AccelerationStructureKHR> { ... }
unsafe fn destroy_acceleration_structure_khr(
&self,
acceleration_structure: AccelerationStructureKHR,
allocator: Option<&AllocationCallbacks>,
) { ... }
unsafe fn get_acceleration_structure_build_sizes_khr(
&self,
build_type: AccelerationStructureBuildTypeKHR,
build_info: &AccelerationStructureBuildGeometryInfoKHR,
max_primitive_counts: &[u32],
size_info: &mut AccelerationStructureBuildSizesInfoKHR,
) { ... }
unsafe fn get_acceleration_structure_device_address_khr(
&self,
info: &AccelerationStructureDeviceAddressInfoKHR,
) -> DeviceAddress { ... }
unsafe fn get_device_acceleration_structure_compatibility_khr(
&self,
version_info: &AccelerationStructureVersionInfoKHR,
) -> AccelerationStructureCompatibilityKHR { ... }
unsafe fn write_acceleration_structures_properties_khr(
&self,
acceleration_structures: &[AccelerationStructureKHR],
query_type: QueryType,
data: &mut [u8],
stride: usize,
) -> VkResult<()> { ... }
}Expand description
The device-level commands added by KHR_ACCELERATION_STRUCTURE_EXTENSION.
Provided Methods§
Sourceunsafe fn build_acceleration_structures_khr(
&self,
deferred_operation: DeferredOperationKHR,
infos: &[impl Cast<Target = AccelerationStructureBuildGeometryInfoKHR>],
build_range_infos: &[&[impl Cast<Target = AccelerationStructureBuildRangeInfoKHR>]],
) -> VkResult<SuccessCode>
unsafe fn build_acceleration_structures_khr( &self, deferred_operation: DeferredOperationKHR, infos: &[impl Cast<Target = AccelerationStructureBuildGeometryInfoKHR>], build_range_infos: &[&[impl Cast<Target = AccelerationStructureBuildRangeInfoKHR>]], ) -> VkResult<SuccessCode>
Sourceunsafe fn cmd_build_acceleration_structures_indirect_khr(
&self,
command_buffer: CommandBuffer,
infos: &[impl Cast<Target = AccelerationStructureBuildGeometryInfoKHR>],
indirect_device_addresses: &[DeviceAddress],
indirect_strides: &[u32],
max_primitive_counts: &[&[u32]],
)
unsafe fn cmd_build_acceleration_structures_indirect_khr( &self, command_buffer: CommandBuffer, infos: &[impl Cast<Target = AccelerationStructureBuildGeometryInfoKHR>], indirect_device_addresses: &[DeviceAddress], indirect_strides: &[u32], max_primitive_counts: &[&[u32]], )
Sourceunsafe fn cmd_build_acceleration_structures_khr(
&self,
command_buffer: CommandBuffer,
infos: &[impl Cast<Target = AccelerationStructureBuildGeometryInfoKHR>],
build_range_infos: &[&[impl Cast<Target = AccelerationStructureBuildRangeInfoKHR>]],
)
unsafe fn cmd_build_acceleration_structures_khr( &self, command_buffer: CommandBuffer, infos: &[impl Cast<Target = AccelerationStructureBuildGeometryInfoKHR>], build_range_infos: &[&[impl Cast<Target = AccelerationStructureBuildRangeInfoKHR>]], )
Sourceunsafe fn cmd_copy_acceleration_structure_khr(
&self,
command_buffer: CommandBuffer,
info: &CopyAccelerationStructureInfoKHR,
)
unsafe fn cmd_copy_acceleration_structure_khr( &self, command_buffer: CommandBuffer, info: &CopyAccelerationStructureInfoKHR, )
Sourceunsafe fn cmd_copy_acceleration_structure_to_memory_khr(
&self,
command_buffer: CommandBuffer,
info: &CopyAccelerationStructureToMemoryInfoKHR,
)
unsafe fn cmd_copy_acceleration_structure_to_memory_khr( &self, command_buffer: CommandBuffer, info: &CopyAccelerationStructureToMemoryInfoKHR, )
Sourceunsafe fn cmd_copy_memory_to_acceleration_structure_khr(
&self,
command_buffer: CommandBuffer,
info: &CopyMemoryToAccelerationStructureInfoKHR,
)
unsafe fn cmd_copy_memory_to_acceleration_structure_khr( &self, command_buffer: CommandBuffer, info: &CopyMemoryToAccelerationStructureInfoKHR, )
Sourceunsafe fn cmd_write_acceleration_structures_properties_khr(
&self,
command_buffer: CommandBuffer,
acceleration_structures: &[AccelerationStructureKHR],
query_type: QueryType,
query_pool: QueryPool,
first_query: u32,
)
unsafe fn cmd_write_acceleration_structures_properties_khr( &self, command_buffer: CommandBuffer, acceleration_structures: &[AccelerationStructureKHR], query_type: QueryType, query_pool: QueryPool, first_query: u32, )
Sourceunsafe fn copy_acceleration_structure_khr(
&self,
deferred_operation: DeferredOperationKHR,
info: &CopyAccelerationStructureInfoKHR,
) -> VkResult<SuccessCode>
unsafe fn copy_acceleration_structure_khr( &self, deferred_operation: DeferredOperationKHR, info: &CopyAccelerationStructureInfoKHR, ) -> VkResult<SuccessCode>
Sourceunsafe fn copy_acceleration_structure_to_memory_khr(
&self,
deferred_operation: DeferredOperationKHR,
info: &CopyAccelerationStructureToMemoryInfoKHR,
) -> VkResult<SuccessCode>
unsafe fn copy_acceleration_structure_to_memory_khr( &self, deferred_operation: DeferredOperationKHR, info: &CopyAccelerationStructureToMemoryInfoKHR, ) -> VkResult<SuccessCode>
Sourceunsafe fn copy_memory_to_acceleration_structure_khr(
&self,
deferred_operation: DeferredOperationKHR,
info: &CopyMemoryToAccelerationStructureInfoKHR,
) -> VkResult<SuccessCode>
unsafe fn copy_memory_to_acceleration_structure_khr( &self, deferred_operation: DeferredOperationKHR, info: &CopyMemoryToAccelerationStructureInfoKHR, ) -> VkResult<SuccessCode>
Sourceunsafe fn create_acceleration_structure_khr(
&self,
create_info: &AccelerationStructureCreateInfoKHR,
allocator: Option<&AllocationCallbacks>,
) -> VkResult<AccelerationStructureKHR>
unsafe fn create_acceleration_structure_khr( &self, create_info: &AccelerationStructureCreateInfoKHR, allocator: Option<&AllocationCallbacks>, ) -> VkResult<AccelerationStructureKHR>
Sourceunsafe fn destroy_acceleration_structure_khr(
&self,
acceleration_structure: AccelerationStructureKHR,
allocator: Option<&AllocationCallbacks>,
)
unsafe fn destroy_acceleration_structure_khr( &self, acceleration_structure: AccelerationStructureKHR, allocator: Option<&AllocationCallbacks>, )
Sourceunsafe fn get_acceleration_structure_build_sizes_khr(
&self,
build_type: AccelerationStructureBuildTypeKHR,
build_info: &AccelerationStructureBuildGeometryInfoKHR,
max_primitive_counts: &[u32],
size_info: &mut AccelerationStructureBuildSizesInfoKHR,
)
unsafe fn get_acceleration_structure_build_sizes_khr( &self, build_type: AccelerationStructureBuildTypeKHR, build_info: &AccelerationStructureBuildGeometryInfoKHR, max_primitive_counts: &[u32], size_info: &mut AccelerationStructureBuildSizesInfoKHR, )
Sourceunsafe fn get_acceleration_structure_device_address_khr(
&self,
info: &AccelerationStructureDeviceAddressInfoKHR,
) -> DeviceAddress
unsafe fn get_acceleration_structure_device_address_khr( &self, info: &AccelerationStructureDeviceAddressInfoKHR, ) -> DeviceAddress
Sourceunsafe fn get_device_acceleration_structure_compatibility_khr(
&self,
version_info: &AccelerationStructureVersionInfoKHR,
) -> AccelerationStructureCompatibilityKHR
unsafe fn get_device_acceleration_structure_compatibility_khr( &self, version_info: &AccelerationStructureVersionInfoKHR, ) -> AccelerationStructureCompatibilityKHR
Sourceunsafe fn write_acceleration_structures_properties_khr(
&self,
acceleration_structures: &[AccelerationStructureKHR],
query_type: QueryType,
data: &mut [u8],
stride: usize,
) -> VkResult<()>
unsafe fn write_acceleration_structures_properties_khr( &self, acceleration_structures: &[AccelerationStructureKHR], query_type: QueryType, data: &mut [u8], stride: usize, ) -> VkResult<()>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.