Realm

vk · Structs · M2

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

StRustExperimental

Stvk::MemoryGetMetalHandleInfoEXT

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

Contract

Native structure VkMemoryGetMetalHandleInfoEXT.

Khronos reference: VkMemoryGetMetalHandleInfoEXT

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.

Stvk::MemoryGetNativeBufferInfoOHOS

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

Contract

Native structure VkMemoryGetNativeBufferInfoOHOS.

Khronos reference: VkMemoryGetNativeBufferInfoOHOS

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

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

Contract

Native structure VkMemoryGetRemoteAddressInfoNV.

Khronos reference: VkMemoryGetRemoteAddressInfoNV

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.

Stvk::MemoryGetWin32HandleInfoKHR

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

Contract

Native structure VkMemoryGetWin32HandleInfoKHR.

Khronos reference: VkMemoryGetWin32HandleInfoKHR

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.

Stvk::MemoryGetZirconHandleInfoFUCHSIA

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

Contract

Native structure VkMemoryGetZirconHandleInfoFUCHSIA.

Khronos reference: VkMemoryGetZirconHandleInfoFUCHSIA

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.

Stvk::MemoryHeap

Contract

Native structure VkMemoryHeap.

Khronos reference: VkMemoryHeap

Fields

size

Field
size: DeviceSize

Native field size.

flags

Field
flags: MemoryHeapFlags

Native field flags.

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_flags

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

Set native field flags without native effects.

Stvk::MemoryHeapFlagBits

Contract

Open integer representation of VkMemoryHeapFlagBits.

Khronos reference: VkMemoryHeapFlagBits

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

Output-1

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

Output-2

Method
type Output = MemoryHeapFlagBits
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() -> MemoryHeapFlagBits
Returns the “default value” for a type. Read more

Output-3

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

eq

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

Stvk::MemoryHostPointerPropertiesEXT

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

Contract

Native structure VkMemoryHostPointerPropertiesEXT.

Khronos reference: VkMemoryHostPointerPropertiesEXT

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

Contract

Open integer representation of VkMemoryMapFlagBits.

Khronos reference: VkMemoryMapFlagBits

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

Output-1

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

Output-2

Method
type Output = MemoryMapFlagBits
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() -> MemoryMapFlagBits
Returns the “default value” for a type. Read more

Output-3

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

eq

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

Stvk::MemoryMapInfo

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

Contract

Native structure VkMemoryMapInfo.

Khronos reference: VkMemoryMapInfo

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

flags

Field
flags: MemoryMapFlags

Native field flags.

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_flags

Method
pub fn set_flags(self, value: MemoryMapFlags) -> 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.

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

pub struct MemoryMapPlacedInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub p_placed_address: *mut c_void, /* private fields */ }
Native structure VkMemoryMapPlacedInfoEXT.

Contract

Native structure VkMemoryMapPlacedInfoEXT.

Khronos reference: VkMemoryMapPlacedInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

p_placed_address

Field
p_placed_address: *mut c_void

Native field pPlacedAddress.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_placed_address

Method
pub unsafe fn set_placed_address(self, value: *mut c_void) -> Self

Set native pointer pPlacedAddress 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::MemoryMarkerInfoAMD

pub struct MemoryMarkerInfoAMD<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub stage: PipelineStageFlags2KHR, pub dst_range: DeviceAddressRangeKHR, pub dst_flags: AddressCommandFlagsKHR, pub marker: u32, /* private fields */ }
Native structure VkMemoryMarkerInfoAMD.

Contract

Native structure VkMemoryMarkerInfoAMD.

Khronos reference: VkMemoryMarkerInfoAMD

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

stage

Field
stage: PipelineStageFlags2KHR

Native field stage.

dst_range

Field
dst_range: DeviceAddressRangeKHR

Native field dstRange.

dst_flags

Field
dst_flags: AddressCommandFlagsKHR

Native field dstFlags.

marker

Field
marker: u32

Native field marker.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_stage

Method
pub fn set_stage(self, value: PipelineStageFlags2KHR) -> Self

Set native field stage without native effects.

set_dst_range

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

Set native field dstRange without native effects.

set_dst_flags

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

Set native field dstFlags without native effects.

set_marker

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

Set native field marker 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::MemoryMetalHandlePropertiesEXT

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

Contract

Native structure VkMemoryMetalHandlePropertiesEXT.

Khronos reference: VkMemoryMetalHandlePropertiesEXT

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

pub struct MemoryOpaqueCaptureAddressAllocateInfo<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub opaque_capture_address: u64, /* private fields */ }
Native structure VkMemoryOpaqueCaptureAddressAllocateInfo.

Contract

Native structure VkMemoryOpaqueCaptureAddressAllocateInfo.

Khronos reference: VkMemoryOpaqueCaptureAddressAllocateInfo

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

opaque_capture_address

Field
opaque_capture_address: u64

Native field opaqueCaptureAddress.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_opaque_capture_address

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

Set native field opaqueCaptureAddress 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::MemoryOverallocationBehaviorAMD

Contract

Open integer representation of VkMemoryOverallocationBehaviorAMD.

Khronos reference: VkMemoryOverallocationBehaviorAMD

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) -> MemoryOverallocationBehaviorAMD
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() -> MemoryOverallocationBehaviorAMD
Returns the “default value” for a type. Read more

eq

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

Stvk::MemoryPriorityAllocateInfoEXT

pub struct MemoryPriorityAllocateInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub priority: f32, /* private fields */ }
Native structure VkMemoryPriorityAllocateInfoEXT.

Contract

Native structure VkMemoryPriorityAllocateInfoEXT.

Khronos reference: VkMemoryPriorityAllocateInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

priority

Field
priority: f32

Native field priority.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_priority

Method
pub fn set_priority(self, value: f32) -> Self

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