Realm

vk · Structs · B1

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

StRustExperimental

Stvk::BaseInStructure

Contract

Native structure VkBaseInStructure.

Khronos reference: VkBaseInStructure

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const BaseInStructure<'a>

Native field pNext.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_s_type

Method
pub fn set_s_type(self, value: StructureType) -> Self

Set native field sType without native effects.

set_p_next

Method
pub fn set_p_next(self, value: &'a BaseInStructure<'a>) -> Self

Set native field pNext without native effects.

Stvk::BaseOutStructure

Contract

Native structure VkBaseOutStructure.

Khronos reference: VkBaseOutStructure

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *mut BaseOutStructure<'a>

Native field pNext.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_s_type

Method
pub fn set_s_type(self, value: StructureType) -> Self

Set native field sType without native effects.

set_p_next

Method
pub fn set_p_next(self, value: &'a mut BaseOutStructure<'a>) -> Self

Set native field pNext without native effects.

Stvk::BeginCustomResolveInfoEXT

Contract

Native structure VkBeginCustomResolveInfoEXT.

Khronos reference: VkBeginCustomResolveInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *mut c_void

Native field pNext.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

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.

Stvk::BindAccelerationStructureMemoryInfoNV

pub struct BindAccelerationStructureMemoryInfoNV<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub acceleration_structure: AccelerationStructureNV, pub memory: DeviceMemory, pub memory_offset: DeviceSize, pub device_index_count: u32, pub p_device_indices: *const u32, /* private fields */ }
Native structure VkBindAccelerationStructureMemoryInfoNV.

Contract

Native structure VkBindAccelerationStructureMemoryInfoNV.

Khronos reference: VkBindAccelerationStructureMemoryInfoNV

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

acceleration_structure

Field
acceleration_structure: AccelerationStructureNV

Native field accelerationStructure.

memory

Field
memory: DeviceMemory

Native field memory.

memory_offset

Field
memory_offset: DeviceSize

Native field memoryOffset.

device_index_count

Field
device_index_count: u32

Native field deviceIndexCount.

p_device_indices

Field
p_device_indices: *const u32

Native field pDeviceIndices.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_acceleration_structure

Method
pub fn set_acceleration_structure(self, value: AccelerationStructureNV) -> Self

Set native field accelerationStructure without native effects.

set_memory

Method
pub fn set_memory(self, value: DeviceMemory) -> Self

Set native field memory without native effects.

set_memory_offset

Method
pub fn set_memory_offset(self, value: DeviceSize) -> Self

Set native field memoryOffset without native effects.

set_device_index_count

Method
pub fn set_device_index_count(self, value: u32) -> Self

Set native count deviceIndexCount 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_device_indices

Method
pub fn set_device_indices( self, value: &'a [u32], ) -> Result<Self, ConstructionError>

Borrow pDeviceIndices and set checked native count deviceIndexCount. 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

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

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.

Stvk::BindBufferMemoryDeviceGroupInfo

pub struct BindBufferMemoryDeviceGroupInfo<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub device_index_count: u32, pub p_device_indices: *const u32, /* private fields */ }
Native structure VkBindBufferMemoryDeviceGroupInfo.

Contract

Native structure VkBindBufferMemoryDeviceGroupInfo.

Khronos reference: VkBindBufferMemoryDeviceGroupInfo

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

device_index_count

Field
device_index_count: u32

Native field deviceIndexCount.

p_device_indices

Field
p_device_indices: *const u32

Native field pDeviceIndices.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_device_index_count

Method
pub fn set_device_index_count(self, value: u32) -> Self

Set native count deviceIndexCount 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_device_indices

Method
pub fn set_device_indices( self, value: &'a [u32], ) -> Result<Self, ConstructionError>

Borrow pDeviceIndices and set checked native count deviceIndexCount. 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

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

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.

Stvk::BindBufferMemoryInfo

pub struct BindBufferMemoryInfo<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub buffer: Buffer, pub memory: DeviceMemory, pub memory_offset: DeviceSize, /* private fields */ }
Native structure VkBindBufferMemoryInfo.

Contract

Native structure VkBindBufferMemoryInfo.

Khronos reference: VkBindBufferMemoryInfo

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

buffer

Field
buffer: Buffer

Native field buffer.

memory

Field
memory: DeviceMemory

Native field memory.

memory_offset

Field
memory_offset: DeviceSize

Native field memoryOffset.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_buffer

Method
pub fn set_buffer(self, value: Buffer) -> Self

Set native field buffer without native effects.

set_memory

Method
pub fn set_memory(self, value: DeviceMemory) -> Self

Set native field memory without native effects.

set_memory_offset

Method
pub fn set_memory_offset(self, value: DeviceSize) -> Self

Set native field memoryOffset without native effects.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

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.

Stvk::BindDataGraphPipelineSessionMemoryInfoARM

pub struct BindDataGraphPipelineSessionMemoryInfoARM<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub session: DataGraphPipelineSessionARM, pub bind_point: DataGraphPipelineSessionBindPointARM, pub object_index: u32, pub memory: DeviceMemory, pub memory_offset: DeviceSize, /* private fields */ }
Native structure VkBindDataGraphPipelineSessionMemoryInfoARM.

Contract

Native structure VkBindDataGraphPipelineSessionMemoryInfoARM.

Khronos reference: VkBindDataGraphPipelineSessionMemoryInfoARM

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

session

Field
session: DataGraphPipelineSessionARM

Native field session.

bind_point

Field
bind_point: DataGraphPipelineSessionBindPointARM

Native field bindPoint.

object_index

Field
object_index: u32

Native field objectIndex.

memory

Field
memory: DeviceMemory

Native field memory.

memory_offset

Field
memory_offset: DeviceSize

Native field memoryOffset.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_session

Method
pub fn set_session(self, value: DataGraphPipelineSessionARM) -> Self

Set native field session without native effects.

set_bind_point

Method
pub fn set_bind_point(self, value: DataGraphPipelineSessionBindPointARM) -> Self

Set native field bindPoint without native effects.

set_object_index

Method
pub fn set_object_index(self, value: u32) -> Self

Set native field objectIndex without native effects.

set_memory

Method
pub fn set_memory(self, value: DeviceMemory) -> Self

Set native field memory without native effects.

set_memory_offset

Method
pub fn set_memory_offset(self, value: DeviceSize) -> Self

Set native field memoryOffset without native effects.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

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.

Stvk::BindDescriptorBufferEmbeddedSamplersInfoEXT

pub struct BindDescriptorBufferEmbeddedSamplersInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub stage_flags: ShaderStageFlags, pub layout: PipelineLayout, pub set: u32, /* private fields */ }
Native structure VkBindDescriptorBufferEmbeddedSamplersInfoEXT.

Contract

Native structure VkBindDescriptorBufferEmbeddedSamplersInfoEXT.

Khronos reference: VkBindDescriptorBufferEmbeddedSamplersInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

stage_flags

Field
stage_flags: ShaderStageFlags

Native field stageFlags.

layout

Field
layout: PipelineLayout

Native field layout.

set

Field
set: u32

Native field set.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_stage_flags

Method
pub fn set_stage_flags(self, value: ShaderStageFlags) -> Self

Set native field stageFlags without native effects.

set_layout

Method
pub fn set_layout(self, value: PipelineLayout) -> Self

Set native field layout without native effects.

set_set

Method
pub fn set_set(self, value: u32) -> Self

Set native field set without native effects.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

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.

Stvk::BindDescriptorSetsInfo

pub struct BindDescriptorSetsInfo<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub stage_flags: ShaderStageFlags, pub layout: PipelineLayout, pub first_set: u32, pub descriptor_set_count: u32, pub p_descriptor_sets: *const DescriptorSet, pub dynamic_offset_count: u32, pub p_dynamic_offsets: *const u32, /* private fields */ }
Native structure VkBindDescriptorSetsInfo.

Contract

Native structure VkBindDescriptorSetsInfo.

Khronos reference: VkBindDescriptorSetsInfo

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

stage_flags

Field
stage_flags: ShaderStageFlags

Native field stageFlags.

layout

Field
layout: PipelineLayout

Native field layout.

first_set

Field
first_set: u32

Native field firstSet.

descriptor_set_count

Field
descriptor_set_count: u32

Native field descriptorSetCount.

p_descriptor_sets

Field
p_descriptor_sets: *const DescriptorSet

Native field pDescriptorSets.

dynamic_offset_count

Field
dynamic_offset_count: u32

Native field dynamicOffsetCount.

p_dynamic_offsets

Field
p_dynamic_offsets: *const u32

Native field pDynamicOffsets.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_stage_flags

Method
pub fn set_stage_flags(self, value: ShaderStageFlags) -> Self

Set native field stageFlags without native effects.

set_layout

Method
pub fn set_layout(self, value: PipelineLayout) -> Self

Set native field layout without native effects.

set_first_set

Method
pub fn set_first_set(self, value: u32) -> Self

Set native field firstSet without native effects.

set_descriptor_set_count

Method
pub fn set_descriptor_set_count(self, value: u32) -> Self

Set native count descriptorSetCount 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_descriptor_sets

Method
pub fn set_descriptor_sets( self, value: &'a [DescriptorSet], ) -> Result<Self, ConstructionError>

Borrow pDescriptorSets and set checked native count descriptorSetCount. 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_dynamic_offset_count

Method
pub fn set_dynamic_offset_count(self, value: u32) -> Self

Set native count dynamicOffsetCount 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_dynamic_offsets

Method
pub fn set_dynamic_offsets( self, value: &'a [u32], ) -> Result<Self, ConstructionError>

Borrow pDynamicOffsets and set checked native count dynamicOffsetCount. 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

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

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.

Stvk::BindHeapInfoEXT

pub struct BindHeapInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub heap_range: DeviceAddressRangeEXT, pub reserved_range_offset: DeviceSize, pub reserved_range_size: DeviceSize, /* private fields */ }
Native structure VkBindHeapInfoEXT.

Contract

Native structure VkBindHeapInfoEXT.

Khronos reference: VkBindHeapInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

heap_range

Field
heap_range: DeviceAddressRangeEXT

Native field heapRange.

reserved_range_offset

Field
reserved_range_offset: DeviceSize

Native field reservedRangeOffset.

reserved_range_size

Field
reserved_range_size: DeviceSize

Native field reservedRangeSize.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_heap_range

Method
pub fn set_heap_range(self, value: DeviceAddressRangeEXT) -> Self

Set native field heapRange without native effects.

set_reserved_range_offset

Method
pub fn set_reserved_range_offset(self, value: DeviceSize) -> Self

Set native field reservedRangeOffset without native effects.

set_reserved_range_size

Method
pub fn set_reserved_range_size(self, value: DeviceSize) -> Self

Set native field reservedRangeSize without native effects.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

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.

Stvk::BindImageMemoryDeviceGroupInfo

pub struct BindImageMemoryDeviceGroupInfo<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub device_index_count: u32, pub p_device_indices: *const u32, pub split_instance_bind_region_count: u32, pub p_split_instance_bind_regions: *const Rect2D, /* private fields */ }
Native structure VkBindImageMemoryDeviceGroupInfo.

Contract

Native structure VkBindImageMemoryDeviceGroupInfo.

Khronos reference: VkBindImageMemoryDeviceGroupInfo

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

device_index_count

Field
device_index_count: u32

Native field deviceIndexCount.

p_device_indices

Field
p_device_indices: *const u32

Native field pDeviceIndices.

split_instance_bind_region_count

Field
split_instance_bind_region_count: u32

Native field splitInstanceBindRegionCount.

p_split_instance_bind_regions

Field
p_split_instance_bind_regions: *const Rect2D

Native field pSplitInstanceBindRegions.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_device_index_count

Method
pub fn set_device_index_count(self, value: u32) -> Self

Set native count deviceIndexCount 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_device_indices

Method
pub fn set_device_indices( self, value: &'a [u32], ) -> Result<Self, ConstructionError>

Borrow pDeviceIndices and set checked native count deviceIndexCount. 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_split_instance_bind_region_count

Method
pub fn set_split_instance_bind_region_count(self, value: u32) -> Self

Set native count splitInstanceBindRegionCount 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_split_instance_bind_regions

Method
pub fn set_split_instance_bind_regions( self, value: &'a [Rect2D], ) -> Result<Self, ConstructionError>

Borrow pSplitInstanceBindRegions and set checked native count splitInstanceBindRegionCount. 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

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

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.

Stvk::BindImageMemoryInfo

pub struct BindImageMemoryInfo<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub image: Image, pub memory: DeviceMemory, pub memory_offset: DeviceSize, /* private fields */ }
Native structure VkBindImageMemoryInfo.

Contract

Native structure VkBindImageMemoryInfo.

Khronos reference: VkBindImageMemoryInfo

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

image

Field
image: Image

Native field image.

memory

Field
memory: DeviceMemory

Native field memory.

memory_offset

Field
memory_offset: DeviceSize

Native field memoryOffset.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_image

Method
pub fn set_image(self, value: Image) -> Self

Set native field image without native effects.

set_memory

Method
pub fn set_memory(self, value: DeviceMemory) -> Self

Set native field memory without native effects.

set_memory_offset

Method
pub fn set_memory_offset(self, value: DeviceSize) -> Self

Set native field memoryOffset without native effects.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

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.

Stvk::BindImageMemorySwapchainInfoKHR

pub struct BindImageMemorySwapchainInfoKHR<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub swapchain: SwapchainKHR, pub image_index: u32, /* private fields */ }
Native structure VkBindImageMemorySwapchainInfoKHR.

Contract

Native structure VkBindImageMemorySwapchainInfoKHR.

Khronos reference: VkBindImageMemorySwapchainInfoKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

swapchain

Field
swapchain: SwapchainKHR

Native field swapchain.

image_index

Field
image_index: u32

Native field imageIndex.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_swapchain

Method
pub fn set_swapchain(self, value: SwapchainKHR) -> Self

Set native field swapchain without native effects.

set_image_index

Method
pub fn set_image_index(self, value: u32) -> Self

Set native field imageIndex without native effects.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

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.

Stvk::BindImagePlaneMemoryInfo

pub struct BindImagePlaneMemoryInfo<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub plane_aspect: ImageAspectFlagBits, /* private fields */ }
Native structure VkBindImagePlaneMemoryInfo.

Contract

Native structure VkBindImagePlaneMemoryInfo.

Khronos reference: VkBindImagePlaneMemoryInfo

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

plane_aspect

Field
plane_aspect: ImageAspectFlagBits

Native field planeAspect.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_plane_aspect

Method
pub fn set_plane_aspect(self, value: ImageAspectFlagBits) -> Self

Set native field planeAspect without native effects.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

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.

Stvk::BindIndexBuffer3InfoKHR

pub struct BindIndexBuffer3InfoKHR<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub address_range: DeviceAddressRangeKHR, pub address_flags: AddressCommandFlagsKHR, pub index_type: IndexType, /* private fields */ }
Native structure VkBindIndexBuffer3InfoKHR.

Contract

Native structure VkBindIndexBuffer3InfoKHR.

Khronos reference: VkBindIndexBuffer3InfoKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

address_range

Field
address_range: DeviceAddressRangeKHR

Native field addressRange.

address_flags

Field
address_flags: AddressCommandFlagsKHR

Native field addressFlags.

index_type

Field
index_type: IndexType

Native field indexType.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_address_range

Method
pub fn set_address_range(self, value: DeviceAddressRangeKHR) -> Self

Set native field addressRange without native effects.

set_address_flags

Method
pub fn set_address_flags(self, value: AddressCommandFlagsKHR) -> Self

Set native field addressFlags without native effects.

set_index_type

Method
pub fn set_index_type(self, value: IndexType) -> Self

Set native field indexType without native effects.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

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.

Stvk::BindIndexBufferIndirectCommandEXT

#[repr(C)]pub struct BindIndexBufferIndirectCommandEXT { pub buffer_address: DeviceAddress, pub size: u32, pub index_type: IndexType, }
Native structure VkBindIndexBufferIndirectCommandEXT.

Contract

Native structure VkBindIndexBufferIndirectCommandEXT.

Khronos reference: VkBindIndexBufferIndirectCommandEXT

Fields

buffer_address

Field
buffer_address: DeviceAddress

Native field bufferAddress.

size

Field
size: u32

Native field size.

index_type

Field
index_type: IndexType

Native field indexType.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_buffer_address

Method
pub fn set_buffer_address(self, value: DeviceAddress) -> Self

Set native field bufferAddress without native effects.

set_size

Method
pub fn set_size(self, value: u32) -> Self

Set native field size without native effects.

set_index_type

Method
pub fn set_index_type(self, value: IndexType) -> Self

Set native field indexType without native effects.

clone

Method
fn clone(&self) -> BindIndexBufferIndirectCommandEXT
Returns a duplicate of the value. Read more