vk · Structs · A1
16 public declarations with native signatures and source-owned contracts.
Stvk::AabbPositionsKHR
Contract
Native structure VkAabbPositionsKHR.
Fields
min_x
min_x: f32Native field minX.
min_y
min_y: f32Native field minY.
min_z
min_z: f32Native field minZ.
max_x
max_x: f32Native field maxX.
max_y
max_y: f32Native field maxY.
max_z
max_z: f32Native field maxZ.
Methods and associated items
new
Construct the record with its default native state.
set_min_x
Set native field minX without native effects.
set_min_y
Set native field minY without native effects.
set_min_z
Set native field minZ without native effects.
set_max_x
Set native field maxX without native effects.
set_max_y
Set native field maxY without native effects.
set_max_z
Set native field maxZ without native effects.
clone
default
Stvk::AccelerationStructureBuildGeometryInfoKHR
pub struct AccelerationStructureBuildGeometryInfoKHR<'a> {
pub s_type: StructureType,
pub p_next: *const c_void,
pub type: AccelerationStructureTypeKHR,
pub flags: BuildAccelerationStructureFlagsKHR,
pub mode: BuildAccelerationStructureModeKHR,
pub src_acceleration_structure: AccelerationStructureKHR,
pub dst_acceleration_structure: AccelerationStructureKHR,
pub geometry_count: u32,
pub p_geometries: *const AccelerationStructureGeometryKHR<'a>,
pub pp_geometries: *const *const AccelerationStructureGeometryKHR<'a>,
pub scratch_data: DeviceOrHostAddressKHR,
/* private fields */
}Contract
Native structure VkAccelerationStructureBuildGeometryInfoKHR.
Khronos reference: VkAccelerationStructureBuildGeometryInfoKHR
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
type
type: AccelerationStructureTypeKHRNative field type.
flags
flags: BuildAccelerationStructureFlagsKHRNative field flags.
mode
mode: BuildAccelerationStructureModeKHRNative field mode.
src_acceleration_structure
src_acceleration_structure: AccelerationStructureKHRNative field srcAccelerationStructure.
dst_acceleration_structure
dst_acceleration_structure: AccelerationStructureKHRNative field dstAccelerationStructure.
geometry_count
geometry_count: u32Native field geometryCount.
p_geometries
p_geometries: *const AccelerationStructureGeometryKHR<'a>Native field pGeometries.
pp_geometries
pp_geometries: *const *const AccelerationStructureGeometryKHR<'a>Native field ppGeometries.
scratch_data
scratch_data: DeviceOrHostAddressKHRNative field scratchData.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_type
Set native field type without native effects.
set_flags
Set native field flags without native effects.
set_mode
Set native field mode without native effects.
set_src_acceleration_structure
Set native field srcAccelerationStructure without native effects.
set_dst_acceleration_structure
Set native field dstAccelerationStructure without native effects.
set_geometry_count
Set native count geometryCount directly without checking associated pointer extents.
Use the borrowed array helpers to derive matching storage and counts together.
Direct count edits support null-query/dynamic-state paths and remain a
native-call validity obligation, including after earlier borrowed setters.
set_geometries
Borrow pGeometries and set checked native count geometryCount.
The borrow covers this storage only; nested raw pointers, format, alignment
and asynchronous retention remain native-call obligations.
Output storage must be initialized; returned sizes do not enlarge its capacity.
Errors
Returns a construction error if the length exceeds the native count width.
set_pp_geometries
Borrow ppGeometries and set checked native count geometryCount.
The borrow covers this storage only; nested raw pointers, format, alignment
and asynchronous retention remain native-call obligations.
Output storage must be initialized; returned sizes do not enlarge its capacity.
Errors
Returns a construction error if the length exceeds the native count width.
set_scratch_data
Set native field scratchData without native effects.
push_next
Prepend one registry-compatible node, retaining its exclusive borrow.
The node must have a null p_next and both headers must have canonical tags.
Existing links are never traversed and remain written after the borrow ends.
Type compatibility does not establish enabled extensions or Vulkan valid usage.
Errors
Returns a construction error for a changed structure tag or already-linked node.
default
Stvk::AccelerationStructureBuildRangeInfoKHR
Contract
Native structure VkAccelerationStructureBuildRangeInfoKHR.
Fields
primitive_count
primitive_count: u32Native field primitiveCount.
primitive_offset
primitive_offset: u32Native field primitiveOffset.
first_vertex
first_vertex: u32Native field firstVertex.
transform_offset
transform_offset: u32Native field transformOffset.
Methods and associated items
new
Construct the record with its default native state.
set_primitive_count
Set native field primitiveCount without native effects.
set_primitive_offset
Set native field primitiveOffset without native effects.
set_first_vertex
Set native field firstVertex without native effects.
set_transform_offset
Set native field transformOffset without native effects.
clone
default
Stvk::AccelerationStructureBuildSizesInfoKHR
Contract
Native structure VkAccelerationStructureBuildSizesInfoKHR.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *mut c_voidNative field pNext.
acceleration_structure_size
acceleration_structure_size: DeviceSizeNative field accelerationStructureSize.
update_scratch_size
update_scratch_size: DeviceSizeNative field updateScratchSize.
build_scratch_size
build_scratch_size: DeviceSizeNative field buildScratchSize.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_acceleration_structure_size
Set native field accelerationStructureSize without native effects.
set_update_scratch_size
Set native field updateScratchSize without native effects.
set_build_scratch_size
Set native field buildScratchSize without native effects.
push_next
Prepend one registry-compatible node, retaining its exclusive borrow.
The node must have a null p_next and both headers must have canonical tags.
Existing links are never traversed and remain written after the borrow ends.
Type compatibility does not establish enabled extensions or Vulkan valid usage.
Errors
Returns a construction error for a changed structure tag or already-linked node.
default
Stvk::AccelerationStructureBuildTypeKHR
Contract
Open integer representation of VkAccelerationStructureBuildTypeKHR.
Fields
0
0: i32Methods and associated items
HOST_KHR
Native value VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR.
Khronos reference: VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR
DEVICE_KHR
Native value VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR.
Khronos reference: VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR
HOST_OR_DEVICE_KHR
Native value VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR.
Khronos reference: VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR
from_raw
as_raw
empty
clone
fmt
default
hash
eq
self and other values to be equal, and is used by ==.Stvk::AccelerationStructureCaptureDescriptorDataInfoEXT
Contract
Native structure VkAccelerationStructureCaptureDescriptorDataInfoEXT.
Khronos reference: VkAccelerationStructureCaptureDescriptorDataInfoEXT
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
acceleration_structure
acceleration_structure: AccelerationStructureKHRNative field accelerationStructure.
acceleration_structure_nv
acceleration_structure_nv: AccelerationStructureNVNative field accelerationStructureNV.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_acceleration_structure
Set native field accelerationStructure without native effects.
set_acceleration_structure_nv
Set native field accelerationStructureNV without native effects.
push_next
Prepend one registry-compatible node, retaining its exclusive borrow.
The node must have a null p_next and both headers must have canonical tags.
Existing links are never traversed and remain written after the borrow ends.
Type compatibility does not establish enabled extensions or Vulkan valid usage.
Errors
Returns a construction error for a changed structure tag or already-linked node.
default
Stvk::AccelerationStructureCompatibilityKHR
Contract
Open integer representation of VkAccelerationStructureCompatibilityKHR.
Fields
0
0: i32Methods and associated items
COMPATIBLE_KHR
Native value VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR.
Khronos reference: VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR
INCOMPATIBLE_KHR
Native value VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR.
Khronos reference: VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR
from_raw
as_raw
empty
clone
fmt
default
hash
eq
self and other values to be equal, and is used by ==.Stvk::AccelerationStructureCreateFlagBitsKHR
Contract
Open integer representation of VkAccelerationStructureCreateFlagBitsKHR.
Fields
0
0: u32Methods and associated items
DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR
Native value VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR.
Khronos reference: VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR
DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT
Native value VK_ACCELERATION_STRUCTURE_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT.
Khronos reference: VK_ACCELERATION_STRUCTURE_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT
MOTION_BIT_NV
Native value VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV.
Khronos reference: VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV
from_raw
as_raw
empty
Output
& operator.bitand
& operation. Read moreOutput-1
| operator.bitor
| operation. Read moreOutput-2
^ operator.bitxor
^ operation. Read moreclone
fmt
default
hash
Output-3
! operator.not
! operation. Read moreeq
self and other values to be equal, and is used by ==.Stvk::AccelerationStructureCreateInfo2KHR
pub struct AccelerationStructureCreateInfo2KHR<'a> {
pub s_type: StructureType,
pub p_next: *const c_void,
pub create_flags: AccelerationStructureCreateFlagsKHR,
pub address_range: DeviceAddressRangeKHR,
pub address_flags: AddressCommandFlagsKHR,
pub type: AccelerationStructureTypeKHR,
/* private fields */
}Contract
Native structure VkAccelerationStructureCreateInfo2KHR.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
create_flags
create_flags: AccelerationStructureCreateFlagsKHRNative field createFlags.
address_range
address_range: DeviceAddressRangeKHRNative field addressRange.
address_flags
address_flags: AddressCommandFlagsKHRNative field addressFlags.
type
type: AccelerationStructureTypeKHRNative field type.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_create_flags
Set native field createFlags without native effects.
set_address_range
Set native field addressRange without native effects.
set_address_flags
Set native field addressFlags without native effects.
set_type
Set native field type without native effects.
push_next
Prepend one registry-compatible node, retaining its exclusive borrow.
The node must have a null p_next and both headers must have canonical tags.
Existing links are never traversed and remain written after the borrow ends.
Type compatibility does not establish enabled extensions or Vulkan valid usage.
Errors
Returns a construction error for a changed structure tag or already-linked node.
default
Stvk::AccelerationStructureCreateInfoKHR
pub struct AccelerationStructureCreateInfoKHR<'a> {
pub s_type: StructureType,
pub p_next: *const c_void,
pub create_flags: AccelerationStructureCreateFlagsKHR,
pub buffer: Buffer,
pub offset: DeviceSize,
pub size: DeviceSize,
pub type: AccelerationStructureTypeKHR,
pub device_address: DeviceAddress,
/* private fields */
}Contract
Native structure VkAccelerationStructureCreateInfoKHR.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
create_flags
create_flags: AccelerationStructureCreateFlagsKHRNative field createFlags.
buffer
buffer: BufferNative field buffer.
offset
offset: DeviceSizeNative field offset.
size
size: DeviceSizeNative field size.
type
type: AccelerationStructureTypeKHRNative field type.
device_address
device_address: DeviceAddressNative field deviceAddress.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_create_flags
Set native field createFlags without native effects.
set_buffer
Set native field buffer without native effects.
set_offset
Set native field offset without native effects.
set_size
Set native field size without native effects.
set_type
Set native field type without native effects.
set_device_address
Set native field deviceAddress without native effects.
push_next
Prepend one registry-compatible node, retaining its exclusive borrow.
The node must have a null p_next and both headers must have canonical tags.
Existing links are never traversed and remain written after the borrow ends.
Type compatibility does not establish enabled extensions or Vulkan valid usage.
Errors
Returns a construction error for a changed structure tag or already-linked node.
default
Stvk::AccelerationStructureCreateInfoNV
Contract
Native structure VkAccelerationStructureCreateInfoNV.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
compacted_size
compacted_size: DeviceSizeNative field compactedSize.
info
info: AccelerationStructureInfoNV<'a>Native field info.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_compacted_size
Set native field compactedSize without native effects.
set_info
Set native field info without native effects.
push_next
Prepend one registry-compatible node, retaining its exclusive borrow.
The node must have a null p_next and both headers must have canonical tags.
Existing links are never traversed and remain written after the borrow ends.
Type compatibility does not establish enabled extensions or Vulkan valid usage.
Errors
Returns a construction error for a changed structure tag or already-linked node.
default
Stvk::AccelerationStructureDenseGeometryFormatTrianglesDataAMDX
pub struct AccelerationStructureDenseGeometryFormatTrianglesDataAMDX<'a> {
pub s_type: StructureType,
pub p_next: *const c_void,
pub compressed_data: DeviceOrHostAddressConstKHR,
pub data_size: DeviceSize,
pub num_triangles: u32,
pub num_vertices: u32,
pub max_primitive_index: u32,
pub max_geometry_index: u32,
pub format: CompressedTriangleFormatAMDX,
/* private fields */
}Contract
Native structure VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX.
Khronos reference: VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
compressed_data
compressed_data: DeviceOrHostAddressConstKHRNative field compressedData.
data_size
data_size: DeviceSizeNative field dataSize.
num_triangles
num_triangles: u32Native field numTriangles.
num_vertices
num_vertices: u32Native field numVertices.
max_primitive_index
max_primitive_index: u32Native field maxPrimitiveIndex.
max_geometry_index
max_geometry_index: u32Native field maxGeometryIndex.
format
format: CompressedTriangleFormatAMDXNative field format.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_compressed_data
Set native field compressedData without native effects.
set_data_size
Set native field dataSize without native effects.
set_num_triangles
Set native field numTriangles without native effects.
set_num_vertices
Set native field numVertices without native effects.
set_max_primitive_index
Set native field maxPrimitiveIndex without native effects.
set_max_geometry_index
Set native field maxGeometryIndex without native effects.
set_format
Set native field format without native effects.
push_next
Prepend one registry-compatible node, retaining its exclusive borrow.
The node must have a null p_next and both headers must have canonical tags.
Existing links are never traversed and remain written after the borrow ends.
Type compatibility does not establish enabled extensions or Vulkan valid usage.
Errors
Returns a construction error for a changed structure tag or already-linked node.
default
Stvk::AccelerationStructureDeviceAddressInfoKHR
Contract
Native structure VkAccelerationStructureDeviceAddressInfoKHR.
Khronos reference: VkAccelerationStructureDeviceAddressInfoKHR
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
acceleration_structure
acceleration_structure: AccelerationStructureKHRNative field accelerationStructure.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_acceleration_structure
Set native field accelerationStructure without native effects.
push_next
Prepend one registry-compatible node, retaining its exclusive borrow.
The node must have a null p_next and both headers must have canonical tags.
Existing links are never traversed and remain written after the borrow ends.
Type compatibility does not establish enabled extensions or Vulkan valid usage.
Errors
Returns a construction error for a changed structure tag or already-linked node.
default
Stvk::AccelerationStructureGeometryAabbsDataKHR
Contract
Native structure VkAccelerationStructureGeometryAabbsDataKHR.
Khronos reference: VkAccelerationStructureGeometryAabbsDataKHR
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
data
data: DeviceOrHostAddressConstKHRNative field data.
stride
stride: DeviceSizeNative field stride.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_data
Set native field data without native effects.
set_stride
Set native field stride without native effects.
push_next
Prepend one registry-compatible node, retaining its exclusive borrow.
The node must have a null p_next and both headers must have canonical tags.
Existing links are never traversed and remain written after the borrow ends.
Type compatibility does not establish enabled extensions or Vulkan valid usage.
Errors
Returns a construction error for a changed structure tag or already-linked node.
default
Stvk::AccelerationStructureGeometryInstancesDataKHR
Contract
Native structure VkAccelerationStructureGeometryInstancesDataKHR.
Khronos reference: VkAccelerationStructureGeometryInstancesDataKHR
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
array_of_pointers
array_of_pointers: Bool32Native field arrayOfPointers.
data
data: DeviceOrHostAddressConstKHRNative field data.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_array_of_pointers
Set native field arrayOfPointers without native effects.
set_data
Set native field data without native effects.
push_next
Prepend one registry-compatible node, retaining its exclusive borrow.
The node must have a null p_next and both headers must have canonical tags.
Existing links are never traversed and remain written after the borrow ends.
Type compatibility does not establish enabled extensions or Vulkan valid usage.
Errors
Returns a construction error for a changed structure tag or already-linked node.
default
Stvk::AccelerationStructureGeometryKHR
Contract
Native structure VkAccelerationStructureGeometryKHR.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
geometry_type
geometry_type: GeometryTypeKHRNative field geometryType.
geometry
geometry: AccelerationStructureGeometryDataKHR<'a>Native field geometry.
flags
flags: GeometryFlagsKHRNative field flags.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_geometry_type
Set native field geometryType without native effects.
set_geometry
Set native field geometry without native effects.
set_flags
Set native field flags without native effects.
push_next
Prepend one registry-compatible node, retaining its exclusive borrow.
The node must have a null p_next and both headers must have canonical tags.
Existing links are never traversed and remain written after the borrow ends.
Type compatibility does not establish enabled extensions or Vulkan valid usage.
Errors
Returns a construction error for a changed structure tag or already-linked node.