Realm

vk · Structs · I5

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

StRustExperimental

Stvk::ImageViewType

Contract

Open integer representation of VkImageViewType.

Khronos reference: VkImageViewType

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

eq

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

Stvk::ImageViewUsage2CreateInfoKHR

pub struct ImageViewUsage2CreateInfoKHR<'a> { pub s_type: StructureType, pub p_next: *mut c_void, pub usage: ImageUsageFlags2KHR, /* private fields */ }
Native structure VkImageViewUsage2CreateInfoKHR.

Contract

Native structure VkImageViewUsage2CreateInfoKHR.

Khronos reference: VkImageViewUsage2CreateInfoKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *mut c_void

Native field pNext.

usage

Field
usage: ImageUsageFlags2KHR

Native field usage.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_usage

Method
pub fn set_usage(self, value: ImageUsageFlags2KHR) -> Self

Set native field usage 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::ImageViewUsageCreateInfo

pub struct ImageViewUsageCreateInfo<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub usage: ImageUsageFlags, /* private fields */ }
Native structure VkImageViewUsageCreateInfo.

Contract

Native structure VkImageViewUsageCreateInfo.

Khronos reference: VkImageViewUsageCreateInfo

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

usage

Field
usage: ImageUsageFlags

Native field usage.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_usage

Method
pub fn set_usage(self, value: ImageUsageFlags) -> Self

Set native field usage 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::ImportAndroidHardwareBufferInfoANDROID

pub struct ImportAndroidHardwareBufferInfoANDROID<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub buffer: *mut AHardwareBuffer, /* private fields */ }
Native structure VkImportAndroidHardwareBufferInfoANDROID.

Contract

Native structure VkImportAndroidHardwareBufferInfoANDROID.

Khronos reference: VkImportAndroidHardwareBufferInfoANDROID

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

buffer

Field
buffer: *mut AHardwareBuffer

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_buffer

Method
pub unsafe fn set_buffer(self, value: *mut AHardwareBuffer) -> Self

Set native pointer buffer 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::ImportFenceFdInfoKHR

pub struct ImportFenceFdInfoKHR<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub fence: Fence, pub flags: FenceImportFlags, pub handle_type: ExternalFenceHandleTypeFlagBits, pub fd: i32, /* private fields */ }
Native structure VkImportFenceFdInfoKHR.

Contract

Native structure VkImportFenceFdInfoKHR.

Khronos reference: VkImportFenceFdInfoKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

fence

Field
fence: Fence

Native field fence.

flags

Field
flags: FenceImportFlags

Native field flags.

handle_type

Field
handle_type: ExternalFenceHandleTypeFlagBits

Native field handleType.

fd

Field
fd: i32

Native field fd.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_fence

Method
pub fn set_fence(self, value: Fence) -> Self

Set native field fence without native effects.

set_flags

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

Set native field flags without native effects.

set_handle_type

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

Set native field handleType without native effects.

set_fd

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

Set native field fd 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::ImportFenceWin32HandleInfoKHR

pub struct ImportFenceWin32HandleInfoKHR<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub fence: Fence, pub flags: FenceImportFlags, pub handle_type: ExternalFenceHandleTypeFlagBits, pub handle: HANDLE, pub name: LPCWSTR, /* private fields */ }
Native structure VkImportFenceWin32HandleInfoKHR.

Contract

Native structure VkImportFenceWin32HandleInfoKHR.

Khronos reference: VkImportFenceWin32HandleInfoKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

fence

Field
fence: Fence

Native field fence.

flags

Field
flags: FenceImportFlags

Native field flags.

handle_type

Field
handle_type: ExternalFenceHandleTypeFlagBits

Native field handleType.

handle

Field
handle: HANDLE

Native field handle.

name

Field
name: LPCWSTR

Native field name.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_fence

Method
pub fn set_fence(self, value: Fence) -> Self

Set native field fence without native effects.

set_flags

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

Set native field flags without native effects.

set_handle_type

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

Set native field handleType without native effects.

set_handle

Method
pub fn set_handle(self, value: HANDLE) -> Self

Set native field handle without native effects.

set_name

Method
pub fn set_name(self, value: LPCWSTR) -> Self

Set native field name 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::ImportMemoryBufferCollectionFUCHSIA

pub struct ImportMemoryBufferCollectionFUCHSIA<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub collection: BufferCollectionFUCHSIA, pub index: u32, /* private fields */ }
Native structure VkImportMemoryBufferCollectionFUCHSIA.

Contract

Native structure VkImportMemoryBufferCollectionFUCHSIA.

Khronos reference: VkImportMemoryBufferCollectionFUCHSIA

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

collection

Field
collection: BufferCollectionFUCHSIA

Native field collection.

index

Field
index: u32

Native field index.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_collection

Method
pub fn set_collection(self, value: BufferCollectionFUCHSIA) -> Self

Set native field collection without native effects.

set_index

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

Set native field index 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::ImportMemoryFdInfoKHR

pub struct ImportMemoryFdInfoKHR<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub handle_type: ExternalMemoryHandleTypeFlagBits, pub fd: i32, /* private fields */ }
Native structure VkImportMemoryFdInfoKHR.

Contract

Native structure VkImportMemoryFdInfoKHR.

Khronos reference: VkImportMemoryFdInfoKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

handle_type

Field
handle_type: ExternalMemoryHandleTypeFlagBits

Native field handleType.

fd

Field
fd: i32

Native field fd.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_handle_type

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

Set native field handleType without native effects.

set_fd

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

Set native field fd 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::ImportMemoryHostPointerInfoEXT

pub struct ImportMemoryHostPointerInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub handle_type: ExternalMemoryHandleTypeFlagBits, pub p_host_pointer: *mut c_void, /* private fields */ }
Native structure VkImportMemoryHostPointerInfoEXT.

Contract

Native structure VkImportMemoryHostPointerInfoEXT.

Khronos reference: VkImportMemoryHostPointerInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

handle_type

Field
handle_type: ExternalMemoryHandleTypeFlagBits

Native field handleType.

p_host_pointer

Field
p_host_pointer: *mut c_void

Native field pHostPointer.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_handle_type

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

Set native field handleType without native effects.

set_host_pointer

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

Set native pointer pHostPointer explicitly. No borrow or extent is inferred.

Safety

The caller must establish pointee validity, extent, alignment, aliasing and the full native retention lifetime before using this record in a native call. Callback, external-object and nested-pointer contracts remain caller obligations.

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

pub struct ImportMemoryMetalHandleInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub handle_type: ExternalMemoryHandleTypeFlagBits, pub handle: *mut c_void, /* private fields */ }
Native structure VkImportMemoryMetalHandleInfoEXT.

Contract

Native structure VkImportMemoryMetalHandleInfoEXT.

Khronos reference: VkImportMemoryMetalHandleInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

handle_type

Field
handle_type: ExternalMemoryHandleTypeFlagBits

Native field handleType.

handle

Field
handle: *mut c_void

Native field handle.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_handle_type

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

Set native field handleType without native effects.

set_handle

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

Set native pointer handle 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::ImportMemoryWin32HandleInfoKHR

pub struct ImportMemoryWin32HandleInfoKHR<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub handle_type: ExternalMemoryHandleTypeFlagBits, pub handle: HANDLE, pub name: LPCWSTR, /* private fields */ }
Native structure VkImportMemoryWin32HandleInfoKHR.

Contract

Native structure VkImportMemoryWin32HandleInfoKHR.

Khronos reference: VkImportMemoryWin32HandleInfoKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

handle_type

Field
handle_type: ExternalMemoryHandleTypeFlagBits

Native field handleType.

handle

Field
handle: HANDLE

Native field handle.

name

Field
name: LPCWSTR

Native field name.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_handle_type

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

Set native field handleType without native effects.

set_handle

Method
pub fn set_handle(self, value: HANDLE) -> Self

Set native field handle without native effects.

set_name

Method
pub fn set_name(self, value: LPCWSTR) -> Self

Set native field name 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::ImportMemoryWin32HandleInfoNV

pub struct ImportMemoryWin32HandleInfoNV<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub handle_type: ExternalMemoryHandleTypeFlagsNV, pub handle: HANDLE, /* private fields */ }
Native structure VkImportMemoryWin32HandleInfoNV.

Contract

Native structure VkImportMemoryWin32HandleInfoNV.

Khronos reference: VkImportMemoryWin32HandleInfoNV

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

handle_type

Field
handle_type: ExternalMemoryHandleTypeFlagsNV

Native field handleType.

handle

Field
handle: HANDLE

Native field handle.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_handle_type

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

Set native field handleType without native effects.

set_handle

Method
pub fn set_handle(self, value: HANDLE) -> Self

Set native field handle 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::ImportMemoryZirconHandleInfoFUCHSIA

pub struct ImportMemoryZirconHandleInfoFUCHSIA<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub handle_type: ExternalMemoryHandleTypeFlagBits, pub handle: zx_handle_t, /* private fields */ }
Native structure VkImportMemoryZirconHandleInfoFUCHSIA.

Contract

Native structure VkImportMemoryZirconHandleInfoFUCHSIA.

Khronos reference: VkImportMemoryZirconHandleInfoFUCHSIA

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

handle_type

Field
handle_type: ExternalMemoryHandleTypeFlagBits

Native field handleType.

handle

Field
handle: zx_handle_t

Native field handle.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_handle_type

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

Set native field handleType without native effects.

set_handle

Method
pub fn set_handle(self, value: zx_handle_t) -> Self

Set native field handle 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::ImportMetalBufferInfoEXT

pub struct ImportMetalBufferInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub mtl_buffer: MTLBuffer_id, /* private fields */ }
Native structure VkImportMetalBufferInfoEXT.

Contract

Native structure VkImportMetalBufferInfoEXT.

Khronos reference: VkImportMetalBufferInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

mtl_buffer

Field
mtl_buffer: MTLBuffer_id

Native field mtlBuffer.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_mtl_buffer

Method
pub fn set_mtl_buffer(self, value: MTLBuffer_id) -> Self

Set native field mtlBuffer 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::ImportMetalIOSurfaceInfoEXT

pub struct ImportMetalIOSurfaceInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub io_surface: IOSurfaceRef, /* private fields */ }
Native structure VkImportMetalIOSurfaceInfoEXT.

Contract

Native structure VkImportMetalIOSurfaceInfoEXT.

Khronos reference: VkImportMetalIOSurfaceInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

io_surface

Field
io_surface: IOSurfaceRef

Native field ioSurface.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_io_surface

Method
pub fn set_io_surface(self, value: IOSurfaceRef) -> Self

Set native field ioSurface 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::ImportMetalSharedEventInfoEXT

pub struct ImportMetalSharedEventInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub mtl_shared_event: MTLSharedEvent_id, /* private fields */ }
Native structure VkImportMetalSharedEventInfoEXT.

Contract

Native structure VkImportMetalSharedEventInfoEXT.

Khronos reference: VkImportMetalSharedEventInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

mtl_shared_event

Field
mtl_shared_event: MTLSharedEvent_id

Native field mtlSharedEvent.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_mtl_shared_event

Method
pub fn set_mtl_shared_event(self, value: MTLSharedEvent_id) -> Self

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