Trait TypedVulkanSinkStructure

Source
pub unsafe trait TypedVulkanSinkStructure: VulkanSinkStructure + Sized {
    const TYPE: VkStructureType;

    // Provided methods
    fn uninit_sink() -> MaybeUninit<Self> { ... }
    fn try_from_generic(g: &GenericVulkanSinkStructure) -> Option<&Self> { ... }
}

Required Associated Constants§

Source

const TYPE: VkStructureType

sType constant for this structure.

Provided Methods§

Source

fn uninit_sink() -> MaybeUninit<Self>

Constructs an uninitialized cell for this structure, that is ready to pass the api

Source

fn try_from_generic(g: &GenericVulkanSinkStructure) -> Option<&Self>

Cast structure ref only if sType matches

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<T> TypedVulkanSinkStructure for &mut T

Source§

const TYPE: VkStructureType = T::TYPE

Source§

impl<T> TypedVulkanSinkStructure for Box<T>

Source§

const TYPE: VkStructureType = T::TYPE

Implementors§

Source§

impl TypedVulkanSinkStructure for VkDescriptorAddressInfoEXT

Available on crate feature VK_EXT_descriptor_buffer only.
Source§

const TYPE: VkStructureType = 1_000_316_003i32

Source§

impl TypedVulkanSinkStructure for VkDescriptorBufferBindingInfoEXT

Available on crate feature VK_EXT_descriptor_buffer only.
Source§

const TYPE: VkStructureType = 1_000_316_011i32

Source§

impl TypedVulkanSinkStructure for VkDescriptorBufferBindingPushDescriptorBufferHandleEXT

Available on crate feature VK_EXT_descriptor_buffer only.
Source§

const TYPE: VkStructureType = 1_000_316_012i32

Source§

impl TypedVulkanSinkStructure for VkDescriptorSetLayoutSupportKHR

Available on crate feature VK_KHR_maintenance3 only.
Source§

const TYPE: VkStructureType = 1_000_168_001i32

Source§

impl TypedVulkanSinkStructure for VkDescriptorSetVariableDescriptorCountLayoutSupportEXT

Available on crate feature VK_EXT_descriptor_indexing only.
Source§

const TYPE: VkStructureType = 1_000_161_004i32

Source§

impl TypedVulkanSinkStructure for VkDeviceGroupPresentCapabilitiesKHR

Available on crate features VK_KHR_device_group and VK_KHR_surface only.
Source§

const TYPE: VkStructureType = 1_000_060_007i32

Source§

impl TypedVulkanSinkStructure for VkDrmFormatModifierPropertiesList2EXT

Available on crate feature VK_EXT_image_drm_format_modifier only.
Source§

const TYPE: VkStructureType = 1_000_158_006i32

Source§

impl TypedVulkanSinkStructure for VkDrmFormatModifierPropertiesListEXT

Available on crate feature VK_EXT_image_drm_format_modifier only.
Source§

const TYPE: VkStructureType = 1_000_158_000i32

Source§

impl TypedVulkanSinkStructure for VkExternalBufferPropertiesKHR

Available on crate feature VK_KHR_external_memory_capabilities only.
Source§

const TYPE: VkStructureType = 1_000_071_003i32

Source§

impl TypedVulkanSinkStructure for VkExternalFencePropertiesKHR

Available on crate feature VK_KHR_external_fence_capabilities only.
Source§

const TYPE: VkStructureType = 1_000_112_001i32

Source§

impl TypedVulkanSinkStructure for VkExternalImageFormatPropertiesKHR

Available on crate feature VK_KHR_external_memory_capabilities only.
Source§

const TYPE: VkStructureType = 1_000_071_001i32

Source§

impl TypedVulkanSinkStructure for VkExternalSemaphorePropertiesKHR

Available on crate feature VK_KHR_external_semaphore_capabilities only.
Source§

const TYPE: VkStructureType = 1_000_076_001i32

Source§

impl TypedVulkanSinkStructure for VkFormatProperties2KHR

Available on crate feature VK_KHR_get_physical_device_properties2 only.
Source§

const TYPE: VkStructureType = 1_000_059_002i32

Source§

impl TypedVulkanSinkStructure for VkFormatProperties3KHR

Available on crate feature VK_KHR_format_feature_flags2 only.
Source§

const TYPE: VkStructureType = 1_000_360_000i32

Source§

impl TypedVulkanSinkStructure for VkHostImageCopyDevicePerformanceQueryEXT

Available on crate feature VK_EXT_host_image_copy only.
Source§

const TYPE: VkStructureType = 1_000_270_009i32

Source§

impl TypedVulkanSinkStructure for VkImageDrmFormatModifierPropertiesEXT

Available on crate feature VK_EXT_image_drm_format_modifier only.
Source§

const TYPE: VkStructureType = 1_000_158_005i32

Source§

impl TypedVulkanSinkStructure for VkImageFormatProperties2KHR

Available on crate feature VK_KHR_get_physical_device_properties2 only.
Source§

const TYPE: VkStructureType = 1_000_059_003i32

Source§

impl TypedVulkanSinkStructure for VkMemoryDedicatedRequirementsKHR

Available on crate feature VK_KHR_dedicated_allocation only.
Source§

const TYPE: VkStructureType = 1_000_127_000i32

Source§

impl TypedVulkanSinkStructure for VkMemoryFdPropertiesKHR

Available on crate feature VK_KHR_external_memory_fd only.
Source§

const TYPE: VkStructureType = 1_000_074_001i32

Source§

impl TypedVulkanSinkStructure for VkMemoryHostPointerPropertiesEXT

Available on crate feature VK_EXT_external_memory_host only.
Source§

const TYPE: VkStructureType = 1_000_178_001i32

Source§

impl TypedVulkanSinkStructure for VkMemoryRequirements2KHR

Available on crate feature VK_KHR_get_memory_requirements2 only.
Source§

const TYPE: VkStructureType = 1_000_146_003i32

Source§

impl TypedVulkanSinkStructure for VkMultisamplePropertiesEXT

Available on crate feature VK_EXT_sample_locations only.
Source§

const TYPE: VkStructureType = 1_000_143_004i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDevice16BitStorageFeaturesKHR

Available on crate feature VK_KHR_16bit_storage only.
Source§

const TYPE: VkStructureType = 1_000_083_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT

Available on crate feature VK_EXT_blend_operation_advanced only.
Source§

const TYPE: VkStructureType = 1_000_148_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT

Available on crate feature VK_EXT_blend_operation_advanced only.
Source§

const TYPE: VkStructureType = 1_000_148_001i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceBufferDeviceAddressFeaturesKHR

Available on crate feature VK_KHR_buffer_device_address only.
Source§

const TYPE: VkStructureType = 1_000_257_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceConservativeRasterizationPropertiesEXT

Available on crate feature VK_EXT_conservative_rasterization only.
Source§

const TYPE: VkStructureType = 1_000_101_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceDepthStencilResolvePropertiesKHR

Available on crate feature VK_KHR_depth_stencil_resolve only.
Source§

const TYPE: VkStructureType = 1_000_199_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT

Available on crate feature VK_EXT_descriptor_buffer only.
Source§

const TYPE: VkStructureType = 1_000_316_001i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceDescriptorBufferFeaturesEXT

Available on crate feature VK_EXT_descriptor_buffer only.
Source§

const TYPE: VkStructureType = 1_000_316_002i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceDescriptorBufferPropertiesEXT

Available on crate feature VK_EXT_descriptor_buffer only.
Source§

const TYPE: VkStructureType = 1_000_316_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceDescriptorIndexingFeaturesEXT

Available on crate feature VK_EXT_descriptor_indexing only.
Source§

const TYPE: VkStructureType = 1_000_161_001i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceDescriptorIndexingPropertiesEXT

Available on crate feature VK_EXT_descriptor_indexing only.
Source§

const TYPE: VkStructureType = 1_000_161_002i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceDiscardRectanglePropertiesEXT

Available on crate feature VK_EXT_discard_rectangles only.
Source§

const TYPE: VkStructureType = 1_000_099_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceDynamicRenderingFeaturesKHR

Available on crate feature VK_KHR_dynamic_rendering only.
Source§

const TYPE: VkStructureType = 1_000_044_003i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR

Available on crate feature VK_KHR_dynamic_rendering_local_read only.
Source§

const TYPE: VkStructureType = 1_000_232_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceExternalMemoryHostPropertiesEXT

Available on crate feature VK_EXT_external_memory_host only.
Source§

const TYPE: VkStructureType = 1_000_178_002i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceFeatures2KHR

Available on crate feature VK_KHR_get_physical_device_properties2 only.
Source§

const TYPE: VkStructureType = 1_000_059_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceFloatControlsPropertiesKHR

Available on crate feature VK_KHR_shader_float_controls only.
Source§

const TYPE: VkStructureType = 1_000_197_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR

Available on crate feature VK_KHR_global_priority only.
Source§

const TYPE: VkStructureType = 1_000_388_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceGroupPropertiesKHR

Available on crate feature VK_KHR_device_group_creation only.
Source§

const TYPE: VkStructureType = 1_000_070_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceHostImageCopyFeaturesEXT

Available on crate feature VK_EXT_host_image_copy only.
Source§

const TYPE: VkStructureType = 1_000_270_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceHostImageCopyPropertiesEXT

Available on crate feature VK_EXT_host_image_copy only.
Source§

const TYPE: VkStructureType = 1_000_270_001i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceIDPropertiesKHR

Available on crate features VK_KHR_external_fence_capabilities or VK_KHR_external_memory_capabilities or VK_KHR_external_semaphore_capabilities only.
Source§

const TYPE: VkStructureType = 1_000_071_004i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceIndexTypeUint8FeaturesKHR

Available on crate feature VK_KHR_index_type_uint8 only.
Source§

const TYPE: VkStructureType = 1_000_265_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceLineRasterizationFeaturesKHR

Available on crate feature VK_KHR_line_rasterization only.
Source§

const TYPE: VkStructureType = 1_000_259_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceLineRasterizationPropertiesKHR

Available on crate feature VK_KHR_line_rasterization only.
Source§

const TYPE: VkStructureType = 1_000_259_002i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceMaintenance3PropertiesKHR

Available on crate feature VK_KHR_maintenance3 only.
Source§

const TYPE: VkStructureType = 1_000_168_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceMaintenance4FeaturesKHR

Available on crate feature VK_KHR_maintenance4 only.
Source§

const TYPE: VkStructureType = 1_000_413_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceMaintenance4PropertiesKHR

Available on crate feature VK_KHR_maintenance4 only.
Source§

const TYPE: VkStructureType = 1_000_413_001i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceMaintenance5FeaturesKHR

Available on crate feature VK_KHR_maintenance5 only.
Source§

const TYPE: VkStructureType = 1_000_470_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceMaintenance5PropertiesKHR

Available on crate feature VK_KHR_maintenance5 only.
Source§

const TYPE: VkStructureType = 1_000_470_001i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceMaintenance6FeaturesKHR

Available on crate feature VK_KHR_maintenance6 only.
Source§

const TYPE: VkStructureType = 1_000_545_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceMaintenance6PropertiesKHR

Available on crate feature VK_KHR_maintenance6 only.
Source§

const TYPE: VkStructureType = 1_000_545_001i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceMemoryProperties2KHR

Available on crate feature VK_KHR_get_physical_device_properties2 only.
Source§

const TYPE: VkStructureType = 1_000_059_006i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceMultiviewFeaturesKHR

Available on crate feature VK_KHR_multiview only.
Source§

const TYPE: VkStructureType = 1_000_053_001i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX

Available on crate feature VK_NVX_multiview_per_view_attributes only.
Source§

const TYPE: VkStructureType = 1_000_097_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceMultiviewPropertiesKHR

Available on crate feature VK_KHR_multiview only.
Source§

const TYPE: VkStructureType = 1_000_053_002i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDevicePipelineProtectedAccessFeaturesEXT

Available on crate feature VK_EXT_pipeline_protected_access only.
Source§

const TYPE: VkStructureType = 1_000_466_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDevicePipelineRobustnessFeaturesEXT

Available on crate feature VK_EXT_pipeline_robustness only.
Source§

const TYPE: VkStructureType = 1_000_068_001i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDevicePipelineRobustnessPropertiesEXT

Available on crate feature VK_EXT_pipeline_robustness only.
Source§

const TYPE: VkStructureType = 1_000_068_002i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDevicePointClippingPropertiesKHR

Available on crate feature VK_KHR_maintenance2 only.
Source§

const TYPE: VkStructureType = 1_000_117_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceProperties2KHR

Available on crate feature VK_KHR_get_physical_device_properties2 only.
Source§

const TYPE: VkStructureType = 1_000_059_001i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDevicePushDescriptorPropertiesKHR

Available on crate feature VK_KHR_push_descriptor only.
Source§

const TYPE: VkStructureType = 1_000_080_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceSampleLocationsPropertiesEXT

Available on crate feature VK_EXT_sample_locations only.
Source§

const TYPE: VkStructureType = 1_000_143_003i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT

Available on crate feature VK_EXT_sampler_filter_minmax only.
Source§

const TYPE: VkStructureType = 1_000_130_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR

Available on crate feature VK_KHR_sampler_ycbcr_conversion only.
Source§

const TYPE: VkStructureType = 1_000_156_004i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceShaderExpectAssumeFeaturesKHR

Available on crate feature VK_KHR_shader_expect_assume only.
Source§

const TYPE: VkStructureType = 1_000_544_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceShaderFloatControls2FeaturesKHR

Available on crate feature VK_KHR_shader_float_controls2 only.
Source§

const TYPE: VkStructureType = 1_000_528_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR

Available on crate feature VK_KHR_shader_subgroup_rotate only.
Source§

const TYPE: VkStructureType = 1_000_416_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceSynchronization2FeaturesKHR

Available on crate feature VK_KHR_synchronization2 only.
Source§

const TYPE: VkStructureType = 1_000_314_007i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceVariablePointersFeaturesKHR

Available on crate feature VK_KHR_variable_pointers only.
Source§

const TYPE: VkStructureType = 1_000_120_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR

Available on crate feature VK_KHR_vertex_attribute_divisor only.
Source§

const TYPE: VkStructureType = 1_000_190_002i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT

Available on crate feature VK_EXT_vertex_attribute_divisor only.
Source§

const TYPE: VkStructureType = 1_000_190_000i32

Source§

impl TypedVulkanSinkStructure for VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR

Available on crate feature VK_KHR_vertex_attribute_divisor only.
Source§

const TYPE: VkStructureType = 1_000_525_000i32

Source§

impl TypedVulkanSinkStructure for VkQueueFamilyGlobalPriorityPropertiesKHR

Available on crate feature VK_KHR_global_priority only.
Source§

const TYPE: VkStructureType = 1_000_388_001i32

Source§

impl TypedVulkanSinkStructure for VkQueueFamilyProperties2KHR

Available on crate feature VK_KHR_get_physical_device_properties2 only.
Source§

const TYPE: VkStructureType = 1_000_059_005i32

Source§

impl TypedVulkanSinkStructure for VkSamplerYcbcrConversionImageFormatPropertiesKHR

Available on crate feature VK_KHR_sampler_ycbcr_conversion only.
Source§

const TYPE: VkStructureType = 1_000_156_005i32

Source§

impl TypedVulkanSinkStructure for VkSharedPresentSurfaceCapabilitiesKHR

Available on crate feature VK_KHR_shared_presentable_image only.
Source§

const TYPE: VkStructureType = 1_000_111_000i32

Source§

impl TypedVulkanSinkStructure for VkSparseImageFormatProperties2KHR

Available on crate feature VK_KHR_get_physical_device_properties2 only.
Source§

const TYPE: VkStructureType = 1_000_059_007i32

Source§

impl TypedVulkanSinkStructure for VkSparseImageMemoryRequirements2KHR

Available on crate feature VK_KHR_get_memory_requirements2 only.
Source§

const TYPE: VkStructureType = 1_000_146_004i32

Source§

impl TypedVulkanSinkStructure for VkSubresourceHostMemcpySizeEXT

Available on crate feature VK_EXT_host_image_copy only.
Source§

const TYPE: VkStructureType = 1_000_270_008i32

Source§

impl TypedVulkanSinkStructure for VkSubresourceLayout2KHR

Available on crate feature VK_KHR_maintenance5 only.
Source§

const TYPE: VkStructureType = 1_000_338_002i32

Source§

impl TypedVulkanSinkStructure for VkSurfaceCapabilities2EXT

Available on crate feature VK_EXT_display_surface_counter only.
Source§

const TYPE: VkStructureType = 1_000_090_000i32

Source§

impl TypedVulkanSinkStructure for VkSurfaceCapabilities2KHR

Available on crate feature VK_KHR_get_surface_capabilities2 only.
Source§

const TYPE: VkStructureType = 1_000_119_001i32

Source§

impl TypedVulkanSinkStructure for VkSurfaceCapabilitiesFullScreenExclusiveEXT

Available on crate feature VK_EXT_full_screen_exclusive only.
Source§

const TYPE: VkStructureType = 1_000_255_002i32

Source§

impl TypedVulkanSinkStructure for VkSurfaceFormat2KHR

Available on crate feature VK_KHR_get_surface_capabilities2 only.
Source§

const TYPE: VkStructureType = 1_000_119_002i32

Source§

impl TypedVulkanSinkStructure for VkSurfaceFullScreenExclusiveInfoEXT

Available on crate feature VK_EXT_full_screen_exclusive only.
Source§

const TYPE: VkStructureType = 1_000_255_000i32

Source§

impl TypedVulkanSinkStructure for VkTextureLODGatherFormatPropertiesAMD

Available on crate feature VK_AMD_texture_gather_bias_lod only.
Source§

const TYPE: VkStructureType = 1_000_041_000i32