vk · Structs · R1
16 public declarations with native signatures and source-owned contracts.
Stvk::RasterizationOrderAMD
Contract
Open integer representation of VkRasterizationOrderAMD.
Fields
0
0: i32Methods and associated items
STRICT_AMD
Native value VK_RASTERIZATION_ORDER_STRICT_AMD.
RELAXED_AMD
Native value VK_RASTERIZATION_ORDER_RELAXED_AMD.
from_raw
as_raw
empty
clone
fmt
default
hash
eq
self and other values to be equal, and is used by ==.Stvk::RayTracingInvocationReorderModeEXT
Contract
Open integer representation of VkRayTracingInvocationReorderModeEXT.
Fields
0
0: i32Methods and associated items
NONE_EXT
Native value VK_RAY_TRACING_INVOCATION_REORDER_MODE_NONE_EXT.
Khronos reference: VK_RAY_TRACING_INVOCATION_REORDER_MODE_NONE_EXT
REORDER_EXT
Native value VK_RAY_TRACING_INVOCATION_REORDER_MODE_REORDER_EXT.
Khronos reference: VK_RAY_TRACING_INVOCATION_REORDER_MODE_REORDER_EXT
NONE_NV
Native value VK_RAY_TRACING_INVOCATION_REORDER_MODE_NONE_NV.
Khronos reference: VK_RAY_TRACING_INVOCATION_REORDER_MODE_NONE_NV
REORDER_NV
Native value VK_RAY_TRACING_INVOCATION_REORDER_MODE_REORDER_NV.
Khronos reference: VK_RAY_TRACING_INVOCATION_REORDER_MODE_REORDER_NV
from_raw
as_raw
empty
clone
fmt
default
hash
eq
self and other values to be equal, and is used by ==.Stvk::RayTracingLssIndexingModeNV
Contract
Open integer representation of VkRayTracingLssIndexingModeNV.
Fields
0
0: i32Methods and associated items
LIST_NV
Native value VK_RAY_TRACING_LSS_INDEXING_MODE_LIST_NV.
SUCCESSIVE_NV
Native value VK_RAY_TRACING_LSS_INDEXING_MODE_SUCCESSIVE_NV.
Khronos reference: VK_RAY_TRACING_LSS_INDEXING_MODE_SUCCESSIVE_NV
from_raw
as_raw
empty
clone
fmt
default
hash
eq
self and other values to be equal, and is used by ==.Stvk::RayTracingLssPrimitiveEndCapsModeNV
Contract
Open integer representation of VkRayTracingLssPrimitiveEndCapsModeNV.
Fields
0
0: i32Methods and associated items
NONE_NV
Native value VK_RAY_TRACING_LSS_PRIMITIVE_END_CAPS_MODE_NONE_NV.
Khronos reference: VK_RAY_TRACING_LSS_PRIMITIVE_END_CAPS_MODE_NONE_NV
CHAINED_NV
Native value VK_RAY_TRACING_LSS_PRIMITIVE_END_CAPS_MODE_CHAINED_NV.
Khronos reference: VK_RAY_TRACING_LSS_PRIMITIVE_END_CAPS_MODE_CHAINED_NV
from_raw
as_raw
empty
clone
fmt
default
hash
eq
self and other values to be equal, and is used by ==.Stvk::RayTracingPipelineClusterAccelerationStructureCreateInfoNV
Contract
Native structure VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV.
Khronos reference: VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *mut c_voidNative field pNext.
allow_cluster_acceleration_structure
allow_cluster_acceleration_structure: Bool32Native field allowClusterAccelerationStructure.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_allow_cluster_acceleration_structure
Set native field allowClusterAccelerationStructure 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::RayTracingPipelineCreateInfoKHR
pub struct RayTracingPipelineCreateInfoKHR<'a> {
pub s_type: StructureType,
pub p_next: *const c_void,
pub flags: PipelineCreateFlags,
pub stage_count: u32,
pub p_stages: *const PipelineShaderStageCreateInfo<'a>,
pub group_count: u32,
pub p_groups: *const RayTracingShaderGroupCreateInfoKHR<'a>,
pub max_pipeline_ray_recursion_depth: u32,
pub p_library_info: *const PipelineLibraryCreateInfoKHR<'a>,
pub p_library_interface: *const RayTracingPipelineInterfaceCreateInfoKHR<'a>,
pub p_dynamic_state: *const PipelineDynamicStateCreateInfo<'a>,
pub layout: PipelineLayout,
pub base_pipeline_handle: Pipeline,
pub base_pipeline_index: i32,
/* private fields */
}Contract
Native structure VkRayTracingPipelineCreateInfoKHR.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
flags
flags: PipelineCreateFlagsNative field flags.
stage_count
stage_count: u32Native field stageCount.
p_stages
p_stages: *const PipelineShaderStageCreateInfo<'a>Native field pStages.
group_count
group_count: u32Native field groupCount.
p_groups
p_groups: *const RayTracingShaderGroupCreateInfoKHR<'a>Native field pGroups.
max_pipeline_ray_recursion_depth
max_pipeline_ray_recursion_depth: u32Native field maxPipelineRayRecursionDepth.
p_library_info
p_library_info: *const PipelineLibraryCreateInfoKHR<'a>Native field pLibraryInfo.
p_library_interface
p_library_interface: *const RayTracingPipelineInterfaceCreateInfoKHR<'a>Native field pLibraryInterface.
p_dynamic_state
p_dynamic_state: *const PipelineDynamicStateCreateInfo<'a>Native field pDynamicState.
layout
layout: PipelineLayoutNative field layout.
base_pipeline_handle
base_pipeline_handle: PipelineNative field basePipelineHandle.
base_pipeline_index
base_pipeline_index: i32Native field basePipelineIndex.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_flags
Set native field flags without native effects.
set_stage_count
Set native count stageCount 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_stages
Borrow pStages and set checked native count stageCount.
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_group_count
Set native count groupCount 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_groups
Borrow pGroups and set checked native count groupCount.
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_max_pipeline_ray_recursion_depth
Set native field maxPipelineRayRecursionDepth without native effects.
set_library_info
Set native field pLibraryInfo without native effects.
set_library_interface
Set native field pLibraryInterface without native effects.
set_dynamic_state
Set native field pDynamicState without native effects.
set_layout
Set native field layout without native effects.
set_base_pipeline_handle
Set native field basePipelineHandle without native effects.
set_base_pipeline_index
Set native field basePipelineIndex 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::RayTracingPipelineCreateInfoNV
pub struct RayTracingPipelineCreateInfoNV<'a> {
pub s_type: StructureType,
pub p_next: *const c_void,
pub flags: PipelineCreateFlags,
pub stage_count: u32,
pub p_stages: *const PipelineShaderStageCreateInfo<'a>,
pub group_count: u32,
pub p_groups: *const RayTracingShaderGroupCreateInfoNV<'a>,
pub max_recursion_depth: u32,
pub layout: PipelineLayout,
pub base_pipeline_handle: Pipeline,
pub base_pipeline_index: i32,
/* private fields */
}Contract
Native structure VkRayTracingPipelineCreateInfoNV.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
flags
flags: PipelineCreateFlagsNative field flags.
stage_count
stage_count: u32Native field stageCount.
p_stages
p_stages: *const PipelineShaderStageCreateInfo<'a>Native field pStages.
group_count
group_count: u32Native field groupCount.
p_groups
p_groups: *const RayTracingShaderGroupCreateInfoNV<'a>Native field pGroups.
max_recursion_depth
max_recursion_depth: u32Native field maxRecursionDepth.
layout
layout: PipelineLayoutNative field layout.
base_pipeline_handle
base_pipeline_handle: PipelineNative field basePipelineHandle.
base_pipeline_index
base_pipeline_index: i32Native field basePipelineIndex.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_flags
Set native field flags without native effects.
set_stage_count
Set native count stageCount 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_stages
Borrow pStages and set checked native count stageCount.
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_group_count
Set native count groupCount 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_groups
Borrow pGroups and set checked native count groupCount.
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_max_recursion_depth
Set native field maxRecursionDepth without native effects.
set_layout
Set native field layout without native effects.
set_base_pipeline_handle
Set native field basePipelineHandle without native effects.
set_base_pipeline_index
Set native field basePipelineIndex 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::RayTracingPipelineInterfaceCreateInfoKHR
Contract
Native structure VkRayTracingPipelineInterfaceCreateInfoKHR.
Khronos reference: VkRayTracingPipelineInterfaceCreateInfoKHR
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
max_pipeline_ray_payload_size
max_pipeline_ray_payload_size: u32Native field maxPipelineRayPayloadSize.
max_pipeline_ray_hit_attribute_size
max_pipeline_ray_hit_attribute_size: u32Native field maxPipelineRayHitAttributeSize.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_max_pipeline_ray_payload_size
Set native field maxPipelineRayPayloadSize without native effects.
set_max_pipeline_ray_hit_attribute_size
Set native field maxPipelineRayHitAttributeSize 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::RayTracingShaderGroupCreateInfoKHR
pub struct RayTracingShaderGroupCreateInfoKHR<'a> {
pub s_type: StructureType,
pub p_next: *const c_void,
pub type: RayTracingShaderGroupTypeKHR,
pub general_shader: u32,
pub closest_hit_shader: u32,
pub any_hit_shader: u32,
pub intersection_shader: u32,
pub p_shader_group_capture_replay_handle: *const c_void,
/* private fields */
}Contract
Native structure VkRayTracingShaderGroupCreateInfoKHR.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
type
type: RayTracingShaderGroupTypeKHRNative field type.
general_shader
general_shader: u32Native field generalShader.
closest_hit_shader
closest_hit_shader: u32Native field closestHitShader.
any_hit_shader
any_hit_shader: u32Native field anyHitShader.
intersection_shader
intersection_shader: u32Native field intersectionShader.
p_shader_group_capture_replay_handle
p_shader_group_capture_replay_handle: *const c_voidNative field pShaderGroupCaptureReplayHandle.
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_general_shader
Set native field generalShader without native effects.
set_closest_hit_shader
Set native field closestHitShader without native effects.
set_any_hit_shader
Set native field anyHitShader without native effects.
set_intersection_shader
Set native field intersectionShader without native effects.
set_shader_group_capture_replay_handle
Set native pointer pShaderGroupCaptureReplayHandle explicitly. No borrow or extent is inferred.
Safety
The caller must establish pointee validity, extent, alignment, aliasing and the full native retention lifetime before using this record in a native call. Callback, external-object and nested-pointer contracts remain caller obligations.
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::RayTracingShaderGroupCreateInfoNV
Contract
Native structure VkRayTracingShaderGroupCreateInfoNV.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
type
type: RayTracingShaderGroupTypeKHRNative field type.
general_shader
general_shader: u32Native field generalShader.
closest_hit_shader
closest_hit_shader: u32Native field closestHitShader.
any_hit_shader
any_hit_shader: u32Native field anyHitShader.
intersection_shader
intersection_shader: u32Native field intersectionShader.
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_general_shader
Set native field generalShader without native effects.
set_closest_hit_shader
Set native field closestHitShader without native effects.
set_any_hit_shader
Set native field anyHitShader without native effects.
set_intersection_shader
Set native field intersectionShader 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::RayTracingShaderGroupTypeKHR
Contract
Open integer representation of VkRayTracingShaderGroupTypeKHR.
Fields
0
0: i32Methods and associated items
GENERAL_KHR
Native value VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR.
Khronos reference: VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR
TRIANGLES_HIT_GROUP_KHR
Native value VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR.
Khronos reference: VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR
PROCEDURAL_HIT_GROUP_KHR
Native value VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR.
Khronos reference: VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR
GENERAL_NV
Native value VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV.
Khronos reference: VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV
TRIANGLES_HIT_GROUP_NV
Native value VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV.
Khronos reference: VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV
PROCEDURAL_HIT_GROUP_NV
Native value VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV.
Khronos reference: VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV
from_raw
as_raw
empty
clone
fmt
default
hash
eq
self and other values to be equal, and is used by ==.Stvk::Rect2D
Contract
Native structure VkRect2D.
Fields
offset
offset: Offset2DNative field offset.
extent
extent: Extent2DNative field extent.
Methods and associated items
new
Construct the record with its default native state.
set_offset
Set native field offset without native effects.
set_extent
Set native field extent without native effects.
clone
default
Stvk::RectLayerKHR
Contract
Native structure VkRectLayerKHR.
Fields
offset
offset: Offset2DNative field offset.
extent
extent: Extent2DNative field extent.
layer
layer: u32Native field layer.
Methods and associated items
new
Construct the record with its default native state.
set_offset
Set native field offset without native effects.
set_extent
Set native field extent without native effects.
set_layer
Set native field layer without native effects.
clone
default
Stvk::RefreshCycleDurationGOOGLE
Contract
Native structure VkRefreshCycleDurationGOOGLE.
Fields
refresh_duration
refresh_duration: u64Native field refreshDuration.
Methods and associated items
new
Construct the record with its default native state.
set_refresh_duration
Set native field refreshDuration without native effects.
clone
default
Stvk::ReleaseCapturedPipelineDataInfoKHR
Contract
Native structure VkReleaseCapturedPipelineDataInfoKHR.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *mut c_voidNative field pNext.
pipeline
pipeline: PipelineNative field pipeline.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_pipeline
Set native field pipeline 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::ReleaseSwapchainImagesInfoKHR
Contract
Native structure VkReleaseSwapchainImagesInfoKHR.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
swapchain
swapchain: SwapchainKHRNative field swapchain.
image_index_count
image_index_count: u32Native field imageIndexCount.
p_image_indices
p_image_indices: *const u32Native field pImageIndices.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_swapchain
Set native field swapchain without native effects.
set_image_index_count
Set native count imageIndexCount 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_image_indices
Borrow pImageIndices and set checked native count imageIndexCount.
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.
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.