Realm

vk · Structs · D4

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

StRustExperimental

Stvk::DebugReportFlagBitsEXT

Contract

Open integer representation of VkDebugReportFlagBitsEXT.

Khronos reference: VkDebugReportFlagBitsEXT

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

Output-1

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

Output-2

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

clone

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

Output-3

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

eq

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

Stvk::DebugReportObjectTypeEXT

Contract

Open integer representation of VkDebugReportObjectTypeEXT.

Khronos reference: VkDebugReportObjectTypeEXT

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

eq

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

Stvk::DebugUtilsLabelEXT

pub struct DebugUtilsLabelEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub p_label_name: *const c_char, pub color: [f32; 4], /* private fields */ }
Native structure VkDebugUtilsLabelEXT.

Contract

Native structure VkDebugUtilsLabelEXT.

Khronos reference: VkDebugUtilsLabelEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

p_label_name

Field
p_label_name: *const c_char

Native field pLabelName.

color

Field
color: [f32; 4]

Native field color.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_label_name

Method
pub fn set_label_name(self, value: &'a CStr) -> Self

Set native field pLabelName without native effects.

set_color

Method
pub fn set_color(self, value: [f32; 4]) -> Self

Set native field color 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::DebugUtilsMessageSeverityFlagBitsEXT

Contract

Open integer representation of VkDebugUtilsMessageSeverityFlagBitsEXT.

Khronos reference: VkDebugUtilsMessageSeverityFlagBitsEXT

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

Output-1

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

Output-2

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

clone

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

Output-3

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

eq

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

Stvk::DebugUtilsMessageTypeFlagBitsEXT

Contract

Open integer representation of VkDebugUtilsMessageTypeFlagBitsEXT.

Khronos reference: VkDebugUtilsMessageTypeFlagBitsEXT

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

Output-1

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

Output-2

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

clone

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

Output-3

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

eq

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

Stvk::DebugUtilsMessengerCallbackDataEXT

pub struct DebugUtilsMessengerCallbackDataEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub flags: DebugUtilsMessengerCallbackDataFlagsEXT, pub p_message_id_name: *const c_char, pub message_id_number: i32, pub p_message: *const c_char, pub queue_label_count: u32, pub p_queue_labels: *const DebugUtilsLabelEXT<'a>, pub cmd_buf_label_count: u32, pub p_cmd_buf_labels: *const DebugUtilsLabelEXT<'a>, pub object_count: u32, pub p_objects: *const DebugUtilsObjectNameInfoEXT<'a>, /* private fields */ }
Native structure VkDebugUtilsMessengerCallbackDataEXT.

Contract

Native structure VkDebugUtilsMessengerCallbackDataEXT.

Khronos reference: VkDebugUtilsMessengerCallbackDataEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

flags

Field
flags: DebugUtilsMessengerCallbackDataFlagsEXT

Native field flags.

p_message_id_name

Field
p_message_id_name: *const c_char

Native field pMessageIdName.

message_id_number

Field
message_id_number: i32

Native field messageIdNumber.

p_message

Field
p_message: *const c_char

Native field pMessage.

queue_label_count

Field
queue_label_count: u32

Native field queueLabelCount.

p_queue_labels

Field
p_queue_labels: *const DebugUtilsLabelEXT<'a>

Native field pQueueLabels.

cmd_buf_label_count

Field
cmd_buf_label_count: u32

Native field cmdBufLabelCount.

p_cmd_buf_labels

Field
p_cmd_buf_labels: *const DebugUtilsLabelEXT<'a>

Native field pCmdBufLabels.

object_count

Field
object_count: u32

Native field objectCount.

p_objects

Field
p_objects: *const DebugUtilsObjectNameInfoEXT<'a>

Native field pObjects.

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

Set native field flags without native effects.

set_message_id_name

Method
pub fn set_message_id_name(self, value: &'a CStr) -> Self

Set native field pMessageIdName without native effects.

set_message_id_number

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

Set native field messageIdNumber without native effects.

set_message

Method
pub fn set_message(self, value: &'a CStr) -> Self

Set native field pMessage without native effects.

set_queue_label_count

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

Set native count queueLabelCount directly without checking associated pointer extents. Use the borrowed array helpers to derive matching storage and counts together. Direct count edits support null-query/dynamic-state paths and remain a native-call validity obligation, including after earlier borrowed setters.

set_queue_labels

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

Borrow pQueueLabels and set checked native count queueLabelCount. The borrow covers this storage only; nested raw pointers, format, alignment and asynchronous retention remain native-call obligations. Output storage must be initialized; returned sizes do not enlarge its capacity.

Errors

Returns a construction error if the length exceeds the native count width.

set_cmd_buf_label_count

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

Set native count cmdBufLabelCount directly without checking associated pointer extents. Use the borrowed array helpers to derive matching storage and counts together. Direct count edits support null-query/dynamic-state paths and remain a native-call validity obligation, including after earlier borrowed setters.

set_cmd_buf_labels

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

Borrow pCmdBufLabels and set checked native count cmdBufLabelCount. The borrow covers this storage only; nested raw pointers, format, alignment and asynchronous retention remain native-call obligations. Output storage must be initialized; returned sizes do not enlarge its capacity.

Errors

Returns a construction error if the length exceeds the native count width.

set_object_count

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

Set native count objectCount directly without checking associated pointer extents. Use the borrowed array helpers to derive matching storage and counts together. Direct count edits support null-query/dynamic-state paths and remain a native-call validity obligation, including after earlier borrowed setters.

set_objects

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

Borrow pObjects and set checked native count objectCount. The borrow covers this storage only; nested raw pointers, format, alignment and asynchronous retention remain native-call obligations. Output storage must be initialized; returned sizes do not enlarge its capacity.

Errors

Returns a construction error if the length exceeds the native count width.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

Prepend one registry-compatible node, retaining its exclusive borrow.

The node must have a null p_next and both headers must have canonical tags. Existing links are never traversed and remain written after the borrow ends. Type compatibility does not establish enabled extensions or Vulkan valid usage.

Errors

Returns a construction error for a changed structure tag or already-linked node.

Stvk::DebugUtilsMessengerCallbackDataFlagsEXT

Contract

Open integer representation of VkDebugUtilsMessengerCallbackDataFlagsEXT.

Khronos reference: VkDebugUtilsMessengerCallbackDataFlagsEXT

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

Output-1

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

Output-2

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

clone

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

Output-3

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

eq

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

Stvk::DebugUtilsMessengerCreateFlagsEXT

Contract

Open integer representation of VkDebugUtilsMessengerCreateFlagsEXT.

Khronos reference: VkDebugUtilsMessengerCreateFlagsEXT

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

Output-1

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

Output-2

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

clone

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

Output-3

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

eq

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

Stvk::DebugUtilsMessengerCreateInfoEXT

pub struct DebugUtilsMessengerCreateInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub flags: DebugUtilsMessengerCreateFlagsEXT, pub message_severity: DebugUtilsMessageSeverityFlagsEXT, pub message_type: DebugUtilsMessageTypeFlagsEXT, pub pfn_user_callback: PFN_vkDebugUtilsMessengerCallbackEXT, pub p_user_data: *mut c_void, /* private fields */ }
Native structure VkDebugUtilsMessengerCreateInfoEXT.

Contract

Native structure VkDebugUtilsMessengerCreateInfoEXT.

Khronos reference: VkDebugUtilsMessengerCreateInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

flags

Field
flags: DebugUtilsMessengerCreateFlagsEXT

Native field flags.

message_severity

Field
message_severity: DebugUtilsMessageSeverityFlagsEXT

Native field messageSeverity.

message_type

Field
message_type: DebugUtilsMessageTypeFlagsEXT

Native field messageType.

pfn_user_callback

Field
pfn_user_callback: PFN_vkDebugUtilsMessengerCallbackEXT

Native field pfnUserCallback.

p_user_data

Field
p_user_data: *mut c_void

Native field pUserData.

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

Set native field flags without native effects.

set_message_severity

Method
pub fn set_message_severity( self, value: DebugUtilsMessageSeverityFlagsEXT, ) -> Self

Set native field messageSeverity without native effects.

set_message_type

Method
pub fn set_message_type(self, value: DebugUtilsMessageTypeFlagsEXT) -> Self

Set native field messageType without native effects.

set_pfn_user_callback

Method
pub fn set_pfn_user_callback( self, value: PFN_vkDebugUtilsMessengerCallbackEXT, ) -> Self

Set native field pfnUserCallback without native effects.

set_user_data

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

Set native pointer pUserData 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::DebugUtilsMessengerEXT

Contract

Raw Vulkan handle VkDebugUtilsMessengerEXT.

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

Fields

0

Field
0: u64
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) -> DebugUtilsMessengerEXT
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: &DebugUtilsMessengerEXT) -> bool
Tests for self and other values to be equal, and is used by ==.

Stvk::DebugUtilsObjectNameInfoEXT

pub struct DebugUtilsObjectNameInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub object_type: ObjectType, pub object_handle: u64, pub p_object_name: *const c_char, /* private fields */ }
Native structure VkDebugUtilsObjectNameInfoEXT.

Contract

Native structure VkDebugUtilsObjectNameInfoEXT.

Khronos reference: VkDebugUtilsObjectNameInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

object_type

Field
object_type: ObjectType

Native field objectType.

object_handle

Field
object_handle: u64

Native field objectHandle.

p_object_name

Field
p_object_name: *const c_char

Native field pObjectName.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_object_type

Method
pub fn set_object_type(self, value: ObjectType) -> Self

Set native field objectType without native effects.

set_object_handle

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

Set native field objectHandle without native effects.

set_object_name

Method
pub fn set_object_name(self, value: &'a CStr) -> Self

Set native field pObjectName 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::DebugUtilsObjectTagInfoEXT

pub struct DebugUtilsObjectTagInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub object_type: ObjectType, pub object_handle: u64, pub tag_name: u64, pub tag_size: usize, pub p_tag: *const c_void, /* private fields */ }
Native structure VkDebugUtilsObjectTagInfoEXT.

Contract

Native structure VkDebugUtilsObjectTagInfoEXT.

Khronos reference: VkDebugUtilsObjectTagInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

object_type

Field
object_type: ObjectType

Native field objectType.

object_handle

Field
object_handle: u64

Native field objectHandle.

tag_name

Field
tag_name: u64

Native field tagName.

tag_size

Field
tag_size: usize

Native field tagSize.

p_tag

Field
p_tag: *const c_void

Native field pTag.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_object_type

Method
pub fn set_object_type(self, value: ObjectType) -> Self

Set native field objectType without native effects.

set_object_handle

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

Set native field objectHandle without native effects.

set_tag_name

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

Set native field tagName without native effects.

set_tag_size

Method
pub fn set_tag_size(self, value: usize) -> Self

Set native count tagSize directly without checking associated pointer extents. Use the borrowed array helpers to derive matching storage and counts together. Direct count edits support null-query/dynamic-state paths and remain a native-call validity obligation, including after earlier borrowed setters.

set_tag

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

Borrow pTag and set checked native byte size tagSize. The borrow covers this storage only; nested raw pointers, format, alignment and asynchronous retention remain native-call obligations. Output storage must be initialized; returned sizes do not enlarge its capacity.

Errors

Returns a construction error if the length exceeds the native count width.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

Prepend one registry-compatible node, retaining its exclusive borrow.

The node must have a null p_next and both headers must have canonical tags. Existing links are never traversed and remain written after the borrow ends. Type compatibility does not establish enabled extensions or Vulkan valid usage.

Errors

Returns a construction error for a changed structure tag or already-linked node.

Stvk::DecompressMemoryInfoEXT

pub struct DecompressMemoryInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub decompression_method: MemoryDecompressionMethodFlagsEXT, pub region_count: u32, pub p_regions: *const DecompressMemoryRegionEXT, /* private fields */ }
Native structure VkDecompressMemoryInfoEXT.

Contract

Native structure VkDecompressMemoryInfoEXT.

Khronos reference: VkDecompressMemoryInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

decompression_method

Field
decompression_method: MemoryDecompressionMethodFlagsEXT

Native field decompressionMethod.

region_count

Field
region_count: u32

Native field regionCount.

p_regions

Field
p_regions: *const DecompressMemoryRegionEXT

Native field pRegions.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_decompression_method

Method
pub fn set_decompression_method( self, value: MemoryDecompressionMethodFlagsEXT, ) -> Self

Set native field decompressionMethod without native effects.

set_region_count

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

Set native count regionCount directly without checking associated pointer extents. Use the borrowed array helpers to derive matching storage and counts together. Direct count edits support null-query/dynamic-state paths and remain a native-call validity obligation, including after earlier borrowed setters.

set_regions

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

Borrow pRegions and set checked native count regionCount. The borrow covers this storage only; nested raw pointers, format, alignment and asynchronous retention remain native-call obligations. Output storage must be initialized; returned sizes do not enlarge its capacity.

Errors

Returns a construction error if the length exceeds the native count width.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

Prepend one registry-compatible node, retaining its exclusive borrow.

The node must have a null p_next and both headers must have canonical tags. Existing links are never traversed and remain written after the borrow ends. Type compatibility does not establish enabled extensions or Vulkan valid usage.

Errors

Returns a construction error for a changed structure tag or already-linked node.

Stvk::DecompressMemoryRegionEXT

#[repr(C)]pub struct DecompressMemoryRegionEXT { pub src_address: DeviceAddress, pub dst_address: DeviceAddress, pub compressed_size: DeviceSize, pub decompressed_size: DeviceSize, }
Native structure VkDecompressMemoryRegionEXT.

Contract

Native structure VkDecompressMemoryRegionEXT.

Khronos reference: VkDecompressMemoryRegionEXT

Fields

src_address

Field
src_address: DeviceAddress

Native field srcAddress.

dst_address

Field
dst_address: DeviceAddress

Native field dstAddress.

compressed_size

Field
compressed_size: DeviceSize

Native field compressedSize.

decompressed_size

Field
decompressed_size: DeviceSize

Native field decompressedSize.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_src_address

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

Set native field srcAddress without native effects.

set_dst_address

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

Set native field dstAddress without native effects.

set_compressed_size

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

Set native field compressedSize without native effects.

set_decompressed_size

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

Set native field decompressedSize without native effects.

clone

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

Stvk::DecompressMemoryRegionNV

#[repr(C)]pub struct DecompressMemoryRegionNV { pub src_address: DeviceAddress, pub dst_address: DeviceAddress, pub compressed_size: DeviceSize, pub decompressed_size: DeviceSize, pub decompression_method: MemoryDecompressionMethodFlagsEXT, }
Native structure VkDecompressMemoryRegionNV.

Contract

Native structure VkDecompressMemoryRegionNV.

Khronos reference: VkDecompressMemoryRegionNV

Fields

src_address

Field
src_address: DeviceAddress

Native field srcAddress.

dst_address

Field
dst_address: DeviceAddress

Native field dstAddress.

compressed_size

Field
compressed_size: DeviceSize

Native field compressedSize.

decompressed_size

Field
decompressed_size: DeviceSize

Native field decompressedSize.

decompression_method

Field
decompression_method: MemoryDecompressionMethodFlagsEXT

Native field decompressionMethod.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_src_address

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

Set native field srcAddress without native effects.

set_dst_address

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

Set native field dstAddress without native effects.

set_compressed_size

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

Set native field compressedSize without native effects.

set_decompressed_size

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

Set native field decompressedSize without native effects.

set_decompression_method

Method
pub fn set_decompression_method( self, value: MemoryDecompressionMethodFlagsEXT, ) -> Self

Set native field decompressionMethod without native effects.

clone

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

Stvk::DedicatedAllocationBufferCreateInfoNV

pub struct DedicatedAllocationBufferCreateInfoNV<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub dedicated_allocation: Bool32, /* private fields */ }
Native structure VkDedicatedAllocationBufferCreateInfoNV.

Contract

Native structure VkDedicatedAllocationBufferCreateInfoNV.

Khronos reference: VkDedicatedAllocationBufferCreateInfoNV

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

dedicated_allocation

Field
dedicated_allocation: Bool32

Native field dedicatedAllocation.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_dedicated_allocation

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

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