Realm

vk · Structs · D9

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

StRustExperimental

Stvk::DeviceFaultAddressInfoKHR

#[repr(C)]pub struct DeviceFaultAddressInfoKHR { pub address_type: DeviceFaultAddressTypeKHR, pub reported_address: DeviceAddress, pub address_precision: DeviceSize, }
Native structure VkDeviceFaultAddressInfoKHR.

Contract

Native structure VkDeviceFaultAddressInfoKHR.

Khronos reference: VkDeviceFaultAddressInfoKHR

Fields

address_type

Field
address_type: DeviceFaultAddressTypeKHR

Native field addressType.

reported_address

Field
reported_address: DeviceAddress

Native field reportedAddress.

address_precision

Field
address_precision: DeviceSize

Native field addressPrecision.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_address_type

Method
pub fn set_address_type(self, value: DeviceFaultAddressTypeKHR) -> Self

Set native field addressType without native effects.

set_reported_address

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

Set native field reportedAddress without native effects.

set_address_precision

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

Set native field addressPrecision without native effects.

clone

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

Stvk::DeviceFaultAddressTypeKHR

Contract

Open integer representation of VkDeviceFaultAddressTypeKHR.

Khronos reference: VkDeviceFaultAddressTypeKHR

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.

clone

Method
fn clone(&self) -> DeviceFaultAddressTypeKHR
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() -> DeviceFaultAddressTypeKHR
Returns the “default value” for a type. Read more

eq

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

Stvk::DeviceFaultCountsEXT

pub struct DeviceFaultCountsEXT<'a> { pub s_type: StructureType, pub p_next: *mut c_void, pub address_info_count: u32, pub vendor_info_count: u32, pub vendor_binary_size: DeviceSize, /* private fields */ }
Native structure VkDeviceFaultCountsEXT.

Contract

Native structure VkDeviceFaultCountsEXT.

Khronos reference: VkDeviceFaultCountsEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *mut c_void

Native field pNext.

address_info_count

Field
address_info_count: u32

Native field addressInfoCount.

vendor_info_count

Field
vendor_info_count: u32

Native field vendorInfoCount.

vendor_binary_size

Field
vendor_binary_size: DeviceSize

Native field vendorBinarySize.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_address_info_count

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

Set native field addressInfoCount without native effects.

set_vendor_info_count

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

Set native field vendorInfoCount without native effects.

set_vendor_binary_size

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

Set native field vendorBinarySize 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::DeviceFaultDebugInfoKHR

pub struct DeviceFaultDebugInfoKHR<'a> { pub s_type: StructureType, pub p_next: *mut c_void, pub vendor_binary_size: u32, pub p_vendor_binary_data: *mut c_void, /* private fields */ }
Native structure VkDeviceFaultDebugInfoKHR.

Contract

Native structure VkDeviceFaultDebugInfoKHR.

Khronos reference: VkDeviceFaultDebugInfoKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *mut c_void

Native field pNext.

vendor_binary_size

Field
vendor_binary_size: u32

Native field vendorBinarySize.

p_vendor_binary_data

Field
p_vendor_binary_data: *mut c_void

Native field pVendorBinaryData.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_vendor_binary_size

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

Set native count vendorBinarySize 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_vendor_binary_data

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

Borrow pVendorBinaryData and set checked native byte size vendorBinarySize. 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::DeviceFaultFlagBitsKHR

Contract

Open integer representation of VkDeviceFaultFlagBitsKHR.

Khronos reference: VkDeviceFaultFlagBitsKHR

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 = DeviceFaultFlagBitsKHR
The resulting type after applying the & operator.

Output-1

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

Output-2

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

clone

Method
fn clone(&self) -> DeviceFaultFlagBitsKHR
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() -> DeviceFaultFlagBitsKHR
Returns the “default value” for a type. Read more

Output-3

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

eq

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

Stvk::DeviceFaultInfoEXT

pub struct DeviceFaultInfoEXT<'a> { pub s_type: StructureType, pub p_next: *mut c_void, pub description: [c_char; 256], pub p_address_infos: *mut DeviceFaultAddressInfoKHR, pub p_vendor_infos: *mut DeviceFaultVendorInfoKHR, pub p_vendor_binary_data: *mut c_void, /* private fields */ }
Native structure VkDeviceFaultInfoEXT.

Contract

Native structure VkDeviceFaultInfoEXT.

Khronos reference: VkDeviceFaultInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *mut c_void

Native field pNext.

description

Field
description: [c_char; 256]

Native field description.

p_address_infos

Field
p_address_infos: *mut DeviceFaultAddressInfoKHR

Native field pAddressInfos.

p_vendor_infos

Field
p_vendor_infos: *mut DeviceFaultVendorInfoKHR

Native field pVendorInfos.

p_vendor_binary_data

Field
p_vendor_binary_data: *mut c_void

Native field pVendorBinaryData.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_description

Method
pub fn set_description(self, value: [c_char; 256]) -> Self

Set native field description without native effects.

set_buffers

Method
pub fn set_buffers( self, counts: &mut DeviceFaultCountsEXT<'_>, address_infos: &'a mut [DeviceFaultAddressInfoKHR], vendor_infos: &'a mut [DeviceFaultVendorInfoKHR], vendor_binary_data: &'a mut [u8], ) -> Result<Self, ConstructionError>

Borrow initialized fault buffers and set capacities in the accompanying counts record. Pass that same counts record to the native query, without increasing capacities. Only the buffers are retained by this record’s lifetime; the native query may change reported counts, which must be bounded before reading returned data.

Errors

Returns count overflow before changing the counts record or borrowed storage.

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

pub struct DeviceFaultInfoKHR<'a> { pub s_type: StructureType, pub p_next: *mut c_void, pub flags: DeviceFaultFlagsKHR, pub group_id: u64, pub description: [c_char; 256], pub fault_address_info: DeviceFaultAddressInfoKHR, pub instruction_address_info: DeviceFaultAddressInfoKHR, pub vendor_info: DeviceFaultVendorInfoKHR, /* private fields */ }
Native structure VkDeviceFaultInfoKHR.

Contract

Native structure VkDeviceFaultInfoKHR.

Khronos reference: VkDeviceFaultInfoKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *mut c_void

Native field pNext.

flags

Field
flags: DeviceFaultFlagsKHR

Native field flags.

group_id

Field
group_id: u64

Native field groupId.

description

Field
description: [c_char; 256]

Native field description.

fault_address_info

Field
fault_address_info: DeviceFaultAddressInfoKHR

Native field faultAddressInfo.

instruction_address_info

Field
instruction_address_info: DeviceFaultAddressInfoKHR

Native field instructionAddressInfo.

vendor_info

Field
vendor_info: DeviceFaultVendorInfoKHR

Native field vendorInfo.

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: DeviceFaultFlagsKHR) -> Self

Set native field flags without native effects.

set_group_id

Method
pub fn set_group_id(self, value: u64) -> Self

Set native field groupId without native effects.

set_description

Method
pub fn set_description(self, value: [c_char; 256]) -> Self

Set native field description without native effects.

set_fault_address_info

Method
pub fn set_fault_address_info(self, value: DeviceFaultAddressInfoKHR) -> Self

Set native field faultAddressInfo without native effects.

set_instruction_address_info

Method
pub fn set_instruction_address_info( self, value: DeviceFaultAddressInfoKHR, ) -> Self

Set native field instructionAddressInfo without native effects.

set_vendor_info

Method
pub fn set_vendor_info(self, value: DeviceFaultVendorInfoKHR) -> Self

Set native field vendorInfo 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::DeviceFaultShaderAbortMessageInfoKHR

pub struct DeviceFaultShaderAbortMessageInfoKHR<'a> { pub s_type: StructureType, pub p_next: *mut c_void, pub message_data_size: u64, pub p_message_data: *mut c_void, /* private fields */ }
Native structure VkDeviceFaultShaderAbortMessageInfoKHR.

Contract

Native structure VkDeviceFaultShaderAbortMessageInfoKHR.

Khronos reference: VkDeviceFaultShaderAbortMessageInfoKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *mut c_void

Native field pNext.

message_data_size

Field
message_data_size: u64

Native field messageDataSize.

p_message_data

Field
p_message_data: *mut c_void

Native field pMessageData.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_message_data_size

Method
pub fn set_message_data_size(self, value: u64) -> Self

Set native count messageDataSize 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_message_data

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

Borrow pMessageData and set checked native byte size messageDataSize. 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::DeviceFaultVendorBinaryHeaderVersionKHR

Contract

Open integer representation of VkDeviceFaultVendorBinaryHeaderVersionKHR.

Khronos reference: VkDeviceFaultVendorBinaryHeaderVersionKHR

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.

clone

Method
fn clone(&self) -> DeviceFaultVendorBinaryHeaderVersionKHR
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() -> DeviceFaultVendorBinaryHeaderVersionKHR
Returns the “default value” for a type. Read more

eq

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

Stvk::DeviceFaultVendorBinaryHeaderVersionOneKHR

#[repr(C)]pub struct DeviceFaultVendorBinaryHeaderVersionOneKHR { pub header_size: u32, pub header_version: DeviceFaultVendorBinaryHeaderVersionKHR, pub vendor_id: u32, pub device_id: u32, pub driver_version: u32, pub pipeline_cache_uuid: [u8; 16], pub application_name_offset: u32, pub application_version: u32, pub engine_name_offset: u32, pub engine_version: u32, pub api_version: u32, }
Native structure VkDeviceFaultVendorBinaryHeaderVersionOneKHR.

Contract

Native structure VkDeviceFaultVendorBinaryHeaderVersionOneKHR.

Khronos reference: VkDeviceFaultVendorBinaryHeaderVersionOneKHR

Fields

header_size

Field
header_size: u32

Native field headerSize.

header_version

Field
header_version: DeviceFaultVendorBinaryHeaderVersionKHR

Native field headerVersion.

vendor_id

Field
vendor_id: u32

Native field vendorID.

device_id

Field
device_id: u32

Native field deviceID.

driver_version

Field
driver_version: u32

Native field driverVersion.

pipeline_cache_uuid

Field
pipeline_cache_uuid: [u8; 16]

Native field pipelineCacheUUID.

application_name_offset

Field
application_name_offset: u32

Native field applicationNameOffset.

application_version

Field
application_version: u32

Native field applicationVersion.

engine_name_offset

Field
engine_name_offset: u32

Native field engineNameOffset.

engine_version

Field
engine_version: u32

Native field engineVersion.

api_version

Field
api_version: u32

Native field apiVersion.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_header_size

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

Set native field headerSize without native effects.

set_header_version

Method
pub fn set_header_version( self, value: DeviceFaultVendorBinaryHeaderVersionKHR, ) -> Self

Set native field headerVersion without native effects.

set_vendor_id

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

Set native field vendorID without native effects.

set_device_id

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

Set native field deviceID without native effects.

set_driver_version

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

Set native field driverVersion without native effects.

set_pipeline_cache_uuid

Method
pub fn set_pipeline_cache_uuid(self, value: [u8; 16]) -> Self

Set native field pipelineCacheUUID without native effects.

set_application_name_offset

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

Set native field applicationNameOffset without native effects.

set_application_version

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

Set native field applicationVersion without native effects.

set_engine_name_offset

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

Set native field engineNameOffset without native effects.

set_engine_version

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

Set native field engineVersion without native effects.

set_api_version

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

Set native field apiVersion without native effects.

clone

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

Stvk::DeviceFaultVendorInfoKHR

Contract

Native structure VkDeviceFaultVendorInfoKHR.

Khronos reference: VkDeviceFaultVendorInfoKHR

Fields

description

Field
description: [c_char; 256]

Native field description.

vendor_fault_code

Field
vendor_fault_code: u64

Native field vendorFaultCode.

vendor_fault_data

Field
vendor_fault_data: u64

Native field vendorFaultData.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_description

Method
pub fn set_description(self, value: [c_char; 256]) -> Self

Set native field description without native effects.

set_vendor_fault_code

Method
pub fn set_vendor_fault_code(self, value: u64) -> Self

Set native field vendorFaultCode without native effects.

set_vendor_fault_data

Method
pub fn set_vendor_fault_data(self, value: u64) -> Self

Set native field vendorFaultData without native effects.

clone

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

Stvk::DeviceGroupBindSparseInfo

pub struct DeviceGroupBindSparseInfo<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub resource_device_index: u32, pub memory_device_index: u32, /* private fields */ }
Native structure VkDeviceGroupBindSparseInfo.

Contract

Native structure VkDeviceGroupBindSparseInfo.

Khronos reference: VkDeviceGroupBindSparseInfo

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

resource_device_index

Field
resource_device_index: u32

Native field resourceDeviceIndex.

memory_device_index

Field
memory_device_index: u32

Native field memoryDeviceIndex.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_resource_device_index

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

Set native field resourceDeviceIndex without native effects.

set_memory_device_index

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

Set native field memoryDeviceIndex 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::DeviceGroupCommandBufferBeginInfo

pub struct DeviceGroupCommandBufferBeginInfo<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub device_mask: u32, /* private fields */ }
Native structure VkDeviceGroupCommandBufferBeginInfo.

Contract

Native structure VkDeviceGroupCommandBufferBeginInfo.

Khronos reference: VkDeviceGroupCommandBufferBeginInfo

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

device_mask

Field
device_mask: u32

Native field deviceMask.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_device_mask

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

Set native field deviceMask 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::DeviceGroupDeviceCreateInfo

pub struct DeviceGroupDeviceCreateInfo<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub physical_device_count: u32, pub p_physical_devices: *const PhysicalDevice, /* private fields */ }
Native structure VkDeviceGroupDeviceCreateInfo.

Contract

Native structure VkDeviceGroupDeviceCreateInfo.

Khronos reference: VkDeviceGroupDeviceCreateInfo

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

physical_device_count

Field
physical_device_count: u32

Native field physicalDeviceCount.

p_physical_devices

Field
p_physical_devices: *const PhysicalDevice

Native field pPhysicalDevices.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_physical_device_count

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

Set native count physicalDeviceCount 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_physical_devices

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

Borrow pPhysicalDevices and set checked native count physicalDeviceCount. 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::DeviceGroupPresentCapabilitiesKHR

pub struct DeviceGroupPresentCapabilitiesKHR<'a> { pub s_type: StructureType, pub p_next: *mut c_void, pub present_mask: [u32; 32], pub modes: DeviceGroupPresentModeFlagsKHR, /* private fields */ }
Native structure VkDeviceGroupPresentCapabilitiesKHR.

Contract

Native structure VkDeviceGroupPresentCapabilitiesKHR.

Khronos reference: VkDeviceGroupPresentCapabilitiesKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *mut c_void

Native field pNext.

present_mask

Field
present_mask: [u32; 32]

Native field presentMask.

modes

Field
modes: DeviceGroupPresentModeFlagsKHR

Native field modes.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_present_mask

Method
pub fn set_present_mask(self, value: [u32; 32]) -> Self

Set native field presentMask without native effects.

set_modes

Method
pub fn set_modes(self, value: DeviceGroupPresentModeFlagsKHR) -> Self

Set native field modes 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::DeviceGroupPresentInfoKHR

pub struct DeviceGroupPresentInfoKHR<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub swapchain_count: u32, pub p_device_masks: *const u32, pub mode: DeviceGroupPresentModeFlagBitsKHR, /* private fields */ }
Native structure VkDeviceGroupPresentInfoKHR.

Contract

Native structure VkDeviceGroupPresentInfoKHR.

Khronos reference: VkDeviceGroupPresentInfoKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

swapchain_count

Field
swapchain_count: u32

Native field swapchainCount.

p_device_masks

Field
p_device_masks: *const u32

Native field pDeviceMasks.

mode

Field
mode: DeviceGroupPresentModeFlagBitsKHR

Native field mode.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_swapchain_count

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

Set native count swapchainCount 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_masks

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

Borrow pDeviceMasks and set checked native count swapchainCount. 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_mode

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

Set native field mode 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.