vk · Structs · D8
16 public declarations with native signatures and source-owned contracts.
Stvk::DescriptorUpdateTemplateCreateFlags
Contract
Open integer representation of VkDescriptorUpdateTemplateCreateFlags.
Fields
0
0: u32Methods and associated items
from_raw
as_raw
empty
Output
& operator.bitand
& operation. Read moreOutput-1
| operator.bitor
| operation. Read moreOutput-2
^ operator.bitxor
^ operation. Read moreclone
fmt
default
hash
Output-3
! operator.not
! operation. Read moreeq
self and other values to be equal, and is used by ==.Stvk::DescriptorUpdateTemplateCreateInfo
pub struct DescriptorUpdateTemplateCreateInfo<'a> {
pub s_type: StructureType,
pub p_next: *const c_void,
pub flags: DescriptorUpdateTemplateCreateFlags,
pub descriptor_update_entry_count: u32,
pub p_descriptor_update_entries: *const DescriptorUpdateTemplateEntry,
pub template_type: DescriptorUpdateTemplateType,
pub descriptor_set_layout: DescriptorSetLayout,
pub pipeline_bind_point: PipelineBindPoint,
pub pipeline_layout: PipelineLayout,
pub set: u32,
/* private fields */
}Contract
Native structure VkDescriptorUpdateTemplateCreateInfo.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
flags
flags: DescriptorUpdateTemplateCreateFlagsNative field flags.
descriptor_update_entry_count
descriptor_update_entry_count: u32Native field descriptorUpdateEntryCount.
p_descriptor_update_entries
p_descriptor_update_entries: *const DescriptorUpdateTemplateEntryNative field pDescriptorUpdateEntries.
template_type
template_type: DescriptorUpdateTemplateTypeNative field templateType.
descriptor_set_layout
descriptor_set_layout: DescriptorSetLayoutNative field descriptorSetLayout.
pipeline_bind_point
pipeline_bind_point: PipelineBindPointNative field pipelineBindPoint.
pipeline_layout
pipeline_layout: PipelineLayoutNative field pipelineLayout.
set
set: u32Native field set.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_flags
Set native field flags without native effects.
set_descriptor_update_entry_count
Set native count descriptorUpdateEntryCount 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_descriptor_update_entries
Borrow pDescriptorUpdateEntries and set checked native count descriptorUpdateEntryCount.
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_template_type
Set native field templateType without native effects.
set_descriptor_set_layout
Set native field descriptorSetLayout without native effects.
set_pipeline_bind_point
Set native field pipelineBindPoint without native effects.
set_pipeline_layout
Set native field pipelineLayout without native effects.
set_set
Set native field set without native effects.
push_next
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.
default
Stvk::DescriptorUpdateTemplateEntry
Contract
Native structure VkDescriptorUpdateTemplateEntry.
Fields
dst_binding
dst_binding: u32Native field dstBinding.
dst_array_element
dst_array_element: u32Native field dstArrayElement.
descriptor_count
descriptor_count: u32Native field descriptorCount.
descriptor_type
descriptor_type: DescriptorTypeNative field descriptorType.
offset
offset: usizeNative field offset.
stride
stride: usizeNative field stride.
Methods and associated items
new
Construct the record with its default native state.
set_dst_binding
Set native field dstBinding without native effects.
set_dst_array_element
Set native field dstArrayElement without native effects.
set_descriptor_count
Set native field descriptorCount without native effects.
set_descriptor_type
Set native field descriptorType without native effects.
set_offset
Set native field offset without native effects.
set_stride
Set native field stride without native effects.
clone
default
Stvk::DescriptorUpdateTemplateType
Contract
Open integer representation of VkDescriptorUpdateTemplateType.
Fields
0
0: i32Methods and associated items
DESCRIPTOR_SET
Native value VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET.
Khronos reference: VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET
PUSH_DESCRIPTORS
Native value VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS.
Khronos reference: VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS
PUSH_DESCRIPTORS_KHR
Native value VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR.
Khronos reference: VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR
DESCRIPTOR_SET_KHR
Native value VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR.
Khronos reference: VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR
from_raw
as_raw
empty
clone
fmt
default
hash
eq
self and other values to be equal, and is used by ==.Stvk::DeviceAddressBindingCallbackDataEXT
Contract
Native structure VkDeviceAddressBindingCallbackDataEXT.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *mut c_voidNative field pNext.
flags
flags: DeviceAddressBindingFlagsEXTNative field flags.
base_address
base_address: DeviceAddressNative field baseAddress.
size
size: DeviceSizeNative field size.
binding_type
binding_type: DeviceAddressBindingTypeEXTNative field bindingType.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_flags
Set native field flags without native effects.
set_base_address
Set native field baseAddress without native effects.
set_size
Set native field size without native effects.
set_binding_type
Set native field bindingType without native effects.
push_next
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.
default
Stvk::DeviceAddressBindingFlagBitsEXT
Contract
Open integer representation of VkDeviceAddressBindingFlagBitsEXT.
Fields
0
0: u32Methods and associated items
INTERNAL_OBJECT_BIT_EXT
Native value VK_DEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT.
Khronos reference: VK_DEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT
from_raw
as_raw
empty
Output
& operator.bitand
& operation. Read moreOutput-1
| operator.bitor
| operation. Read moreOutput-2
^ operator.bitxor
^ operation. Read moreclone
fmt
default
hash
Output-3
! operator.not
! operation. Read moreeq
self and other values to be equal, and is used by ==.Stvk::DeviceAddressBindingTypeEXT
Contract
Open integer representation of VkDeviceAddressBindingTypeEXT.
Fields
0
0: i32Methods and associated items
BIND_EXT
Native value VK_DEVICE_ADDRESS_BINDING_TYPE_BIND_EXT.
UNBIND_EXT
Native value VK_DEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT.
Khronos reference: VK_DEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT
from_raw
as_raw
empty
clone
fmt
default
hash
eq
self and other values to be equal, and is used by ==.Stvk::DeviceAddressRangeKHR
Contract
Native structure VkDeviceAddressRangeKHR.
Fields
address
address: DeviceAddressNative field address.
size
size: DeviceSizeNative field size.
Methods and associated items
new
Construct the record with its default native state.
set_address
Set native field address without native effects.
set_size
Set native field size without native effects.
clone
default
Stvk::DeviceBufferMemoryRequirements
Contract
Native structure VkDeviceBufferMemoryRequirements.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
p_create_info
p_create_info: *const BufferCreateInfo<'a>Native field pCreateInfo.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_create_info
Set native field pCreateInfo without native effects.
push_next
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.
default
Stvk::DeviceCreateFlags
Contract
Open integer representation of VkDeviceCreateFlags.
Fields
0
0: u32Methods and associated items
from_raw
as_raw
empty
Output
& operator.bitand
& operation. Read moreOutput-1
| operator.bitor
| operation. Read moreOutput-2
^ operator.bitxor
^ operation. Read moreclone
fmt
default
hash
Output-3
! operator.not
! operation. Read moreeq
self and other values to be equal, and is used by ==.Stvk::DeviceCreateInfo
pub struct DeviceCreateInfo<'a> {
pub s_type: StructureType,
pub p_next: *const c_void,
pub flags: DeviceCreateFlags,
pub queue_create_info_count: u32,
pub p_queue_create_infos: *const DeviceQueueCreateInfo<'a>,
pub enabled_layer_count: u32,
pub pp_enabled_layer_names: *const *const c_char,
pub enabled_extension_count: u32,
pub pp_enabled_extension_names: *const *const c_char,
pub p_enabled_features: *const PhysicalDeviceFeatures,
/* private fields */
}Contract
Native structure VkDeviceCreateInfo.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
flags
flags: DeviceCreateFlagsNative field flags.
queue_create_info_count
queue_create_info_count: u32Native field queueCreateInfoCount.
p_queue_create_infos
p_queue_create_infos: *const DeviceQueueCreateInfo<'a>Native field pQueueCreateInfos.
enabled_layer_count
enabled_layer_count: u32Native field enabledLayerCount.
pp_enabled_layer_names
pp_enabled_layer_names: *const *const c_charNative field ppEnabledLayerNames.
enabled_extension_count
enabled_extension_count: u32Native field enabledExtensionCount.
pp_enabled_extension_names
pp_enabled_extension_names: *const *const c_charNative field ppEnabledExtensionNames.
p_enabled_features
p_enabled_features: *const PhysicalDeviceFeaturesNative field pEnabledFeatures.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_flags
Set native field flags without native effects.
set_queue_create_info_count
Set native count queueCreateInfoCount 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_create_infos
Borrow pQueueCreateInfos and set checked native count queueCreateInfoCount.
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_enabled_layer_count
Set native count enabledLayerCount 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_enabled_layer_names
Borrow ppEnabledLayerNames and set checked native count enabledLayerCount.
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_enabled_extension_count
Set native count enabledExtensionCount 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_enabled_extension_names
Borrow ppEnabledExtensionNames and set checked native count enabledExtensionCount.
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_enabled_features
Set native field pEnabledFeatures without native effects.
push_next
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.
default
Stvk::DeviceDeviceMemoryReportCreateInfoEXT
Contract
Native structure VkDeviceDeviceMemoryReportCreateInfoEXT.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
flags
flags: DeviceMemoryReportFlagsEXTNative field flags.
pfn_user_callback
pfn_user_callback: PFN_vkDeviceMemoryReportCallbackEXTNative field pfnUserCallback.
p_user_data
p_user_data: *mut c_voidNative field pUserData.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_flags
Set native field flags without native effects.
set_pfn_user_callback
Set native field pfnUserCallback without native effects.
set_user_data
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
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.
default
Stvk::DeviceDiagnosticsConfigCreateInfoNV
Contract
Native structure VkDeviceDiagnosticsConfigCreateInfoNV.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
flags
flags: DeviceDiagnosticsConfigFlagsNVNative field flags.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_flags
Set native field flags without native effects.
push_next
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.
default
Stvk::DeviceDiagnosticsConfigFlagBitsNV
Contract
Open integer representation of VkDeviceDiagnosticsConfigFlagBitsNV.
Fields
0
0: u32Methods and associated items
ENABLE_SHADER_DEBUG_INFO_BIT_NV
Native value VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV.
Khronos reference: VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV
ENABLE_RESOURCE_TRACKING_BIT_NV
Native value VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV.
Khronos reference: VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV
ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV
Native value VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV.
Khronos reference: VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV
ENABLE_SHADER_ERROR_REPORTING_BIT_NV
Native value VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV.
Khronos reference: VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV
from_raw
as_raw
empty
Output
& operator.bitand
& operation. Read moreOutput-1
| operator.bitor
| operation. Read moreOutput-2
^ operator.bitxor
^ operation. Read moreclone
fmt
default
hash
Output-3
! operator.not
! operation. Read moreeq
self and other values to be equal, and is used by ==.Stvk::DeviceEventInfoEXT
Contract
Native structure VkDeviceEventInfoEXT.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
device_event
device_event: DeviceEventTypeEXTNative field deviceEvent.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_device_event
Set native field deviceEvent without native effects.
push_next
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.
default
Stvk::DeviceEventTypeEXT
Contract
Open integer representation of VkDeviceEventTypeEXT.
Fields
0
0: i32Methods and associated items
DISPLAY_HOTPLUG_EXT
Native value VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT.
from_raw
as_raw
empty
clone
fmt
default
hash
eq
self and other values to be equal, and is used by ==.