Realm

vk · Structs · M1

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

StRustExperimental

Stvk::MacOSSurfaceCreateFlagsMVK

Contract

Open integer representation of VkMacOSSurfaceCreateFlagsMVK.

Khronos reference: VkMacOSSurfaceCreateFlagsMVK

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

Output-1

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

Output-2

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

clone

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

Output-3

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

eq

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

Stvk::MacOSSurfaceCreateInfoMVK

pub struct MacOSSurfaceCreateInfoMVK<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub flags: MacOSSurfaceCreateFlagsMVK, pub p_view: *const c_void, /* private fields */ }
Native structure VkMacOSSurfaceCreateInfoMVK.

Contract

Native structure VkMacOSSurfaceCreateInfoMVK.

Khronos reference: VkMacOSSurfaceCreateInfoMVK

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

flags

Field
flags: MacOSSurfaceCreateFlagsMVK

Native field flags.

p_view

Field
p_view: *const c_void

Native field pView.

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

Set native field flags without native effects.

set_view

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

Set native pointer pView 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::MappedMemoryRange

pub struct MappedMemoryRange<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub memory: DeviceMemory, pub offset: DeviceSize, pub size: DeviceSize, /* private fields */ }
Native structure VkMappedMemoryRange.

Contract

Native structure VkMappedMemoryRange.

Khronos reference: VkMappedMemoryRange

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

memory

Field
memory: DeviceMemory

Native field memory.

offset

Field
offset: DeviceSize

Native field offset.

size

Field
size: DeviceSize

Native field size.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_memory

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

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

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

Contract

Open integer representation of VkMemoryAllocateFlagBits.

Khronos reference: VkMemoryAllocateFlagBits

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

Output-1

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

Output-2

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

clone

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

Output-3

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

eq

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

Stvk::MemoryAllocateFlagsInfo

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

Contract

Native structure VkMemoryAllocateFlagsInfo.

Khronos reference: VkMemoryAllocateFlagsInfo

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

flags

Field
flags: MemoryAllocateFlags

Native field flags.

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_flags

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

Set native field flags without native effects.

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

pub struct MemoryAllocateInfo<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub allocation_size: DeviceSize, pub memory_type_index: u32, /* private fields */ }
Native structure VkMemoryAllocateInfo.

Contract

Native structure VkMemoryAllocateInfo.

Khronos reference: VkMemoryAllocateInfo

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

allocation_size

Field
allocation_size: DeviceSize

Native field allocationSize.

memory_type_index

Field
memory_type_index: u32

Native field memoryTypeIndex.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_allocation_size

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

Set native field allocationSize without native effects.

set_memory_type_index

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

Set native field memoryTypeIndex 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::MemoryBarrier

pub struct MemoryBarrier<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub src_access_mask: AccessFlags, pub dst_access_mask: AccessFlags, /* private fields */ }
Native structure VkMemoryBarrier.

Contract

Native structure VkMemoryBarrier.

Khronos reference: VkMemoryBarrier

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

src_access_mask

Field
src_access_mask: AccessFlags

Native field srcAccessMask.

dst_access_mask

Field
dst_access_mask: AccessFlags

Native field dstAccessMask.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_src_access_mask

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

Set native field srcAccessMask without native effects.

set_dst_access_mask

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

Set native field dstAccessMask 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::MemoryBarrier2

pub struct MemoryBarrier2<'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, /* private fields */ }
Native structure VkMemoryBarrier2.

Contract

Native structure VkMemoryBarrier2.

Khronos reference: VkMemoryBarrier2

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.

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.

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

pub struct MemoryBarrierAccessFlags3KHR<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub src_access_mask3: AccessFlags3KHR, pub dst_access_mask3: AccessFlags3KHR, /* private fields */ }
Native structure VkMemoryBarrierAccessFlags3KHR.

Contract

Native structure VkMemoryBarrierAccessFlags3KHR.

Khronos reference: VkMemoryBarrierAccessFlags3KHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

src_access_mask3

Field
src_access_mask3: AccessFlags3KHR

Native field srcAccessMask3.

dst_access_mask3

Field
dst_access_mask3: AccessFlags3KHR

Native field dstAccessMask3.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_src_access_mask3

Method
pub fn set_src_access_mask3(self, value: AccessFlags3KHR) -> Self

Set native field srcAccessMask3 without native effects.

set_dst_access_mask3

Method
pub fn set_dst_access_mask3(self, value: AccessFlags3KHR) -> Self

Set native field dstAccessMask3 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::MemoryDecompressionMethodFlagBitsEXT

Contract

Open integer representation of VkMemoryDecompressionMethodFlagBitsEXT.

Khronos reference: VkMemoryDecompressionMethodFlagBitsEXT

Fields

0

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

Methods and associated items

from_raw

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

as_raw

Method
pub const fn as_raw(self) -> u64
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 = MemoryDecompressionMethodFlagBitsEXT
The resulting type after applying the & operator.

Output-1

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

Output-2

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

clone

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

Output-3

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

eq

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

Stvk::MemoryDedicatedAllocateInfo

pub struct MemoryDedicatedAllocateInfo<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub image: Image, pub buffer: Buffer, /* private fields */ }
Native structure VkMemoryDedicatedAllocateInfo.

Contract

Native structure VkMemoryDedicatedAllocateInfo.

Khronos reference: VkMemoryDedicatedAllocateInfo

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.

buffer

Field
buffer: Buffer

Native field buffer.

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_buffer

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

Set native field buffer 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::MemoryDedicatedAllocateInfoTensorARM

pub struct MemoryDedicatedAllocateInfoTensorARM<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub tensor: TensorARM, /* private fields */ }
Native structure VkMemoryDedicatedAllocateInfoTensorARM.

Contract

Native structure VkMemoryDedicatedAllocateInfoTensorARM.

Khronos reference: VkMemoryDedicatedAllocateInfoTensorARM

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

tensor

Field
tensor: TensorARM

Native field tensor.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_tensor

Method
pub fn set_tensor(self, value: TensorARM) -> Self

Set native field tensor 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::MemoryDedicatedRequirements

pub struct MemoryDedicatedRequirements<'a> { pub s_type: StructureType, pub p_next: *mut c_void, pub prefers_dedicated_allocation: Bool32, pub requires_dedicated_allocation: Bool32, /* private fields */ }
Native structure VkMemoryDedicatedRequirements.

Contract

Native structure VkMemoryDedicatedRequirements.

Khronos reference: VkMemoryDedicatedRequirements

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *mut c_void

Native field pNext.

prefers_dedicated_allocation

Field
prefers_dedicated_allocation: Bool32

Native field prefersDedicatedAllocation.

requires_dedicated_allocation

Field
requires_dedicated_allocation: Bool32

Native field requiresDedicatedAllocation.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_prefers_dedicated_allocation

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

Set native field prefersDedicatedAllocation without native effects.

set_requires_dedicated_allocation

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

Set native field requiresDedicatedAllocation 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::MemoryFdPropertiesKHR

Contract

Native structure VkMemoryFdPropertiesKHR.

Khronos reference: VkMemoryFdPropertiesKHR

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

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

Contract

Native structure VkMemoryGetAndroidHardwareBufferInfoANDROID.

Khronos reference: VkMemoryGetAndroidHardwareBufferInfoANDROID

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

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_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::MemoryGetFdInfoKHR

pub struct MemoryGetFdInfoKHR<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub memory: DeviceMemory, pub handle_type: ExternalMemoryHandleTypeFlagBits, /* private fields */ }
Native structure VkMemoryGetFdInfoKHR.

Contract

Native structure VkMemoryGetFdInfoKHR.

Khronos reference: VkMemoryGetFdInfoKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

memory

Field
memory: DeviceMemory

Native field memory.

handle_type

Field
handle_type: ExternalMemoryHandleTypeFlagBits

Native field handleType.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_memory

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

Set native field memory without native effects.

set_handle_type

Method
pub fn set_handle_type(self, value: ExternalMemoryHandleTypeFlagBits) -> Self

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