Realm

vk · Structs · M3

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

StRustExperimental

Stvk::MemoryPropertyFlagBits

Contract

Open integer representation of VkMemoryPropertyFlagBits.

Khronos reference: VkMemoryPropertyFlagBits

Fields

0

Field
0: u32
No public source comment is attached to this declaration.

Methods and associated items

from_raw

Method
pub const fn from_raw(value: u32) -> Self
No public source comment is attached to this declaration.

as_raw

Method
pub const fn as_raw(self) -> u32
No public source comment is attached to this declaration.

empty

Method
pub const fn empty() -> Self
No public source comment is attached to this declaration.

Output

Method
type Output = MemoryPropertyFlagBits
The resulting type after applying the & operator.

Output-1

Method
type Output = MemoryPropertyFlagBits
The resulting type after applying the | operator.

Output-2

Method
type Output = MemoryPropertyFlagBits
The resulting type after applying the ^ operator.

clone

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

fmt

Method
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Formats the value using the given formatter. Read more

default

Method
fn default() -> MemoryPropertyFlagBits
Returns the “default value” for a type. Read more

Output-3

Method
type Output = MemoryPropertyFlagBits
The resulting type after applying the ! operator.

eq

Method
fn eq(&self, other: &MemoryPropertyFlagBits) -> bool
Tests for self and other values to be equal, and is used by ==.

Stvk::MemoryRangeBarrierKHR

pub struct MemoryRangeBarrierKHR<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub src_stage_mask: PipelineStageFlags2, pub src_access_mask: AccessFlags2, pub dst_stage_mask: PipelineStageFlags2, pub dst_access_mask: AccessFlags2, pub src_queue_family_index: u32, pub dst_queue_family_index: u32, pub address_range: DeviceAddressRangeKHR, pub address_flags: AddressCommandFlagsKHR, /* private fields */ }
Native structure VkMemoryRangeBarrierKHR.

Contract

Native structure VkMemoryRangeBarrierKHR.

Khronos reference: VkMemoryRangeBarrierKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

src_stage_mask

Field
src_stage_mask: PipelineStageFlags2

Native field srcStageMask.

src_access_mask

Field
src_access_mask: AccessFlags2

Native field srcAccessMask.

dst_stage_mask

Field
dst_stage_mask: PipelineStageFlags2

Native field dstStageMask.

dst_access_mask

Field
dst_access_mask: AccessFlags2

Native field dstAccessMask.

src_queue_family_index

Field
src_queue_family_index: u32

Native field srcQueueFamilyIndex.

dst_queue_family_index

Field
dst_queue_family_index: u32

Native field dstQueueFamilyIndex.

address_range

Field
address_range: DeviceAddressRangeKHR

Native field addressRange.

address_flags

Field
address_flags: AddressCommandFlagsKHR

Native field addressFlags.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_src_stage_mask

Method
pub fn set_src_stage_mask(self, value: PipelineStageFlags2) -> Self

Set native field srcStageMask without native effects.

set_src_access_mask

Method
pub fn set_src_access_mask(self, value: AccessFlags2) -> Self

Set native field srcAccessMask without native effects.

set_dst_stage_mask

Method
pub fn set_dst_stage_mask(self, value: PipelineStageFlags2) -> Self

Set native field dstStageMask without native effects.

set_dst_access_mask

Method
pub fn set_dst_access_mask(self, value: AccessFlags2) -> Self

Set native field dstAccessMask without native effects.

set_src_queue_family_index

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

Set native field srcQueueFamilyIndex without native effects.

set_dst_queue_family_index

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

Set native field dstQueueFamilyIndex without native effects.

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.

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::MemoryRangeBarriersInfoKHR

pub struct MemoryRangeBarriersInfoKHR<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub memory_range_barrier_count: u32, pub p_memory_range_barriers: *const MemoryRangeBarrierKHR<'a>, /* private fields */ }
Native structure VkMemoryRangeBarriersInfoKHR.

Contract

Native structure VkMemoryRangeBarriersInfoKHR.

Khronos reference: VkMemoryRangeBarriersInfoKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

memory_range_barrier_count

Field
memory_range_barrier_count: u32

Native field memoryRangeBarrierCount.

p_memory_range_barriers

Field
p_memory_range_barriers: *const MemoryRangeBarrierKHR<'a>

Native field pMemoryRangeBarriers.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_memory_range_barrier_count

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

Set native count memoryRangeBarrierCount 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_memory_range_barriers

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

Borrow pMemoryRangeBarriers and set checked native count memoryRangeBarrierCount. 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::MemoryRequirements

Contract

Native structure VkMemoryRequirements.

Khronos reference: VkMemoryRequirements

Fields

size

Field
size: DeviceSize

Native field size.

alignment

Field
alignment: DeviceSize

Native field alignment.

memory_type_bits

Field
memory_type_bits: u32

Native field memoryTypeBits.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_size

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

Set native field size without native effects.

set_alignment

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

Set native field alignment without native effects.

set_memory_type_bits

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

Set native field memoryTypeBits without native effects.

Stvk::MemoryRequirements2

pub struct MemoryRequirements2<'a> { pub s_type: StructureType, pub p_next: *mut c_void, pub memory_requirements: MemoryRequirements, /* private fields */ }
Native structure VkMemoryRequirements2.

Contract

Native structure VkMemoryRequirements2.

Khronos reference: VkMemoryRequirements2

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *mut c_void

Native field pNext.

memory_requirements

Field
memory_requirements: MemoryRequirements

Native field memoryRequirements.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_memory_requirements

Method
pub fn set_memory_requirements(self, value: MemoryRequirements) -> Self

Set native field memoryRequirements 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::MemoryToImageCopy

pub struct MemoryToImageCopy<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub p_host_pointer: *const c_void, pub memory_row_length: u32, pub memory_image_height: u32, pub image_subresource: ImageSubresourceLayers, pub image_offset: Offset3D, pub image_extent: Extent3D, /* private fields */ }
Native structure VkMemoryToImageCopy.

Contract

Native structure VkMemoryToImageCopy.

Khronos reference: VkMemoryToImageCopy

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

p_host_pointer

Field
p_host_pointer: *const c_void

Native field pHostPointer.

memory_row_length

Field
memory_row_length: u32

Native field memoryRowLength.

memory_image_height

Field
memory_image_height: u32

Native field memoryImageHeight.

image_subresource

Field
image_subresource: ImageSubresourceLayers

Native field imageSubresource.

image_offset

Field
image_offset: Offset3D

Native field imageOffset.

image_extent

Field
image_extent: Extent3D

Native field imageExtent.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_host_pointer

Method
pub unsafe fn set_host_pointer(self, value: *const c_void) -> Self

Set native pointer pHostPointer 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.

set_memory_row_length

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

Set native field memoryRowLength without native effects.

set_memory_image_height

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

Set native field memoryImageHeight without native effects.

set_image_subresource

Method
pub fn set_image_subresource(self, value: ImageSubresourceLayers) -> Self

Set native field imageSubresource without native effects.

set_image_offset

Method
pub fn set_image_offset(self, value: Offset3D) -> Self

Set native field imageOffset without native effects.

set_image_extent

Method
pub fn set_image_extent(self, value: Extent3D) -> Self

Set native field imageExtent 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::MemoryType

Contract

Native structure VkMemoryType.

Khronos reference: VkMemoryType

Fields

property_flags

Field
property_flags: MemoryPropertyFlags

Native field propertyFlags.

heap_index

Field
heap_index: u32

Native field heapIndex.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_property_flags

Method
pub fn set_property_flags(self, value: MemoryPropertyFlags) -> Self

Set native field propertyFlags without native effects.

set_heap_index

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

Set native field heapIndex without native effects.

Stvk::MemoryUnmapFlagBits

Contract

Open integer representation of VkMemoryUnmapFlagBits.

Khronos reference: VkMemoryUnmapFlagBits

Fields

0

Field
0: u32
No public source comment is attached to this declaration.

Methods and associated items

from_raw

Method
pub const fn from_raw(value: u32) -> Self
No public source comment is attached to this declaration.

as_raw

Method
pub const fn as_raw(self) -> u32
No public source comment is attached to this declaration.

empty

Method
pub const fn empty() -> Self
No public source comment is attached to this declaration.

Output

Method
type Output = MemoryUnmapFlagBits
The resulting type after applying the & operator.

Output-1

Method
type Output = MemoryUnmapFlagBits
The resulting type after applying the | operator.

Output-2

Method
type Output = MemoryUnmapFlagBits
The resulting type after applying the ^ operator.

fmt

Method
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Formats the value using the given formatter. Read more

default

Method
fn default() -> MemoryUnmapFlagBits
Returns the “default value” for a type. Read more

Output-3

Method
type Output = MemoryUnmapFlagBits
The resulting type after applying the ! operator.

eq

Method
fn eq(&self, other: &MemoryUnmapFlagBits) -> bool
Tests for self and other values to be equal, and is used by ==.

Stvk::MemoryUnmapInfo

pub struct MemoryUnmapInfo<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub flags: MemoryUnmapFlags, pub memory: DeviceMemory, /* private fields */ }
Native structure VkMemoryUnmapInfo.

Contract

Native structure VkMemoryUnmapInfo.

Khronos reference: VkMemoryUnmapInfo

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

flags

Field
flags: MemoryUnmapFlags

Native field flags.

memory

Field
memory: DeviceMemory

Native field memory.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_flags

Method
pub fn set_flags(self, value: MemoryUnmapFlags) -> Self

Set native field flags without native effects.

set_memory

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

Set native field memory 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::MemoryWin32HandlePropertiesKHR

pub struct MemoryWin32HandlePropertiesKHR<'a> { pub s_type: StructureType, pub p_next: *mut c_void, pub memory_type_bits: u32, /* private fields */ }
Native structure VkMemoryWin32HandlePropertiesKHR.

Contract

Native structure VkMemoryWin32HandlePropertiesKHR.

Khronos reference: VkMemoryWin32HandlePropertiesKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *mut c_void

Native field pNext.

memory_type_bits

Field
memory_type_bits: u32

Native field memoryTypeBits.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_memory_type_bits

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

Set native field memoryTypeBits 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::MemoryZirconHandlePropertiesFUCHSIA

pub struct MemoryZirconHandlePropertiesFUCHSIA<'a> { pub s_type: StructureType, pub p_next: *mut c_void, pub memory_type_bits: u32, /* private fields */ }
Native structure VkMemoryZirconHandlePropertiesFUCHSIA.

Contract

Native structure VkMemoryZirconHandlePropertiesFUCHSIA.

Khronos reference: VkMemoryZirconHandlePropertiesFUCHSIA

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *mut c_void

Native field pNext.

memory_type_bits

Field
memory_type_bits: u32

Native field memoryTypeBits.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_memory_type_bits

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

Set native field memoryTypeBits 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::MetalSurfaceCreateFlagsEXT

Contract

Open integer representation of VkMetalSurfaceCreateFlagsEXT.

Khronos reference: VkMetalSurfaceCreateFlagsEXT

Fields

0

Field
0: u32
No public source comment is attached to this declaration.

Methods and associated items

from_raw

Method
pub const fn from_raw(value: u32) -> Self
No public source comment is attached to this declaration.

as_raw

Method
pub const fn as_raw(self) -> u32
No public source comment is attached to this declaration.

empty

Method
pub const fn empty() -> Self
No public source comment is attached to this declaration.

Output

Method
type Output = MetalSurfaceCreateFlagsEXT
The resulting type after applying the & operator.

Output-1

Method
type Output = MetalSurfaceCreateFlagsEXT
The resulting type after applying the | operator.

Output-2

Method
type Output = MetalSurfaceCreateFlagsEXT
The resulting type after applying the ^ operator.

clone

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

fmt

Method
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Formats the value using the given formatter. Read more

default

Method
fn default() -> MetalSurfaceCreateFlagsEXT
Returns the “default value” for a type. Read more

Output-3

Method
type Output = MetalSurfaceCreateFlagsEXT
The resulting type after applying the ! operator.

eq

Method
fn eq(&self, other: &MetalSurfaceCreateFlagsEXT) -> bool
Tests for self and other values to be equal, and is used by ==.

Stvk::MetalSurfaceCreateInfoEXT

pub struct MetalSurfaceCreateInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub flags: MetalSurfaceCreateFlagsEXT, pub p_layer: *const CAMetalLayer, /* private fields */ }
Native structure VkMetalSurfaceCreateInfoEXT.

Contract

Native structure VkMetalSurfaceCreateInfoEXT.

Khronos reference: VkMetalSurfaceCreateInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

flags

Field
flags: MetalSurfaceCreateFlagsEXT

Native field flags.

p_layer

Field
p_layer: *const CAMetalLayer

Native field pLayer.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_flags

Method
pub fn set_flags(self, value: MetalSurfaceCreateFlagsEXT) -> Self

Set native field flags without native effects.

set_layer

Method
pub unsafe fn set_layer(self, value: *const CAMetalLayer) -> Self

Set native pointer pLayer 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

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::MicromapBuildInfoEXT

pub struct MicromapBuildInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub type: MicromapTypeEXT, pub flags: BuildMicromapFlagsEXT, pub mode: BuildMicromapModeEXT, pub dst_micromap: MicromapEXT, pub usage_counts_count: u32, pub p_usage_counts: *const MicromapUsageEXT, pub pp_usage_counts: *const *const MicromapUsageEXT, pub data: DeviceOrHostAddressConstKHR, pub scratch_data: DeviceOrHostAddressKHR, pub triangle_array: DeviceOrHostAddressConstKHR, pub triangle_array_stride: DeviceSize, /* private fields */ }
Native structure VkMicromapBuildInfoEXT.

Contract

Native structure VkMicromapBuildInfoEXT.

Khronos reference: VkMicromapBuildInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

type

Field
type: MicromapTypeEXT

Native field type.

flags

Field
flags: BuildMicromapFlagsEXT

Native field flags.

mode

Field
mode: BuildMicromapModeEXT

Native field mode.

dst_micromap

Field
dst_micromap: MicromapEXT

Native field dstMicromap.

usage_counts_count

Field
usage_counts_count: u32

Native field usageCountsCount.

p_usage_counts

Field
p_usage_counts: *const MicromapUsageEXT

Native field pUsageCounts.

pp_usage_counts

Field
pp_usage_counts: *const *const MicromapUsageEXT

Native field ppUsageCounts.

data

Field
data: DeviceOrHostAddressConstKHR

Native field data.

scratch_data

Field
scratch_data: DeviceOrHostAddressKHR

Native field scratchData.

triangle_array

Field
triangle_array: DeviceOrHostAddressConstKHR

Native field triangleArray.

triangle_array_stride

Field
triangle_array_stride: DeviceSize

Native field triangleArrayStride.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_type

Method
pub fn set_type(self, value: MicromapTypeEXT) -> Self

Set native field type without native effects.

set_flags

Method
pub fn set_flags(self, value: BuildMicromapFlagsEXT) -> Self

Set native field flags without native effects.

set_mode

Method
pub fn set_mode(self, value: BuildMicromapModeEXT) -> Self

Set native field mode without native effects.

set_dst_micromap

Method
pub fn set_dst_micromap(self, value: MicromapEXT) -> Self

Set native field dstMicromap without native effects.

set_usage_counts_count

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

Set native count usageCountsCount 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_usage_counts

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

Borrow pUsageCounts and set checked native count usageCountsCount. 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_usage_counts

Method
pub fn set_pp_usage_counts( self, value: &'a [*const MicromapUsageEXT], ) -> Result<Self, ConstructionError>

Borrow ppUsageCounts and set checked native count usageCountsCount. 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_data

Method
pub fn set_data(self, value: DeviceOrHostAddressConstKHR) -> Self

Set native field data without native effects.

set_scratch_data

Method
pub fn set_scratch_data(self, value: DeviceOrHostAddressKHR) -> Self

Set native field scratchData without native effects.

set_triangle_array

Method
pub fn set_triangle_array(self, value: DeviceOrHostAddressConstKHR) -> Self

Set native field triangleArray without native effects.

set_triangle_array_stride

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

Set native field triangleArrayStride 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::MicromapBuildSizesInfoEXT

pub struct MicromapBuildSizesInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub micromap_size: DeviceSize, pub build_scratch_size: DeviceSize, pub discardable: Bool32, /* private fields */ }
Native structure VkMicromapBuildSizesInfoEXT.

Contract

Native structure VkMicromapBuildSizesInfoEXT.

Khronos reference: VkMicromapBuildSizesInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

micromap_size

Field
micromap_size: DeviceSize

Native field micromapSize.

build_scratch_size

Field
build_scratch_size: DeviceSize

Native field buildScratchSize.

discardable

Field
discardable: Bool32

Native field discardable.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_micromap_size

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

Set native field micromapSize without native effects.

set_build_scratch_size

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

Set native field buildScratchSize without native effects.

set_discardable

Method
pub fn set_discardable(self, value: Bool32) -> Self

Set native field discardable 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::MicromapCreateFlagBitsEXT

Contract

Open integer representation of VkMicromapCreateFlagBitsEXT.

Khronos reference: VkMicromapCreateFlagBitsEXT

Fields

0

Field
0: u32
No public source comment is attached to this declaration.

Methods and associated items

from_raw

Method
pub const fn from_raw(value: u32) -> Self
No public source comment is attached to this declaration.

as_raw

Method
pub const fn as_raw(self) -> u32
No public source comment is attached to this declaration.

empty

Method
pub const fn empty() -> Self
No public source comment is attached to this declaration.

Output

Method
type Output = MicromapCreateFlagBitsEXT
The resulting type after applying the & operator.

Output-1

Method
type Output = MicromapCreateFlagBitsEXT
The resulting type after applying the | operator.

Output-2

Method
type Output = MicromapCreateFlagBitsEXT
The resulting type after applying the ^ operator.

clone

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

fmt

Method
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Formats the value using the given formatter. Read more

default

Method
fn default() -> MicromapCreateFlagBitsEXT
Returns the “default value” for a type. Read more

Output-3

Method
type Output = MicromapCreateFlagBitsEXT
The resulting type after applying the ! operator.

eq

Method
fn eq(&self, other: &MicromapCreateFlagBitsEXT) -> bool
Tests for self and other values to be equal, and is used by ==.