Realm

vk · Structs · E2

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

StRustExperimental

Stvk::ExportMetalObjectsInfoEXT

Contract

Native structure VkExportMetalObjectsInfoEXT.

Khronos reference: VkExportMetalObjectsInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

Methods and associated items

new

Method
pub fn new() -> Self

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

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

Contract

Open integer representation of VkExportMetalObjectTypeFlagBitsEXT.

Khronos reference: VkExportMetalObjectTypeFlagBitsEXT

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

Output-1

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

Output-2

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

clone

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

Output-3

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

eq

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

Stvk::ExportMetalSharedEventInfoEXT

pub struct ExportMetalSharedEventInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub semaphore: Semaphore, pub event: Event, pub mtl_shared_event: MTLSharedEvent_id, /* private fields */ }
Native structure VkExportMetalSharedEventInfoEXT.

Contract

Native structure VkExportMetalSharedEventInfoEXT.

Khronos reference: VkExportMetalSharedEventInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

semaphore

Field
semaphore: Semaphore

Native field semaphore.

event

Field
event: Event

Native field event.

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_semaphore

Method
pub fn set_semaphore(self, value: Semaphore) -> Self

Set native field semaphore without native effects.

set_event

Method
pub fn set_event(self, value: Event) -> Self

Set native field event without native effects.

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.

Stvk::ExportMetalTextureInfoEXT

pub struct ExportMetalTextureInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub image: Image, pub image_view: ImageView, pub buffer_view: BufferView, pub plane: ImageAspectFlagBits, pub mtl_texture: MTLTexture_id, /* private fields */ }
Native structure VkExportMetalTextureInfoEXT.

Contract

Native structure VkExportMetalTextureInfoEXT.

Khronos reference: VkExportMetalTextureInfoEXT

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.

image_view

Field
image_view: ImageView

Native field imageView.

buffer_view

Field
buffer_view: BufferView

Native field bufferView.

plane

Field
plane: ImageAspectFlagBits

Native field plane.

mtl_texture

Field
mtl_texture: MTLTexture_id

Native field mtlTexture.

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_image_view

Method
pub fn set_image_view(self, value: ImageView) -> Self

Set native field imageView without native effects.

set_buffer_view

Method
pub fn set_buffer_view(self, value: BufferView) -> Self

Set native field bufferView without native effects.

set_plane

Method
pub fn set_plane(self, value: ImageAspectFlagBits) -> Self

Set native field plane without native effects.

set_mtl_texture

Method
pub fn set_mtl_texture(self, value: MTLTexture_id) -> Self

Set native field mtlTexture 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::ExportSemaphoreCreateInfo

pub struct ExportSemaphoreCreateInfo<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub handle_types: ExternalSemaphoreHandleTypeFlags, /* private fields */ }
Native structure VkExportSemaphoreCreateInfo.

Contract

Native structure VkExportSemaphoreCreateInfo.

Khronos reference: VkExportSemaphoreCreateInfo

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

handle_types

Field
handle_types: ExternalSemaphoreHandleTypeFlags

Native field handleTypes.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_handle_types

Method
pub fn set_handle_types(self, value: ExternalSemaphoreHandleTypeFlags) -> Self

Set native field handleTypes 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::ExportSemaphoreWin32HandleInfoKHR

pub struct ExportSemaphoreWin32HandleInfoKHR<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub p_attributes: *const SECURITY_ATTRIBUTES, pub dw_access: DWORD, pub name: LPCWSTR, /* private fields */ }
Native structure VkExportSemaphoreWin32HandleInfoKHR.

Contract

Native structure VkExportSemaphoreWin32HandleInfoKHR.

Khronos reference: VkExportSemaphoreWin32HandleInfoKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

p_attributes

Field
p_attributes: *const SECURITY_ATTRIBUTES

Native field pAttributes.

dw_access

Field
dw_access: DWORD

Native field dwAccess.

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_attributes

Method
pub unsafe fn set_attributes(self, value: *const SECURITY_ATTRIBUTES) -> Self

Set native pointer pAttributes 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.

set_dw_access

Method
pub fn set_dw_access(self, value: DWORD) -> Self

Set native field dwAccess 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::ExtensionMetadata

pub struct ExtensionMetadata { pub name: &'static CStr, pub number: u32, pub scope: &'static str, pub platform: Option<&'static str>, pub provisional: bool, pub promoted_to: Option<&'static str>, pub depends: Option<&'static str>, pub standard_video: bool, pub commands: &'static [&'static str], }
No public source comment is attached to this declaration.

Fields

name

Field
name: &'static CStr
No public source comment is attached to this declaration.

number

Field
number: u32
No public source comment is attached to this declaration.

scope

Field
scope: &'static str
No public source comment is attached to this declaration.

platform

Field
platform: Option<&'static str>
No public source comment is attached to this declaration.

provisional

Field
provisional: bool
No public source comment is attached to this declaration.

promoted_to

Field
promoted_to: Option<&'static str>
No public source comment is attached to this declaration.

depends

Field
depends: Option<&'static str>
No public source comment is attached to this declaration.

standard_video

Field
standard_video: bool
No public source comment is attached to this declaration.

commands

Field
commands: &'static [&'static str]
No public source comment is attached to this declaration.

Methods and associated items

fmt

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

Stvk::ExtensionProperties

Contract

Native structure VkExtensionProperties.

Khronos reference: VkExtensionProperties

Fields

extension_name

Field
extension_name: [c_char; 256]

Native field extensionName.

spec_version

Field
spec_version: u32

Native field specVersion.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_extension_name

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

Set native field extensionName without native effects.

set_spec_version

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

Set native field specVersion without native effects.

Stvk::Extent2D

Contract

Native structure VkExtent2D.

Khronos reference: VkExtent2D

Fields

width

Field
width: u32

Native field width.

height

Field
height: u32

Native field height.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_width

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

Set native field width without native effects.

set_height

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

Set native field height without native effects.

Stvk::Extent3D

Contract

Native structure VkExtent3D.

Khronos reference: VkExtent3D

Fields

width

Field
width: u32

Native field width.

height

Field
height: u32

Native field height.

depth

Field
depth: u32

Native field depth.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_width

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

Set native field width without native effects.

set_height

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

Set native field height without native effects.

set_depth

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

Set native field depth without native effects.

Stvk::ExternalBufferProperties

pub struct ExternalBufferProperties<'a> { pub s_type: StructureType, pub p_next: *mut c_void, pub external_memory_properties: ExternalMemoryProperties, /* private fields */ }
Native structure VkExternalBufferProperties.

Contract

Native structure VkExternalBufferProperties.

Khronos reference: VkExternalBufferProperties

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *mut c_void

Native field pNext.

external_memory_properties

Field
external_memory_properties: ExternalMemoryProperties

Native field externalMemoryProperties.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_external_memory_properties

Method
pub fn set_external_memory_properties( self, value: ExternalMemoryProperties, ) -> Self

Set native field externalMemoryProperties 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::ExternalComputeQueueCreateInfoNV

pub struct ExternalComputeQueueCreateInfoNV<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub preferred_queue: Queue, /* private fields */ }
Native structure VkExternalComputeQueueCreateInfoNV.

Contract

Native structure VkExternalComputeQueueCreateInfoNV.

Khronos reference: VkExternalComputeQueueCreateInfoNV

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

preferred_queue

Field
preferred_queue: Queue

Native field preferredQueue.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_preferred_queue

Method
pub fn set_preferred_queue(self, value: Queue) -> Self

Set native field preferredQueue 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::ExternalComputeQueueDataParamsNV

pub struct ExternalComputeQueueDataParamsNV<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub device_index: u32, /* private fields */ }
Native structure VkExternalComputeQueueDataParamsNV.

Contract

Native structure VkExternalComputeQueueDataParamsNV.

Khronos reference: VkExternalComputeQueueDataParamsNV

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

device_index

Field
device_index: u32

Native field deviceIndex.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_device_index

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

Set native field deviceIndex 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::ExternalComputeQueueDeviceCreateInfoNV

pub struct ExternalComputeQueueDeviceCreateInfoNV<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub reserved_external_queues: u32, /* private fields */ }
Native structure VkExternalComputeQueueDeviceCreateInfoNV.

Contract

Native structure VkExternalComputeQueueDeviceCreateInfoNV.

Khronos reference: VkExternalComputeQueueDeviceCreateInfoNV

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

reserved_external_queues

Field
reserved_external_queues: u32

Native field reservedExternalQueues.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_reserved_external_queues

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

Set native field reservedExternalQueues 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::ExternalComputeQueueNV

Contract

Raw Vulkan handle VkExternalComputeQueueNV.

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

Fields

0

Field
0: *mut c_void
No public source comment is attached to this declaration.

Methods and associated items

NULL

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

is_null

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

from_raw

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

as_raw

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

clone

Method
fn clone(&self) -> ExternalComputeQueueNV
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

eq

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

Stvk::ExternalFenceFeatureFlagBits

Contract

Open integer representation of VkExternalFenceFeatureFlagBits.

Khronos reference: VkExternalFenceFeatureFlagBits

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

Output-1

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

Output-2

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

clone

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

Output-3

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

eq

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