Realm

vk · Structs · M4

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

StRustExperimental

Stvk::MicromapCreateInfoEXT

pub struct MicromapCreateInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub create_flags: MicromapCreateFlagsEXT, pub buffer: Buffer, pub offset: DeviceSize, pub size: DeviceSize, pub type: MicromapTypeEXT, pub device_address: DeviceAddress, /* private fields */ }
Native structure VkMicromapCreateInfoEXT.

Contract

Native structure VkMicromapCreateInfoEXT.

Khronos reference: VkMicromapCreateInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

create_flags

Field
create_flags: MicromapCreateFlagsEXT

Native field createFlags.

buffer

Field
buffer: Buffer

Native field buffer.

offset

Field
offset: DeviceSize

Native field offset.

size

Field
size: DeviceSize

Native field size.

type

Field
type: MicromapTypeEXT

Native field type.

device_address

Field
device_address: DeviceAddress

Native field deviceAddress.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_create_flags

Method
pub fn set_create_flags(self, value: MicromapCreateFlagsEXT) -> Self

Set native field createFlags without native effects.

set_buffer

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

Set native field buffer without native effects.

set_offset

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

Set native field offset without native effects.

set_size

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

Set native field size without native effects.

set_type

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

Set native field type without native effects.

set_device_address

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

Set native field deviceAddress 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::MicromapEXT

Contract

Raw Vulkan handle VkMicromapEXT.

Khronos reference: VkMicromapEXT Calls using this identity must satisfy Vulkan lifetime and synchronization rules.

Fields

0

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

Methods and associated items

NULL

Method
pub const NULL: Self
No public source comment is attached to this declaration.

is_null

Method
pub fn is_null(self) -> bool
No public source comment is attached to this declaration.

from_raw

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

as_raw

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

fmt

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

eq

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

Stvk::MicromapTriangleKHR

Contract

Native structure VkMicromapTriangleKHR.

Khronos reference: VkMicromapTriangleKHR

Fields

data_offset

Field
data_offset: u32

Native field dataOffset.

subdivision_level

Field
subdivision_level: u16

Native field subdivisionLevel.

format

Field
format: u16

Native field format.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_data_offset

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

Set native field dataOffset without native effects.

set_subdivision_level

Method
pub fn set_subdivision_level(self, value: u16) -> Self

Set native field subdivisionLevel without native effects.

set_format

Method
pub fn set_format(self, value: u16) -> Self

Set native field format without native effects.

Stvk::MicromapTypeEXT

Contract

Open integer representation of VkMicromapTypeEXT.

Khronos reference: VkMicromapTypeEXT

Fields

0

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

Methods and associated items

from_raw

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

as_raw

Method
pub const fn as_raw(self) -> i32
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.

fmt

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

default

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

eq

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

Stvk::MicromapUsageEXT

Contract

Native structure VkMicromapUsageEXT.

Khronos reference: VkMicromapUsageEXT

Fields

count

Field
count: u32

Native field count.

subdivision_level

Field
subdivision_level: u32

Native field subdivisionLevel.

format

Field
format: u32

Native field format.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_count

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

Set native field count without native effects.

set_subdivision_level

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

Set native field subdivisionLevel without native effects.

set_format

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

Set native field format without native effects.

Stvk::MicromapUsageKHR

Contract

Native structure VkMicromapUsageKHR.

Khronos reference: VkMicromapUsageKHR

Fields

count

Field
count: u32

Native field count.

subdivision_level

Field
subdivision_level: u32

Native field subdivisionLevel.

format

Field
format: OpacityMicromapFormatKHR

Native field format.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_count

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

Set native field count without native effects.

set_subdivision_level

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

Set native field subdivisionLevel without native effects.

set_format

Method
pub fn set_format(self, value: OpacityMicromapFormatKHR) -> Self

Set native field format without native effects.

Stvk::MicromapVersionInfoEXT

pub struct MicromapVersionInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub p_version_data: *const u8, /* private fields */ }
Native structure VkMicromapVersionInfoEXT.

Contract

Native structure VkMicromapVersionInfoEXT.

Khronos reference: VkMicromapVersionInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

p_version_data

Field
p_version_data: *const u8

Native field pVersionData.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_version_data

Method
pub fn set_version_data(self, value: &'a [u8; 32]) -> Self

Borrow the two UUIDs required by the native version-data extent.

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

Contract

Native structure VkMultiDrawIndexedInfoEXT.

Khronos reference: VkMultiDrawIndexedInfoEXT

Fields

first_index

Field
first_index: u32

Native field firstIndex.

index_count

Field
index_count: u32

Native field indexCount.

vertex_offset

Field
vertex_offset: i32

Native field vertexOffset.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_first_index

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

Set native field firstIndex without native effects.

set_index_count

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

Set native field indexCount without native effects.

set_vertex_offset

Method
pub fn set_vertex_offset(self, value: i32) -> Self

Set native field vertexOffset without native effects.

clone

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

Stvk::MultiDrawInfoEXT

Contract

Native structure VkMultiDrawInfoEXT.

Khronos reference: VkMultiDrawInfoEXT

Fields

first_vertex

Field
first_vertex: u32

Native field firstVertex.

vertex_count

Field
vertex_count: u32

Native field vertexCount.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_first_vertex

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

Set native field firstVertex without native effects.

set_vertex_count

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

Set native field vertexCount without native effects.

Stvk::MultisampledRenderToSingleSampledInfoEXT

pub struct MultisampledRenderToSingleSampledInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub multisampled_render_to_single_sampled_enable: Bool32, pub rasterization_samples: SampleCountFlagBits, /* private fields */ }
Native structure VkMultisampledRenderToSingleSampledInfoEXT.

Contract

Native structure VkMultisampledRenderToSingleSampledInfoEXT.

Khronos reference: VkMultisampledRenderToSingleSampledInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

multisampled_render_to_single_sampled_enable

Field
multisampled_render_to_single_sampled_enable: Bool32

Native field multisampledRenderToSingleSampledEnable.

rasterization_samples

Field
rasterization_samples: SampleCountFlagBits

Native field rasterizationSamples.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_multisampled_render_to_single_sampled_enable

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

Set native field multisampledRenderToSingleSampledEnable without native effects.

set_rasterization_samples

Method
pub fn set_rasterization_samples(self, value: SampleCountFlagBits) -> Self

Set native field rasterizationSamples 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::MultisamplePropertiesEXT

pub struct MultisamplePropertiesEXT<'a> { pub s_type: StructureType, pub p_next: *mut c_void, pub max_sample_location_grid_size: Extent2D, /* private fields */ }
Native structure VkMultisamplePropertiesEXT.

Contract

Native structure VkMultisamplePropertiesEXT.

Khronos reference: VkMultisamplePropertiesEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *mut c_void

Native field pNext.

max_sample_location_grid_size

Field
max_sample_location_grid_size: Extent2D

Native field maxSampleLocationGridSize.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_max_sample_location_grid_size

Method
pub fn set_max_sample_location_grid_size(self, value: Extent2D) -> Self

Set native field maxSampleLocationGridSize 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::MultiviewPerViewAttributesInfoNVX

pub struct MultiviewPerViewAttributesInfoNVX<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub per_view_attributes: Bool32, pub per_view_attributes_position_x_only: Bool32, /* private fields */ }
Native structure VkMultiviewPerViewAttributesInfoNVX.

Contract

Native structure VkMultiviewPerViewAttributesInfoNVX.

Khronos reference: VkMultiviewPerViewAttributesInfoNVX

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

per_view_attributes

Field
per_view_attributes: Bool32

Native field perViewAttributes.

per_view_attributes_position_x_only

Field
per_view_attributes_position_x_only: Bool32

Native field perViewAttributesPositionXOnly.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_per_view_attributes

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

Set native field perViewAttributes without native effects.

set_per_view_attributes_position_x_only

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

Set native field perViewAttributesPositionXOnly 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::MultiviewPerViewRenderAreasRenderPassBeginInfoQCOM

pub struct MultiviewPerViewRenderAreasRenderPassBeginInfoQCOM<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub per_view_render_area_count: u32, pub p_per_view_render_areas: *const Rect2D, /* private fields */ }
Native structure VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM.

Contract

Native structure VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM.

Khronos reference: VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

per_view_render_area_count

Field
per_view_render_area_count: u32

Native field perViewRenderAreaCount.

p_per_view_render_areas

Field
p_per_view_render_areas: *const Rect2D

Native field pPerViewRenderAreas.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_per_view_render_area_count

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

Set native count perViewRenderAreaCount 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_per_view_render_areas

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

Borrow pPerViewRenderAreas and set checked native count perViewRenderAreaCount. 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::MutableDescriptorTypeCreateInfoEXT

pub struct MutableDescriptorTypeCreateInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub mutable_descriptor_type_list_count: u32, pub p_mutable_descriptor_type_lists: *const MutableDescriptorTypeListEXT<'a>, /* private fields */ }
Native structure VkMutableDescriptorTypeCreateInfoEXT.

Contract

Native structure VkMutableDescriptorTypeCreateInfoEXT.

Khronos reference: VkMutableDescriptorTypeCreateInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

mutable_descriptor_type_list_count

Field
mutable_descriptor_type_list_count: u32

Native field mutableDescriptorTypeListCount.

p_mutable_descriptor_type_lists

Field
p_mutable_descriptor_type_lists: *const MutableDescriptorTypeListEXT<'a>

Native field pMutableDescriptorTypeLists.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_mutable_descriptor_type_list_count

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

Set native count mutableDescriptorTypeListCount 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_mutable_descriptor_type_lists

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

Borrow pMutableDescriptorTypeLists and set checked native count mutableDescriptorTypeListCount. 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::MutableDescriptorTypeListEXT

pub struct MutableDescriptorTypeListEXT<'a> { pub descriptor_type_count: u32, pub p_descriptor_types: *const DescriptorType, /* private fields */ }
Native structure VkMutableDescriptorTypeListEXT.

Contract

Native structure VkMutableDescriptorTypeListEXT.

Khronos reference: VkMutableDescriptorTypeListEXT

Fields

descriptor_type_count

Field
descriptor_type_count: u32

Native field descriptorTypeCount.

p_descriptor_types

Field
p_descriptor_types: *const DescriptorType

Native field pDescriptorTypes.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_descriptor_type_count

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

Set native count descriptorTypeCount 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_types

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

Borrow pDescriptorTypes and set checked native count descriptorTypeCount. 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.

clone

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