vulkan 3.10.2 → 3.10.3
raw patch · 81 files changed
+3772/−1094 lines, 81 files
Files
- changelog.md +3/−0
- package.yaml +1/−1
- src/Vulkan/CStruct/Extends.hs +13/−0
- src/Vulkan/Core10/APIConstants.hs +115/−20
- src/Vulkan/Core10/CommandBufferBuilding.hs +362/−282
- src/Vulkan/Core10/Device.hs +3/−0
- src/Vulkan/Core10/Enums/AccessFlagBits.hs +96/−27
- src/Vulkan/Core10/Enums/DynamicState.hs +1/−1
- src/Vulkan/Core10/Enums/PipelineCreateFlagBits.hs +15/−4
- src/Vulkan/Core10/Enums/StructureType.hs +24/−2
- src/Vulkan/Core10/FundamentalTypes.hs +3/−0
- src/Vulkan/Core10/ImageView.hs +1/−1
- src/Vulkan/Core10/Pipeline.hs +8/−7
- src/Vulkan/Core10/PipelineCache.hs +1/−1
- src/Vulkan/Core10/Query.hs +5/−0
- src/Vulkan/Core10/Queue.hs +10/−10
- src/Vulkan/Core10/SparseResourceMemoryManagement.hs +5/−5
- src/Vulkan/Core11/Originally_Based_On_VK_KHR_subgroup.hs +4/−2
- src/Vulkan/Core11/Promoted_From_VK_KHR_device_group.hs +13/−13
- src/Vulkan/Core11/Promoted_From_VK_KHR_get_physical_device_properties2.hs +7/−0
- src/Vulkan/Core12/Promoted_From_VK_KHR_create_renderpass2.hs +15/−15
- src/Vulkan/Core12/Promoted_From_VK_KHR_draw_indirect_count.hs +56/−16
- src/Vulkan/Extensions.hs +4/−0
- src/Vulkan/Extensions/Dependencies.hs +8/−2
- src/Vulkan/Extensions/VK_AMD_buffer_marker.hs +7/−7
- src/Vulkan/Extensions/VK_AMD_rasterization_order.hs +1/−1
- src/Vulkan/Extensions/VK_AMD_rasterization_order.hs-boot +1/−1
- src/Vulkan/Extensions/VK_EXT_color_write_enable.hs +6/−6
- src/Vulkan/Extensions/VK_EXT_conditional_rendering.hs +12/−12
- src/Vulkan/Extensions/VK_EXT_custom_border_color.hs +2/−2
- src/Vulkan/Extensions/VK_EXT_custom_border_color.hs-boot +2/−2
- src/Vulkan/Extensions/VK_EXT_debug_marker.hs +18/−18
- src/Vulkan/Extensions/VK_EXT_debug_utils.hs +33/−33
- src/Vulkan/Extensions/VK_EXT_device_memory_report.hs +1/−1
- src/Vulkan/Extensions/VK_EXT_device_memory_report.hs-boot +1/−1
- src/Vulkan/Extensions/VK_EXT_discard_rectangles.hs +6/−6
- src/Vulkan/Extensions/VK_EXT_display_surface_counter.hs +54/−17
- src/Vulkan/Extensions/VK_EXT_extended_dynamic_state.hs +87/−73
- src/Vulkan/Extensions/VK_EXT_extended_dynamic_state2.hs +30/−30
- src/Vulkan/Extensions/VK_EXT_global_priority.hs +2/−1
- src/Vulkan/Extensions/VK_EXT_global_priority_query.hs +342/−0
- src/Vulkan/Extensions/VK_EXT_global_priority_query.hs-boot +140/−0
- src/Vulkan/Extensions/VK_EXT_image_drm_format_modifier.hs +524/−1
- src/Vulkan/Extensions/VK_EXT_image_drm_format_modifier.hs-boot +524/−1
- src/Vulkan/Extensions/VK_EXT_line_rasterization.hs +6/−6
- src/Vulkan/Extensions/VK_EXT_sample_locations.hs +6/−6
- src/Vulkan/Extensions/VK_EXT_transform_feedback.hs +58/−38
- src/Vulkan/Extensions/VK_EXT_validation_cache.hs +1/−1
- src/Vulkan/Extensions/VK_EXT_validation_features.hs +30/−18
- src/Vulkan/Extensions/VK_EXT_validation_features.hs-boot +5/−1
- src/Vulkan/Extensions/VK_EXT_vertex_attribute_divisor.hs +3/−3
- src/Vulkan/Extensions/VK_EXT_vertex_input_dynamic_state.hs +8/−8
- src/Vulkan/Extensions/VK_INTEL_performance_query.hs +26/−26
- src/Vulkan/Extensions/VK_KHR_acceleration_structure.hs +51/−48
- src/Vulkan/Extensions/VK_KHR_copy_commands2.hs +40/−40
- src/Vulkan/Extensions/VK_KHR_fragment_shading_rate.hs +6/−6
- src/Vulkan/Extensions/VK_KHR_pipeline_executable_properties.hs +2/−2
- src/Vulkan/Extensions/VK_KHR_push_descriptor.hs +12/−12
- src/Vulkan/Extensions/VK_KHR_ray_tracing_pipeline.hs +28/−28
- src/Vulkan/Extensions/VK_KHR_shader_subgroup_uniform_control_flow.hs +211/−0
- src/Vulkan/Extensions/VK_KHR_shader_subgroup_uniform_control_flow.hs-boot +110/−0
- src/Vulkan/Extensions/VK_KHR_swapchain.hs +5/−5
- src/Vulkan/Extensions/VK_KHR_synchronization2.hs +153/−91
- src/Vulkan/Extensions/VK_NV_acquire_winrt_display.hs +1/−1
- src/Vulkan/Extensions/VK_NV_clip_space_w_scaling.hs +6/−6
- src/Vulkan/Extensions/VK_NV_coverage_reduction_mode.hs +1/−1
- src/Vulkan/Extensions/VK_NV_coverage_reduction_mode.hs-boot +1/−1
- src/Vulkan/Extensions/VK_NV_device_diagnostic_checkpoints.hs +7/−7
- src/Vulkan/Extensions/VK_NV_device_generated_commands.hs +41/−21
- src/Vulkan/Extensions/VK_NV_device_generated_commands.hs-boot +1/−1
- src/Vulkan/Extensions/VK_NV_fragment_shading_rate_enums.hs +6/−6
- src/Vulkan/Extensions/VK_NV_mesh_shader.hs +84/−24
- src/Vulkan/Extensions/VK_NV_ray_tracing.hs +24/−24
- src/Vulkan/Extensions/VK_NV_scissor_exclusive.hs +6/−6
- src/Vulkan/Extensions/VK_NV_shading_rate_image.hs +18/−18
- src/Vulkan/Extensions/VK_QCOM_rotated_copy_commands.hs +5/−5
- src/Vulkan/Extensions/VK_QCOM_rotated_copy_commands.hs-boot +5/−5
- src/Vulkan/Extensions/VK_VALVE_mutable_descriptor_type.hs +117/−2
- src/Vulkan/Extensions/VK_VALVE_mutable_descriptor_type.hs-boot +117/−2
- src/Vulkan/Version.hs +2/−2
- vulkan.cabal +3/−1
changelog.md view
@@ -2,6 +2,9 @@ ## WIP +## [3.10.3] - 2021-06-07+- Bump API version to v1.2.180+ ## [3.10.2] - 2021-06-05 - Bump API version to v1.2.179
package.yaml view
@@ -1,5 +1,5 @@ name: vulkan-version: "3.10.2"+version: "3.10.3" synopsis: Bindings to the Vulkan graphics API. category: Graphics maintainer: Joe Hermaszewski <live.long.and.prosper@monoid.al>
src/Vulkan/CStruct/Extends.hs view
@@ -389,6 +389,7 @@ import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_fragment_shading_rate (PhysicalDeviceFragmentShadingRateFeaturesKHR) import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_fragment_shading_rate (PhysicalDeviceFragmentShadingRateKHR) import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_fragment_shading_rate (PhysicalDeviceFragmentShadingRatePropertiesKHR)+import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_global_priority_query (PhysicalDeviceGlobalPriorityQueryFeaturesEXT) import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_device_group_creation (PhysicalDeviceGroupProperties) import {-# SOURCE #-} Vulkan.Core12.Promoted_From_VK_EXT_host_query_reset (PhysicalDeviceHostQueryResetFeatures) import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities (PhysicalDeviceIDProperties)@@ -457,6 +458,7 @@ import {-# SOURCE #-} Vulkan.Extensions.VK_NV_shader_sm_builtins (PhysicalDeviceShaderSMBuiltinsFeaturesNV) import {-# SOURCE #-} Vulkan.Extensions.VK_NV_shader_sm_builtins (PhysicalDeviceShaderSMBuiltinsPropertiesNV) import {-# SOURCE #-} Vulkan.Core12.Promoted_From_VK_KHR_shader_subgroup_extended_types (PhysicalDeviceShaderSubgroupExtendedTypesFeatures)+import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_shader_subgroup_uniform_control_flow (PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR) import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_shader_terminate_invocation (PhysicalDeviceShaderTerminateInvocationFeaturesKHR) import {-# SOURCE #-} Vulkan.Extensions.VK_NV_shading_rate_image (PhysicalDeviceShadingRateImageFeaturesNV) import {-# SOURCE #-} Vulkan.Extensions.VK_NV_shading_rate_image (PhysicalDeviceShadingRateImagePropertiesNV)@@ -549,6 +551,7 @@ import {-# SOURCE #-} Vulkan.Extensions.VK_INTEL_performance_query (QueryPoolPerformanceQueryCreateInfoINTEL) import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_synchronization2 (QueueFamilyCheckpointProperties2NV) import {-# SOURCE #-} Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints (QueueFamilyCheckpointPropertiesNV)+import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_global_priority_query (QueueFamilyGlobalPriorityPropertiesEXT) import {-# SOURCE #-} Vulkan.Core10.DeviceInitialization (QueueFamilyProperties) import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2 (QueueFamilyProperties2) import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing_pipeline (RayTracingPipelineCreateInfoKHR)@@ -870,6 +873,7 @@ Extends DeviceCreateInfo PhysicalDeviceDiagnosticsConfigFeaturesNV = () Extends DeviceCreateInfo DeviceDiagnosticsConfigCreateInfoNV = () Extends DeviceCreateInfo PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR = ()+ Extends DeviceCreateInfo PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR = () Extends DeviceCreateInfo PhysicalDeviceRobustness2FeaturesEXT = () Extends DeviceCreateInfo PhysicalDeviceImageRobustnessFeaturesEXT = () Extends DeviceCreateInfo PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR = ()@@ -953,6 +957,7 @@ Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderDrawParametersFeatures = () Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderFloat16Int8Features = () Extends PhysicalDeviceFeatures2 PhysicalDeviceHostQueryResetFeatures = ()+ Extends PhysicalDeviceFeatures2 PhysicalDeviceGlobalPriorityQueryFeaturesEXT = () Extends PhysicalDeviceFeatures2 PhysicalDeviceDeviceMemoryReportFeaturesEXT = () Extends PhysicalDeviceFeatures2 PhysicalDeviceDescriptorIndexingFeatures = () Extends PhysicalDeviceFeatures2 PhysicalDeviceTimelineSemaphoreFeatures = ()@@ -1010,6 +1015,7 @@ Extends PhysicalDeviceFeatures2 PhysicalDeviceExtendedDynamicState2FeaturesEXT = () Extends PhysicalDeviceFeatures2 PhysicalDeviceDiagnosticsConfigFeaturesNV = () Extends PhysicalDeviceFeatures2 PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR = ()+ Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR = () Extends PhysicalDeviceFeatures2 PhysicalDeviceRobustness2FeaturesEXT = () Extends PhysicalDeviceFeatures2 PhysicalDeviceImageRobustnessFeaturesEXT = () Extends PhysicalDeviceFeatures2 PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR = ()@@ -1108,6 +1114,7 @@ Extends PresentInfoKHR PresentFrameTokenGGP = () Extends QueryPoolCreateInfo QueryPoolPerformanceCreateInfoKHR = () Extends QueryPoolCreateInfo QueryPoolPerformanceQueryCreateInfoINTEL = ()+ Extends QueueFamilyProperties2 QueueFamilyGlobalPriorityPropertiesEXT = () Extends QueueFamilyProperties2 QueueFamilyCheckpointPropertiesNV = () Extends QueueFamilyProperties2 QueueFamilyCheckpointProperties2NV = () Extends RayTracingPipelineCreateInfoKHR PipelineCreationFeedbackCreateInfoEXT = ()@@ -1361,6 +1368,8 @@ STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES -> go @PhysicalDeviceFloatControlsProperties STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES -> go @PhysicalDeviceHostQueryResetFeatures STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT -> go @DeviceQueueGlobalPriorityCreateInfoEXT+ STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT -> go @PhysicalDeviceGlobalPriorityQueryFeaturesEXT+ STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT -> go @QueueFamilyGlobalPriorityPropertiesEXT STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT -> go @DebugUtilsMessengerCreateInfoEXT STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT -> go @PhysicalDeviceDeviceMemoryReportFeaturesEXT STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT -> go @DeviceDeviceMemoryReportCreateInfoEXT@@ -1506,6 +1515,7 @@ STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV -> go @PhysicalDeviceDiagnosticsConfigFeaturesNV STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV -> go @DeviceDiagnosticsConfigCreateInfoNV STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR -> go @PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR+ STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR -> go @PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT -> go @PhysicalDeviceRobustness2FeaturesEXT STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT -> go @PhysicalDeviceRobustness2PropertiesEXT STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT -> go @PhysicalDeviceImageRobustnessFeaturesEXT@@ -1694,6 +1704,8 @@ {-# complete (::&) :: PhysicalDeviceFloatControlsProperties #-} {-# complete (::&) :: PhysicalDeviceHostQueryResetFeatures #-} {-# complete (::&) :: DeviceQueueGlobalPriorityCreateInfoEXT #-}+{-# complete (::&) :: PhysicalDeviceGlobalPriorityQueryFeaturesEXT #-}+{-# complete (::&) :: QueueFamilyGlobalPriorityPropertiesEXT #-} {-# complete (::&) :: DebugUtilsMessengerCreateInfoEXT #-} {-# complete (::&) :: PhysicalDeviceDeviceMemoryReportFeaturesEXT #-} {-# complete (::&) :: DeviceDeviceMemoryReportCreateInfoEXT #-}@@ -1839,6 +1851,7 @@ {-# complete (::&) :: PhysicalDeviceDiagnosticsConfigFeaturesNV #-} {-# complete (::&) :: DeviceDiagnosticsConfigCreateInfoNV #-} {-# complete (::&) :: PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR #-}+{-# complete (::&) :: PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR #-} {-# complete (::&) :: PhysicalDeviceRobustness2FeaturesEXT #-} {-# complete (::&) :: PhysicalDeviceRobustness2PropertiesEXT #-} {-# complete (::&) :: PhysicalDeviceImageRobustnessFeaturesEXT #-}
src/Vulkan/Core10/APIConstants.hs view
@@ -45,6 +45,8 @@ , pattern MAX_DRIVER_INFO_SIZE , SHADER_UNUSED_KHR , pattern SHADER_UNUSED_KHR+ , MAX_GLOBAL_PRIORITY_SIZE_EXT+ , pattern MAX_GLOBAL_PRIORITY_SIZE_EXT , pattern NULL_HANDLE , IsHandle , HasObjectType(..)@@ -58,7 +60,11 @@ import Vulkan.Core10.Enums.ObjectType (ObjectType) import Vulkan.Core10.FundamentalTypes (Bool32(..)) import Vulkan.Core10.Enums.PipelineCacheHeaderVersion (PipelineCacheHeaderVersion(..))--- No documentation found for TopLevel "VK_LOD_CLAMP_NONE"+-- | VK_LOD_CLAMP_NONE - Maximum level of detail unclamped access sentinel+--+-- = See Also+--+-- No cross-references are available pattern LOD_CLAMP_NONE :: Float pattern LOD_CLAMP_NONE = 1000.0 @@ -89,135 +95,224 @@ type MAX_PHYSICAL_DEVICE_NAME_SIZE = 256 --- No documentation found for TopLevel "VK_MAX_PHYSICAL_DEVICE_NAME_SIZE"+-- | VK_MAX_PHYSICAL_DEVICE_NAME_SIZE - Length of a physical device name+-- string+--+-- = See Also+--+-- No cross-references are available pattern MAX_PHYSICAL_DEVICE_NAME_SIZE :: forall a . Integral a => a pattern MAX_PHYSICAL_DEVICE_NAME_SIZE = 256 type UUID_SIZE = 16 --- No documentation found for TopLevel "VK_UUID_SIZE"+-- | VK_UUID_SIZE - Length of a universally unique device or driver build+-- identifier+--+-- = See Also+--+-- No cross-references are available pattern UUID_SIZE :: forall a . Integral a => a pattern UUID_SIZE = 16 type LUID_SIZE = 8 --- No documentation found for TopLevel "VK_LUID_SIZE"+-- | VK_LUID_SIZE - Length of a locally unique device identifier+--+-- = See Also+--+-- No cross-references are available pattern LUID_SIZE :: forall a . Integral a => a pattern LUID_SIZE = 8 type MAX_EXTENSION_NAME_SIZE = 256 --- No documentation found for TopLevel "VK_MAX_EXTENSION_NAME_SIZE"+-- | VK_MAX_EXTENSION_NAME_SIZE - Maximum length of a layer of extension name+-- string+--+-- = See Also+--+-- No cross-references are available pattern MAX_EXTENSION_NAME_SIZE :: forall a . Integral a => a pattern MAX_EXTENSION_NAME_SIZE = 256 type MAX_DESCRIPTION_SIZE = 256 --- No documentation found for TopLevel "VK_MAX_DESCRIPTION_SIZE"+-- | VK_MAX_DESCRIPTION_SIZE - Length of a driver name string+--+-- = See Also+--+-- No cross-references are available pattern MAX_DESCRIPTION_SIZE :: forall a . Integral a => a pattern MAX_DESCRIPTION_SIZE = 256 type MAX_MEMORY_TYPES = 32 --- No documentation found for TopLevel "VK_MAX_MEMORY_TYPES"+-- | VK_MAX_MEMORY_TYPES - Length of an array of memory types+--+-- = See Also+--+-- No cross-references are available pattern MAX_MEMORY_TYPES :: forall a . Integral a => a pattern MAX_MEMORY_TYPES = 32 type MAX_MEMORY_HEAPS = 16 --- No documentation found for TopLevel "VK_MAX_MEMORY_HEAPS"+-- | VK_MAX_MEMORY_HEAPS - Length of an array of memory heaps+--+-- = See Also+--+-- No cross-references are available pattern MAX_MEMORY_HEAPS :: forall a . Integral a => a pattern MAX_MEMORY_HEAPS = 16 type REMAINING_MIP_LEVELS = 0xffffffff --- No documentation found for TopLevel "VK_REMAINING_MIP_LEVELS"+-- | VK_REMAINING_MIP_LEVELS - Sentinel for all remaining array layers+--+-- = See Also+--+-- No cross-references are available pattern REMAINING_MIP_LEVELS :: Word32 pattern REMAINING_MIP_LEVELS = 0xffffffff type REMAINING_ARRAY_LAYERS = 0xffffffff --- No documentation found for TopLevel "VK_REMAINING_ARRAY_LAYERS"+-- | VK_REMAINING_ARRAY_LAYERS - Sentinel for all remaining array layers+--+-- = See Also+--+-- No cross-references are available pattern REMAINING_ARRAY_LAYERS :: Word32 pattern REMAINING_ARRAY_LAYERS = 0xffffffff type WHOLE_SIZE = 0xffffffffffffffff --- No documentation found for TopLevel "VK_WHOLE_SIZE"+-- | VK_WHOLE_SIZE - Sentinel value to use entire remaining array length+--+-- = See Also+--+-- No cross-references are available pattern WHOLE_SIZE :: Word64 pattern WHOLE_SIZE = 0xffffffffffffffff type ATTACHMENT_UNUSED = 0xffffffff --- No documentation found for TopLevel "VK_ATTACHMENT_UNUSED"+-- | VK_ATTACHMENT_UNUSED - Unused attachment sentinel+--+-- = See Also+--+-- No cross-references are available pattern ATTACHMENT_UNUSED :: Word32 pattern ATTACHMENT_UNUSED = 0xffffffff type QUEUE_FAMILY_IGNORED = 0xffffffff --- No documentation found for TopLevel "VK_QUEUE_FAMILY_IGNORED"+-- | VK_QUEUE_FAMILY_IGNORED - Ignored queue family index sentinel+--+-- = See Also+--+-- No cross-references are available pattern QUEUE_FAMILY_IGNORED :: Word32 pattern QUEUE_FAMILY_IGNORED = 0xffffffff type QUEUE_FAMILY_EXTERNAL = 0xfffffffe --- No documentation found for TopLevel "VK_QUEUE_FAMILY_EXTERNAL"+-- | VK_QUEUE_FAMILY_EXTERNAL - External queue family index sentinel+--+-- = See Also+--+-- No cross-references are available pattern QUEUE_FAMILY_EXTERNAL :: Word32 pattern QUEUE_FAMILY_EXTERNAL = 0xfffffffe type QUEUE_FAMILY_FOREIGN_EXT = 0xfffffffd --- No documentation found for TopLevel "VK_QUEUE_FAMILY_FOREIGN_EXT"+-- | VK_QUEUE_FAMILY_FOREIGN_EXT - Foreign queue family index sentinel+--+-- = See Also+--+-- No cross-references are available pattern QUEUE_FAMILY_FOREIGN_EXT :: Word32 pattern QUEUE_FAMILY_FOREIGN_EXT = 0xfffffffd type SUBPASS_EXTERNAL = 0xffffffff --- No documentation found for TopLevel "VK_SUBPASS_EXTERNAL"+-- | VK_SUBPASS_EXTERNAL - Subpass index sentinel expanding synchronization+-- scope outside a subpass+--+-- = See Also+--+-- No cross-references are available pattern SUBPASS_EXTERNAL :: Word32 pattern SUBPASS_EXTERNAL = 0xffffffff type MAX_DEVICE_GROUP_SIZE = 32 --- No documentation found for TopLevel "VK_MAX_DEVICE_GROUP_SIZE"+-- | VK_MAX_DEVICE_GROUP_SIZE - Length of a physical device handle array+--+-- = See Also+--+-- No cross-references are available pattern MAX_DEVICE_GROUP_SIZE :: forall a . Integral a => a pattern MAX_DEVICE_GROUP_SIZE = 32 type MAX_DRIVER_NAME_SIZE = 256 --- No documentation found for TopLevel "VK_MAX_DRIVER_NAME_SIZE"+-- | VK_MAX_DRIVER_NAME_SIZE - Maximum length of a physical device driver+-- name string+--+-- = See Also+--+-- No cross-references are available pattern MAX_DRIVER_NAME_SIZE :: forall a . Integral a => a pattern MAX_DRIVER_NAME_SIZE = 256 type MAX_DRIVER_INFO_SIZE = 256 --- No documentation found for TopLevel "VK_MAX_DRIVER_INFO_SIZE"+-- | VK_MAX_DRIVER_INFO_SIZE - Length of a physical device driver information+-- string+--+-- = See Also+--+-- No cross-references are available pattern MAX_DRIVER_INFO_SIZE :: forall a . Integral a => a pattern MAX_DRIVER_INFO_SIZE = 256 type SHADER_UNUSED_KHR = 0xffffffff --- No documentation found for TopLevel "VK_SHADER_UNUSED_KHR"+-- | VK_SHADER_UNUSED_KHR - Sentinel for an unused shader index+--+-- = See Also+--+-- No cross-references are available pattern SHADER_UNUSED_KHR :: Word32 pattern SHADER_UNUSED_KHR = 0xffffffff+++type MAX_GLOBAL_PRIORITY_SIZE_EXT = 16++-- No documentation found for TopLevel "VK_MAX_GLOBAL_PRIORITY_SIZE_EXT"+pattern MAX_GLOBAL_PRIORITY_SIZE_EXT :: forall a . Integral a => a+pattern MAX_GLOBAL_PRIORITY_SIZE_EXT = 16 -- | VK_NULL_HANDLE - Reserved non-valid object handle
src/Vulkan/Core10/CommandBufferBuilding.hs view
@@ -401,12 +401,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -500,12 +500,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -617,12 +617,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -691,12 +691,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -762,8 +762,8 @@ -- depth values. -- -- For fixed-point depth buffer representations, r is constant throughout--- the range of the entire depth buffer. Its value is implementation--- dependent but /must/ be at most+-- the range of the entire depth buffer. Its value is+-- implementation-dependent but /must/ be at most -- -- - r = 2 × 2-n --@@ -835,12 +835,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -902,12 +902,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -991,12 +991,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1069,12 +1069,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1150,12 +1150,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1232,12 +1232,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1438,12 +1438,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1558,12 +1558,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1694,12 +1694,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -2209,16 +2209,36 @@ -- /must/ be the same as the current subpass color and\/or -- depth\/stencil attachments ----- - #VUID-vkCmdDraw-pStrides-04884# If the bound graphics pipeline was+-- - #VUID-vkCmdDraw-None-04912# If the bound graphics pipeline was+-- created with both the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- and+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic states enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+--+-- - #VUID-vkCmdDraw-pStrides-04913# If the bound graphics pipeline was -- created with the -- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic state enabled, but not the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT' -- dynamic state enabled, then -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ have been called in the current command buffer prior to this--- drawing command, and the @pStrides@ parameter of+-- draw command, and the @pStrides@ parameter of -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ not be @NULL@ --+-- - #VUID-vkCmdDraw-None-04914# If the bound graphics pipeline state was+-- created with the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- dynamic state enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+-- -- - #VUID-vkCmdDraw-commandBuffer-02712# If @commandBuffer@ is a -- protected command buffer, any resource written to by the -- 'Vulkan.Core10.Handles.Pipeline' object bound to the pipeline bind@@ -2280,12 +2300,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | Graphics |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -2810,16 +2830,36 @@ -- /must/ be the same as the current subpass color and\/or -- depth\/stencil attachments ----- - #VUID-vkCmdDrawIndexed-pStrides-04884# If the bound graphics+-- - #VUID-vkCmdDrawIndexed-None-04912# If the bound graphics pipeline+-- was created with both the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- and+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic states enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+--+-- - #VUID-vkCmdDrawIndexed-pStrides-04913# If the bound graphics -- pipeline was created with the -- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic state enabled, but not the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT' -- dynamic state enabled, then -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ have been called in the current command buffer prior to this--- drawing command, and the @pStrides@ parameter of+-- draw command, and the @pStrides@ parameter of -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ not be @NULL@ --+-- - #VUID-vkCmdDrawIndexed-None-04914# If the bound graphics pipeline+-- state was created with the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- dynamic state enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+-- -- - #VUID-vkCmdDrawIndexed-commandBuffer-02712# If @commandBuffer@ is a -- protected command buffer, any resource written to by the -- 'Vulkan.Core10.Handles.Pipeline' object bound to the pipeline bind@@ -2887,12 +2927,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | Graphics |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -3405,16 +3445,36 @@ -- /must/ be the same as the current subpass color and\/or -- depth\/stencil attachments ----- - #VUID-vkCmdDrawIndirect-pStrides-04884# If the bound graphics+-- - #VUID-vkCmdDrawIndirect-None-04912# If the bound graphics pipeline+-- was created with both the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- and+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic states enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+--+-- - #VUID-vkCmdDrawIndirect-pStrides-04913# If the bound graphics -- pipeline was created with the -- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic state enabled, but not the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT' -- dynamic state enabled, then -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ have been called in the current command buffer prior to this--- drawing command, and the @pStrides@ parameter of+-- draw command, and the @pStrides@ parameter of -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ not be @NULL@ --+-- - #VUID-vkCmdDrawIndirect-None-04914# If the bound graphics pipeline+-- state was created with the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- dynamic state enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+-- -- - #VUID-vkCmdDrawIndirect-None-04007# All vertex input bindings -- accessed via vertex input variables declared in the vertex shader -- entry point’s interface /must/ have either valid or@@ -3509,12 +3569,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | Graphics |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -4029,16 +4089,36 @@ -- /must/ be the same as the current subpass color and\/or -- depth\/stencil attachments ----- - #VUID-vkCmdDrawIndexedIndirect-pStrides-04884# If the bound graphics+-- - #VUID-vkCmdDrawIndexedIndirect-None-04912# If the bound graphics+-- pipeline was created with both the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- and+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic states enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+--+-- - #VUID-vkCmdDrawIndexedIndirect-pStrides-04913# If the bound graphics -- pipeline was created with the -- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic state enabled, but not the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT' -- dynamic state enabled, then -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ have been called in the current command buffer prior to this--- drawing command, and the @pStrides@ parameter of+-- draw command, and the @pStrides@ parameter of -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ not be @NULL@ --+-- - #VUID-vkCmdDrawIndexedIndirect-None-04914# If the bound graphics+-- pipeline state was created with the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- dynamic state enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+-- -- - #VUID-vkCmdDrawIndexedIndirect-None-04007# All vertex input bindings -- accessed via vertex input variables declared in the vertex shader -- entry point’s interface /must/ have either valid or@@ -4134,12 +4214,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | Graphics |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -4458,12 +4538,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Compute | Compute |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Compute |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -4782,12 +4862,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Compute | Compute |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Compute |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -4925,13 +5005,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Transfer | Transfer |--- | Secondary | | Graphics | |--- | | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Transfer |+-- | Secondary | | Graphics |+-- | | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -5465,13 +5545,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Transfer | Transfer |--- | Secondary | | Graphics | |--- | | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Transfer |+-- | Secondary | | Graphics |+-- | | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -5591,8 +5671,8 @@ -- Due to allowable rounding errors in the generation of the source texture -- coordinates, it is not always possible to guarantee exactly which source -- texels will be sampled for a given blit. As rounding errors are--- implementation dependent, the exact results of a blitting operation are--- also implementation dependent.+-- implementation-dependent, the exact results of a blitting operation are+-- also implementation-dependent. -- -- Blits are done layer by layer starting with the @baseArrayLayer@ member -- of @srcSubresource@ for the source and @dstSubresource@ for the@@ -5907,12 +5987,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Graphics | Transfer |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -6268,13 +6348,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Transfer | Transfer |--- | Secondary | | Graphics | |--- | | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Transfer |+-- | Secondary | | Graphics |+-- | | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -6615,13 +6695,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Transfer | Transfer |--- | Secondary | | Graphics | |--- | | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Transfer |+-- | Secondary | | Graphics |+-- | | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -6773,13 +6853,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Transfer | Transfer |--- | Secondary | | Graphics | |--- | | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Transfer |+-- | Secondary | | Graphics |+-- | | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -6901,13 +6981,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Transfer | Transfer |--- | Secondary | | Graphics | |--- | | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Transfer |+-- | Secondary | | Graphics |+-- | | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -7079,12 +7159,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Graphics | Transfer |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -7297,12 +7377,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Graphics | Transfer |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -7485,12 +7565,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | Graphics |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -7757,12 +7837,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Graphics | Transfer |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -7919,12 +7999,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -8080,12 +8160,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -8493,12 +8573,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -8905,13 +8985,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Transfer | |--- | Secondary | | Graphics | |--- | | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Transfer |+-- | Secondary | | Graphics |+-- | | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -9149,12 +9229,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -9283,12 +9363,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -9400,12 +9480,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -9590,13 +9670,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Transfer | Transfer |--- | Secondary | | Graphics | |--- | | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Transfer |+-- | Secondary | | Graphics |+-- | | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -9811,12 +9891,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Graphics | Transfer |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -9965,12 +10045,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -10184,11 +10264,11 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Graphics | Graphics |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Graphics |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -10299,11 +10379,11 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | Graphics |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -10380,11 +10460,11 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | Graphics |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -10611,13 +10691,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Transfer | |--- | | | Graphics | |--- | | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Transfer |+-- | | | Graphics |+-- | | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Core10/Device.hs view
@@ -156,6 +156,7 @@ import {-# SOURCE #-} Vulkan.Extensions.VK_INTEL_shader_integer_functions2 (PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL) import {-# SOURCE #-} Vulkan.Extensions.VK_NV_shader_sm_builtins (PhysicalDeviceShaderSMBuiltinsFeaturesNV) import {-# SOURCE #-} Vulkan.Core12.Promoted_From_VK_KHR_shader_subgroup_extended_types (PhysicalDeviceShaderSubgroupExtendedTypesFeatures)+import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_shader_subgroup_uniform_control_flow (PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR) import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_shader_terminate_invocation (PhysicalDeviceShaderTerminateInvocationFeaturesKHR) import {-# SOURCE #-} Vulkan.Extensions.VK_NV_shading_rate_image (PhysicalDeviceShadingRateImageFeaturesNV) import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_subgroup_size_control (PhysicalDeviceSubgroupSizeControlFeaturesEXT)@@ -778,6 +779,7 @@ -- 'Vulkan.Extensions.VK_INTEL_shader_integer_functions2.PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL', -- 'Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsFeaturesNV', -- 'Vulkan.Core12.Promoted_From_VK_KHR_shader_subgroup_extended_types.PhysicalDeviceShaderSubgroupExtendedTypesFeatures',+-- 'Vulkan.Extensions.VK_KHR_shader_subgroup_uniform_control_flow.PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR', -- 'Vulkan.Extensions.VK_KHR_shader_terminate_invocation.PhysicalDeviceShaderTerminateInvocationFeaturesKHR', -- 'Vulkan.Extensions.VK_NV_shading_rate_image.PhysicalDeviceShadingRateImageFeaturesNV', -- 'Vulkan.Extensions.VK_EXT_subgroup_size_control.PhysicalDeviceSubgroupSizeControlFeaturesEXT',@@ -893,6 +895,7 @@ | Just Refl <- eqT @e @PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR = Just f | Just Refl <- eqT @e @PhysicalDeviceImageRobustnessFeaturesEXT = Just f | Just Refl <- eqT @e @PhysicalDeviceRobustness2FeaturesEXT = Just f+ | Just Refl <- eqT @e @PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR = Just f | Just Refl <- eqT @e @PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR = Just f | Just Refl <- eqT @e @DeviceDiagnosticsConfigCreateInfoNV = Just f | Just Refl <- eqT @e @PhysicalDeviceDiagnosticsConfigFeaturesNV = Just f
src/Vulkan/Core10/Enums/AccessFlagBits.hs view
@@ -176,39 +176,53 @@ -- | 'ACCESS_INDIRECT_COMMAND_READ_BIT' specifies read access to indirect -- command data read as part of an indirect build, trace, drawing or--- dispatching command.+-- dispatching command. Such access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_DRAW_INDIRECT_BIT'+-- pipeline stage. pattern ACCESS_INDIRECT_COMMAND_READ_BIT = AccessFlagBits 0x00000001 -- | 'ACCESS_INDEX_READ_BIT' specifies read access to an index buffer as part -- of an indexed drawing command, bound by--- 'Vulkan.Core10.CommandBufferBuilding.cmdBindIndexBuffer'.+-- 'Vulkan.Core10.CommandBufferBuilding.cmdBindIndexBuffer'. Such access+-- occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_VERTEX_INPUT_BIT'+-- pipeline stage. pattern ACCESS_INDEX_READ_BIT = AccessFlagBits 0x00000002 -- | 'ACCESS_VERTEX_ATTRIBUTE_READ_BIT' specifies read access to a vertex -- buffer as part of a drawing command, bound by--- 'Vulkan.Core10.CommandBufferBuilding.cmdBindVertexBuffers'.+-- 'Vulkan.Core10.CommandBufferBuilding.cmdBindVertexBuffers'. Such access+-- occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_VERTEX_INPUT_BIT'+-- pipeline stage. pattern ACCESS_VERTEX_ATTRIBUTE_READ_BIT = AccessFlagBits 0x00000004 -- | 'ACCESS_UNIFORM_READ_BIT' specifies read access to a--- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-uniformbuffer uniform buffer>.+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-uniformbuffer uniform buffer>+-- in any shader pipeline stage. pattern ACCESS_UNIFORM_READ_BIT = AccessFlagBits 0x00000008 -- | 'ACCESS_INPUT_ATTACHMENT_READ_BIT' specifies read access to an -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass input attachment>--- within a render pass during fragment shading.+-- within a render pass during fragment shading. Such access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_FRAGMENT_SHADER_BIT'+-- pipeline stage. pattern ACCESS_INPUT_ATTACHMENT_READ_BIT = AccessFlagBits 0x00000010 -- | 'ACCESS_SHADER_READ_BIT' specifies read access to a+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-uniformbuffer uniform buffer>,+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-uniformtexelbuffer uniform texel buffer>,+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-sampledimage sampled image>, -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-storagebuffer storage buffer>, -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-physical-storage-buffer physical storage buffer>, -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#shader-binding-table shader binding table>,--- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-uniformtexelbuffer uniform texel buffer>, -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-storagetexelbuffer storage texel buffer>,--- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-sampledimage sampled image>, -- or--- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-storageimage storage image>.+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-storageimage storage image>+-- in any shader pipeline stage. pattern ACCESS_SHADER_READ_BIT = AccessFlagBits 0x00000020 -- | 'ACCESS_SHADER_WRITE_BIT' specifies write access to a -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-storagebuffer storage buffer>, -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-physical-storage-buffer physical storage buffer>, -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-storagetexelbuffer storage texel buffer>, -- or--- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-storageimage storage image>.+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-storageimage storage image>+-- in any shader pipeline stage. pattern ACCESS_SHADER_WRITE_BIT = AccessFlagBits 0x00000040 -- | 'ACCESS_COLOR_ATTACHMENT_READ_BIT' specifies read access to a -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass color attachment>,@@ -219,6 +233,9 @@ -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass-load-store-ops subpass load operations>. -- It does not include -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#framebuffer-blend-advanced advanced blend operations>.+-- Such access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT'+-- pipeline stage. pattern ACCESS_COLOR_ATTACHMENT_READ_BIT = AccessFlagBits 0x00000080 -- | 'ACCESS_COLOR_ATTACHMENT_WRITE_BIT' specifies write access to a -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass color, resolve, or depth\/stencil resolve attachment>@@ -226,6 +243,9 @@ -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass render pass> -- or via certain -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass-load-store-ops subpass load and store operations>.+-- Such access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT'+-- pipeline stage. pattern ACCESS_COLOR_ATTACHMENT_WRITE_BIT = AccessFlagBits 0x00000100 -- | 'ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT' specifies read access to a -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass depth\/stencil attachment>,@@ -233,6 +253,11 @@ -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fragops-ds-state depth or stencil operations> -- or via certain -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass-load-store-ops subpass load operations>.+-- Such access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT'+-- or+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT'+-- pipeline stages. pattern ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT = AccessFlagBits 0x00000200 -- | 'ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT' specifies write access to a -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass depth\/stencil attachment>,@@ -240,26 +265,39 @@ -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fragops-ds-state depth or stencil operations> -- or via certain -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass-load-store-ops subpass load and store operations>.+-- Such access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT'+-- or+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT'+-- pipeline stages. pattern ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT = AccessFlagBits 0x00000400 -- | 'ACCESS_TRANSFER_READ_BIT' specifies read access to an image or buffer -- in a -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#copies copy>--- operation.+-- operation. Such access occurs in the+-- 'Vulkan.Extensions.VK_KHR_synchronization2.PIPELINE_STAGE_2_ALL_TRANSFER_BIT_KHR'+-- pipeline stage. pattern ACCESS_TRANSFER_READ_BIT = AccessFlagBits 0x00000800 -- | 'ACCESS_TRANSFER_WRITE_BIT' specifies write access to an image or buffer -- in a -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#clears clear> -- or -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#copies copy>--- operation.+-- operation. Such access occurs in the+-- 'Vulkan.Extensions.VK_KHR_synchronization2.PIPELINE_STAGE_2_ALL_TRANSFER_BIT_KHR'+-- pipeline stage. pattern ACCESS_TRANSFER_WRITE_BIT = AccessFlagBits 0x00001000 -- | 'ACCESS_HOST_READ_BIT' specifies read access by a host operation. -- Accesses of this type are not performed through a resource, but directly--- on memory.+-- on memory. Such access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_HOST_BIT'+-- pipeline stage. pattern ACCESS_HOST_READ_BIT = AccessFlagBits 0x00002000 -- | 'ACCESS_HOST_WRITE_BIT' specifies write access by a host operation. -- Accesses of this type are not performed through a resource, but directly--- on memory.+-- on memory. Such access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_HOST_BIT'+-- pipeline stage. pattern ACCESS_HOST_WRITE_BIT = AccessFlagBits 0x00004000 -- | 'ACCESS_MEMORY_READ_BIT' specifies all read accesses. It is always valid -- in any access mask, and is treated as equivalent to setting all @READ@@@ -271,53 +309,84 @@ pattern ACCESS_MEMORY_WRITE_BIT = AccessFlagBits 0x00010000 -- | 'ACCESS_NONE_KHR' specifies no accesses. pattern ACCESS_NONE_KHR = AccessFlagBits 0x00000000--- | 'ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV' specifies writes to the--- 'Vulkan.Core10.Handles.Buffer' preprocess outputs in+-- | 'ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV' specifies writes to the target+-- command buffer:VkBuffer preprocess outputs in -- 'Vulkan.Extensions.VK_NV_device_generated_commands.cmdPreprocessGeneratedCommandsNV'.+-- Such access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV'+-- pipeline stage. pattern ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV = AccessFlagBits 0x00040000--- | 'ACCESS_COMMAND_PREPROCESS_READ_BIT_NV' specifies reads from--- 'Vulkan.Core10.Handles.Buffer' inputs to+-- | 'ACCESS_COMMAND_PREPROCESS_READ_BIT_NV' specifies reads from buffer+-- inputs to -- 'Vulkan.Extensions.VK_NV_device_generated_commands.cmdPreprocessGeneratedCommandsNV'.+-- Such access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV'+-- pipeline stage. pattern ACCESS_COMMAND_PREPROCESS_READ_BIT_NV = AccessFlagBits 0x00020000 -- | 'ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR' specifies read--- access to a fragment shading rate attachment or shading rate image--- during rasterization.+-- access to a fragment shading rate attachment during rasterization. Such+-- access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR'+-- pipeline stage. pattern ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR = AccessFlagBits 0x00800000 -- | 'ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT' specifies read access to a -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass-fragmentdensitymapattachment fragment density map attachment> -- during dynamic -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fragmentdensitymapops fragment density map operations>+-- Such access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT'+-- pipeline stage. pattern ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT = AccessFlagBits 0x01000000 -- | 'ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR' specifies write access to -- an acceleration structure or -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#acceleration-structure-scratch acceleration structure scratch buffer>--- as part of a build or copy command.+-- as part of a build or copy command. Such access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR'+-- pipeline stage. pattern ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR = AccessFlagBits 0x00400000 -- | 'ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR' specifies read access to an -- acceleration structure as part of a trace, build, or copy command, or to -- an -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#acceleration-structure-scratch acceleration structure scratch buffer>--- as part of a build command.+-- as part of a build command. Such access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR'+-- pipeline stage or+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR'+-- pipeline stage. pattern ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR = AccessFlagBits 0x00200000--- | 'ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT' is similar to--- 'ACCESS_COLOR_ATTACHMENT_READ_BIT', but also includes+-- | 'ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT' specifies read access+-- to+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass color attachments>,+-- including -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#framebuffer-blend-advanced advanced blend operations>.+-- Such access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT'+-- pipeline stage. pattern ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT = AccessFlagBits 0x00080000 -- | 'ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT' specifies read access to a--- predicate as part of conditional rendering.+-- predicate as part of conditional rendering. Such access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT'+-- pipeline stage. pattern ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT = AccessFlagBits 0x00100000 -- | 'ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT' specifies write access -- to a transform feedback counter buffer which is written when -- 'Vulkan.Extensions.VK_EXT_transform_feedback.cmdEndTransformFeedbackEXT'--- executes.+-- executes. Such access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT'+-- pipeline stage. pattern ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT = AccessFlagBits 0x08000000 -- | 'ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT' specifies read access -- to a transform feedback counter buffer which is read when -- 'Vulkan.Extensions.VK_EXT_transform_feedback.cmdBeginTransformFeedbackEXT'--- executes.+-- executes. Such access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT'+-- pipeline stage. pattern ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT = AccessFlagBits 0x04000000 -- | 'ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT' specifies write access to a--- transform feedback buffer made when transform feedback is active.+-- transform feedback buffer made when transform feedback is active. Such+-- access occurs in the+-- 'Vulkan.Core10.Enums.PipelineStageFlagBits.PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT'+-- pipeline stage. pattern ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT = AccessFlagBits 0x02000000 conNameAccessFlagBits :: String
src/Vulkan/Core10/Enums/DynamicState.hs view
@@ -174,7 +174,7 @@ -- before any drawing commands. pattern DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT = DynamicState 1000377000 -- | 'DYNAMIC_STATE_VERTEX_INPUT_EXT' specifies that the @pVertexInputState@--- states will be ignored and /must/ be set dynamically with+-- state will be ignored and /must/ be set dynamically with -- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT' -- before any drawing commands pattern DYNAMIC_STATE_VERTEX_INPUT_EXT = DynamicState 1000352000
src/Vulkan/Core10/Enums/PipelineCreateFlagBits.hs view
@@ -93,19 +93,30 @@ -- -- - 'PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR' -- specifies that an any-hit shader will always be present when an--- any-hit shader would be executed.+-- any-hit shader would be executed. A NULL any-hit shader is an+-- any-hit shader which is effectively+-- 'Vulkan.Core10.APIConstants.SHADER_UNUSED_KHR', such as from a+-- shader group consisting entirely of zeros. -- -- - 'PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR' -- specifies that a closest hit shader will always be present when a--- closest hit shader would be executed.+-- closest hit shader would be executed. A NULL closest hit shader is a+-- closest hit shader which is effectively+-- 'Vulkan.Core10.APIConstants.SHADER_UNUSED_KHR', such as from a+-- shader group consisting entirely of zeros. -- -- - 'PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR' specifies -- that a miss shader will always be present when a miss shader would--- be executed.+-- be executed. A NULL miss shader is a miss shader which is+-- effectively 'Vulkan.Core10.APIConstants.SHADER_UNUSED_KHR', such as+-- from a shader group consisting entirely of zeros. -- -- - 'PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR' -- specifies that an intersection shader will always be present when an--- intersection shader would be executed.+-- intersection shader would be executed. A NULL intersection shader is+-- an intersection shader which is effectively+-- 'Vulkan.Core10.APIConstants.SHADER_UNUSED_KHR', such as from a+-- shader group consisting entirely of zeros. -- -- - 'PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR' specifies that -- triangle primitives will be skipped during traversal using
src/Vulkan/Core10/Enums/StructureType.hs view
@@ -49,6 +49,8 @@ , STRUCTURE_TYPE_MEMORY_BARRIER , STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO , STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO+ , STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT+ , STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT , STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT , STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT , STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX@@ -86,6 +88,7 @@ , STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV , STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV , STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR+ , STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR , STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV , STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV , STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR@@ -804,6 +807,7 @@ -- 'Vulkan.Extensions.VK_KHR_fragment_shading_rate.PhysicalDeviceFragmentShadingRateFeaturesKHR', -- 'Vulkan.Extensions.VK_KHR_fragment_shading_rate.PhysicalDeviceFragmentShadingRateKHR', -- 'Vulkan.Extensions.VK_KHR_fragment_shading_rate.PhysicalDeviceFragmentShadingRatePropertiesKHR',+-- 'Vulkan.Extensions.VK_EXT_global_priority_query.PhysicalDeviceGlobalPriorityQueryFeaturesEXT', -- 'Vulkan.Core11.Promoted_From_VK_KHR_device_group_creation.PhysicalDeviceGroupProperties', -- 'Vulkan.Core12.Promoted_From_VK_EXT_host_query_reset.PhysicalDeviceHostQueryResetFeatures', -- 'Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceIDProperties',@@ -869,6 +873,7 @@ -- 'Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsFeaturesNV', -- 'Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsPropertiesNV', -- 'Vulkan.Core12.Promoted_From_VK_KHR_shader_subgroup_extended_types.PhysicalDeviceShaderSubgroupExtendedTypesFeatures',+-- 'Vulkan.Extensions.VK_KHR_shader_subgroup_uniform_control_flow.PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR', -- 'Vulkan.Extensions.VK_KHR_shader_terminate_invocation.PhysicalDeviceShaderTerminateInvocationFeaturesKHR', -- 'Vulkan.Extensions.VK_NV_shading_rate_image.PhysicalDeviceShadingRateImageFeaturesNV', -- 'Vulkan.Extensions.VK_NV_shading_rate_image.PhysicalDeviceShadingRateImagePropertiesNV',@@ -956,6 +961,7 @@ -- 'Vulkan.Extensions.VK_INTEL_performance_query.QueryPoolPerformanceQueryCreateInfoINTEL', -- 'Vulkan.Extensions.VK_KHR_synchronization2.QueueFamilyCheckpointProperties2NV', -- 'Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints.QueueFamilyCheckpointPropertiesNV',+-- 'Vulkan.Extensions.VK_EXT_global_priority_query.QueueFamilyGlobalPriorityPropertiesEXT', -- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.QueueFamilyProperties2', -- 'Vulkan.Extensions.VK_KHR_ray_tracing_pipeline.RayTracingPipelineCreateInfoKHR', -- 'Vulkan.Extensions.VK_NV_ray_tracing.RayTracingPipelineCreateInfoNV',@@ -1172,6 +1178,10 @@ pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO = StructureType 47 -- No documentation found for Nested "VkStructureType" "VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO" pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO = StructureType 48+-- No documentation found for Nested "VkStructureType" "VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT"+pattern STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT = StructureType 1000388001+-- No documentation found for Nested "VkStructureType" "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT"+pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT = StructureType 1000388000 -- No documentation found for Nested "VkStructureType" "VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT" pattern STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT = StructureType 1000381001 -- No documentation found for Nested "VkStructureType" "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT"@@ -1246,6 +1256,8 @@ pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV = StructureType 1000326000 -- No documentation found for Nested "VkStructureType" "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR" pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR = StructureType 1000325000+-- No documentation found for Nested "VkStructureType" "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR"+pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR = StructureType 1000323000 -- No documentation found for Nested "VkStructureType" "VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV" pattern STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV = StructureType 1000314009 -- No documentation found for Nested "VkStructureType" "VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV"@@ -2135,6 +2147,8 @@ STRUCTURE_TYPE_MEMORY_BARRIER, STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO, STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO,+ STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT,+ STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT, STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT, STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT, STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX,@@ -2172,6 +2186,7 @@ STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV, STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV, STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR,+ STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR, STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV, STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV, STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR,@@ -2650,9 +2665,13 @@ , (STRUCTURE_TYPE_MEMORY_BARRIER , "MEMORY_BARRIER") , (STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO , "LOADER_INSTANCE_CREATE_INFO") , (STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO , "LOADER_DEVICE_CREATE_INFO")- , (STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT , "PIPELINE_COLOR_WRITE_CREATE_INFO_EXT")+ , (STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT, "QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT")+ , ( STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT+ , "PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT"+ )+ , (STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT , "PIPELINE_COLOR_WRITE_CREATE_INFO_EXT") , (STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT, "PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT")- , (STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX , "SCREEN_SURFACE_CREATE_INFO_QNX")+ , (STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX , "SCREEN_SURFACE_CREATE_INFO_QNX") , ( STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT , "PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT" )@@ -2708,6 +2727,9 @@ ) , ( STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR , "PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR"+ )+ , ( STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR+ , "PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR" ) , (STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV , "CHECKPOINT_DATA_2_NV") , (STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV , "QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV")
src/Vulkan/Core10/FundamentalTypes.hs view
@@ -389,6 +389,7 @@ -- -- = See Also --+-- 'FALSE', 'TRUE', -- 'Vulkan.Extensions.VK_KHR_acceleration_structure.AccelerationStructureGeometryInstancesDataKHR', -- 'Vulkan.Extensions.VK_EXT_conditional_rendering.CommandBufferInheritanceConditionalRenderingInfoEXT', -- 'Vulkan.Core10.CommandBuffer.CommandBufferInheritanceInfo',@@ -444,6 +445,7 @@ -- 'Vulkan.Extensions.VK_NV_fragment_shading_rate_enums.PhysicalDeviceFragmentShadingRateEnumsFeaturesNV', -- 'Vulkan.Extensions.VK_KHR_fragment_shading_rate.PhysicalDeviceFragmentShadingRateFeaturesKHR', -- 'Vulkan.Extensions.VK_KHR_fragment_shading_rate.PhysicalDeviceFragmentShadingRatePropertiesKHR',+-- 'Vulkan.Extensions.VK_EXT_global_priority_query.PhysicalDeviceGlobalPriorityQueryFeaturesEXT', -- 'Vulkan.Core11.Promoted_From_VK_KHR_device_group_creation.PhysicalDeviceGroupProperties', -- 'Vulkan.Core12.Promoted_From_VK_EXT_host_query_reset.PhysicalDeviceHostQueryResetFeatures', -- 'Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceIDProperties',@@ -489,6 +491,7 @@ -- 'Vulkan.Extensions.VK_INTEL_shader_integer_functions2.PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL', -- 'Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsFeaturesNV', -- 'Vulkan.Core12.Promoted_From_VK_KHR_shader_subgroup_extended_types.PhysicalDeviceShaderSubgroupExtendedTypesFeatures',+-- 'Vulkan.Extensions.VK_KHR_shader_subgroup_uniform_control_flow.PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR', -- 'Vulkan.Extensions.VK_KHR_shader_terminate_invocation.PhysicalDeviceShaderTerminateInvocationFeaturesKHR', -- 'Vulkan.Extensions.VK_NV_shading_rate_image.PhysicalDeviceShadingRateImageFeaturesNV', -- 'Vulkan.Core10.DeviceInitialization.PhysicalDeviceSparseProperties',
src/Vulkan/Core10/ImageView.hs view
@@ -951,7 +951,7 @@ -- - #VUID-VkImageViewCreateInfo-format-04724# If @format@ is one of -- those listed in -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-requiring-sampler-ycbcr-conversion>,--- then the pNext chain /must/ include a+-- then the @pNext@ chain /must/ include a -- 'Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionInfo' -- structure with a conversion value other than VK_NULL_HANDLE --
src/Vulkan/Core10/Pipeline.hs view
@@ -848,6 +848,10 @@ -- each element of @pMapEntries@ /must/ be less than or equal to -- @dataSize@ minus @offset@ --+-- - #VUID-VkSpecializationInfo-constantID-04911# The @constantID@ value+-- of each element of @pMapEntries@ /must/ be unique within+-- @pMapEntries@+-- -- == Valid Usage (Implicit) -- -- - #VUID-VkSpecializationInfo-pMapEntries-parameter# If @mapEntryCount@@@ -3993,12 +3997,6 @@ -- array of @discardRectangleCount@ -- 'Vulkan.Core10.FundamentalTypes.Rect2D' structures ----- - #VUID-VkGraphicsPipelineCreateInfo-pStages-02097# If the pipeline is--- being created with--- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#pipeline-graphics-subsets-vertex-input vertex input state>,--- @pVertexInputState@ /must/ be a valid pointer to a valid--- 'PipelineVertexInputStateCreateInfo' structure--- -- - #VUID-VkGraphicsPipelineCreateInfo-pStages-02098# If the pipeline is -- being created with -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#pipeline-graphics-subsets-vertex-input vertex input state>,@@ -4591,7 +4589,10 @@ stages :: Vector (SomeStruct PipelineShaderStageCreateInfo) , -- | @pVertexInputState@ is a pointer to a -- 'PipelineVertexInputStateCreateInfo' structure. It is ignored if the- -- pipeline includes a mesh shader stage.+ -- pipeline includes a mesh shader stage. It is ignored if the pipeline is+ -- created with the+ -- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+ -- dynamic state set. vertexInputState :: Maybe (SomeStruct PipelineVertexInputStateCreateInfo) , -- | @pInputAssemblyState@ is a pointer to a -- 'PipelineInputAssemblyStateCreateInfo' structure which determines input
src/Vulkan/Core10/PipelineCache.hs view
@@ -417,7 +417,7 @@ -- -- Note ----- The details of the merge operation are implementation dependent, but+-- The details of the merge operation are implementation-dependent, but -- implementations /should/ merge the contents of the specified pipelines -- and prune duplicate entries. --
src/Vulkan/Core10/Query.hs view
@@ -295,6 +295,11 @@ -- 'Vulkan.Core10.Enums.QueryResultFlagBits.QUERY_RESULT_WITH_AVAILABILITY_BIT' -- is set. --+-- If 'Vulkan.Core10.Enums.QueryResultFlagBits.QUERY_RESULT_WAIT_BIT' is+-- not set, 'getQueryPoolResults' /may/ return+-- 'Vulkan.Core10.Enums.Result.NOT_READY' if there are queries in the+-- unavailable state.+-- -- Note -- -- Applications /must/ take care to ensure that use of the
src/Vulkan/Core10/Queue.hs view
@@ -367,11 +367,11 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | - | - | Any | - |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | - | - | Any |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- == Return Codes --@@ -461,11 +461,11 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | - | - | Any | - |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | - | - | Any |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- == Return Codes --
src/Vulkan/Core10/SparseResourceMemoryManagement.hs view
@@ -448,11 +448,11 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | - | - | SPARSE_BINDING | - |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | - | - | SPARSE_BINDING |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- == Return Codes --
src/Vulkan/Core11/Originally_Based_On_VK_KHR_subgroup.hs view
@@ -47,8 +47,10 @@ -- property. -- -- If @supportedOperations@ includes--- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#features-subgroup-quad >,--- @subgroupSize@ /must/ be greater than or equal to 4.+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#features-subgroup-quad ,>+-- or+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#features-shaderSubgroupUniformControlFlow shaderSubgroupUniformControlFlow>+-- is enabled, @subgroupSize@ /must/ be greater than or equal to 4. -- -- == Valid Usage (Implicit) --
src/Vulkan/Core11/Promoted_From_VK_KHR_device_group.hs view
@@ -208,13 +208,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- | | | Transfer | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- | | | Transfer |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -551,12 +551,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Compute | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Compute |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Core11/Promoted_From_VK_KHR_get_physical_device_properties2.hs view
@@ -138,6 +138,7 @@ import {-# SOURCE #-} Vulkan.Extensions.VK_NV_fragment_shading_rate_enums (PhysicalDeviceFragmentShadingRateEnumsPropertiesNV) import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_fragment_shading_rate (PhysicalDeviceFragmentShadingRateFeaturesKHR) import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_fragment_shading_rate (PhysicalDeviceFragmentShadingRatePropertiesKHR)+import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_global_priority_query (PhysicalDeviceGlobalPriorityQueryFeaturesEXT) import {-# SOURCE #-} Vulkan.Core12.Promoted_From_VK_EXT_host_query_reset (PhysicalDeviceHostQueryResetFeatures) import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities (PhysicalDeviceIDProperties) import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_image_drm_format_modifier (PhysicalDeviceImageDrmFormatModifierInfoEXT)@@ -201,6 +202,7 @@ import {-# SOURCE #-} Vulkan.Extensions.VK_NV_shader_sm_builtins (PhysicalDeviceShaderSMBuiltinsFeaturesNV) import {-# SOURCE #-} Vulkan.Extensions.VK_NV_shader_sm_builtins (PhysicalDeviceShaderSMBuiltinsPropertiesNV) import {-# SOURCE #-} Vulkan.Core12.Promoted_From_VK_KHR_shader_subgroup_extended_types (PhysicalDeviceShaderSubgroupExtendedTypesFeatures)+import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_shader_subgroup_uniform_control_flow (PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR) import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_shader_terminate_invocation (PhysicalDeviceShaderTerminateInvocationFeaturesKHR) import {-# SOURCE #-} Vulkan.Extensions.VK_NV_shading_rate_image (PhysicalDeviceShadingRateImageFeaturesNV) import {-# SOURCE #-} Vulkan.Extensions.VK_NV_shading_rate_image (PhysicalDeviceShadingRateImagePropertiesNV)@@ -234,6 +236,7 @@ import Vulkan.CStruct.Extends (PokeChain(..)) import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_synchronization2 (QueueFamilyCheckpointProperties2NV) import {-# SOURCE #-} Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints (QueueFamilyCheckpointPropertiesNV)+import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_global_priority_query (QueueFamilyGlobalPriorityPropertiesEXT) import Vulkan.Core10.DeviceInitialization (QueueFamilyProperties) import Vulkan.Core10.Enums.Result (Result) import Vulkan.Core10.Enums.Result (Result(..))@@ -695,6 +698,7 @@ | Just Refl <- eqT @e @PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR = Just f | Just Refl <- eqT @e @PhysicalDeviceImageRobustnessFeaturesEXT = Just f | Just Refl <- eqT @e @PhysicalDeviceRobustness2FeaturesEXT = Just f+ | Just Refl <- eqT @e @PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR = Just f | Just Refl <- eqT @e @PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR = Just f | Just Refl <- eqT @e @PhysicalDeviceDiagnosticsConfigFeaturesNV = Just f | Just Refl <- eqT @e @PhysicalDeviceExtendedDynamicState2FeaturesEXT = Just f@@ -752,6 +756,7 @@ | Just Refl <- eqT @e @PhysicalDeviceTimelineSemaphoreFeatures = Just f | Just Refl <- eqT @e @PhysicalDeviceDescriptorIndexingFeatures = Just f | Just Refl <- eqT @e @PhysicalDeviceDeviceMemoryReportFeaturesEXT = Just f+ | Just Refl <- eqT @e @PhysicalDeviceGlobalPriorityQueryFeaturesEXT = Just f | Just Refl <- eqT @e @PhysicalDeviceHostQueryResetFeatures = Just f | Just Refl <- eqT @e @PhysicalDeviceShaderFloat16Int8Features = Just f | Just Refl <- eqT @e @PhysicalDeviceShaderDrawParametersFeatures = Just f@@ -1338,6 +1343,7 @@ -- either @NULL@ or a pointer to a valid instance of -- 'Vulkan.Extensions.VK_KHR_synchronization2.QueueFamilyCheckpointProperties2NV', -- 'Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints.QueueFamilyCheckpointPropertiesNV',+-- 'Vulkan.Extensions.VK_EXT_global_priority_query.QueueFamilyGlobalPriorityPropertiesEXT', -- or -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkVideoQueueFamilyProperties2KHR VkVideoQueueFamilyProperties2KHR> --@@ -1373,6 +1379,7 @@ extends _ f | Just Refl <- eqT @e @QueueFamilyCheckpointProperties2NV = Just f | Just Refl <- eqT @e @QueueFamilyCheckpointPropertiesNV = Just f+ | Just Refl <- eqT @e @QueueFamilyGlobalPriorityPropertiesEXT = Just f | otherwise = Nothing instance (Extendss QueueFamilyProperties2 es, PokeChain es) => ToCStruct (QueueFamilyProperties2 es) where
src/Vulkan/Core12/Promoted_From_VK_KHR_create_renderpass2.hs view
@@ -380,11 +380,11 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Graphics | Graphics |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Graphics |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -486,11 +486,11 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | Graphics |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -577,11 +577,11 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | Graphics |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Core12/Promoted_From_VK_KHR_draw_indirect_count.hs view
@@ -506,16 +506,36 @@ -- /must/ be the same as the current subpass color and\/or -- depth\/stencil attachments ----- - #VUID-vkCmdDrawIndirectCount-pStrides-04884# If the bound graphics+-- - #VUID-vkCmdDrawIndirectCount-None-04912# If the bound graphics+-- pipeline was created with both the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- and+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic states enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+--+-- - #VUID-vkCmdDrawIndirectCount-pStrides-04913# If the bound graphics -- pipeline was created with the -- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic state enabled, but not the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT' -- dynamic state enabled, then -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ have been called in the current command buffer prior to this--- drawing command, and the @pStrides@ parameter of+-- draw command, and the @pStrides@ parameter of -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ not be @NULL@ --+-- - #VUID-vkCmdDrawIndirectCount-None-04914# If the bound graphics+-- pipeline state was created with the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- dynamic state enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+-- -- - #VUID-vkCmdDrawIndirectCount-None-04007# All vertex input bindings -- accessed via vertex input variables declared in the vertex shader -- entry point’s interface /must/ have either valid or@@ -628,12 +648,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | Graphics |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1156,16 +1176,36 @@ -- /must/ be the same as the current subpass color and\/or -- depth\/stencil attachments ----- - #VUID-vkCmdDrawIndexedIndirectCount-pStrides-04884# If the bound+-- - #VUID-vkCmdDrawIndexedIndirectCount-None-04912# If the bound+-- graphics pipeline was created with both the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- and+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic states enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+--+-- - #VUID-vkCmdDrawIndexedIndirectCount-pStrides-04913# If the bound -- graphics pipeline was created with the -- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic state enabled, but not the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT' -- dynamic state enabled, then -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ have been called in the current command buffer prior to this--- drawing command, and the @pStrides@ parameter of+-- draw command, and the @pStrides@ parameter of -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ not be @NULL@ --+-- - #VUID-vkCmdDrawIndexedIndirectCount-None-04914# If the bound+-- graphics pipeline state was created with the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- dynamic state enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+-- -- - #VUID-vkCmdDrawIndexedIndirectCount-None-04007# All vertex input -- bindings accessed via vertex input variables declared in the vertex -- shader entry point’s interface /must/ have either valid or@@ -1282,12 +1322,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | Graphics |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions.hs view
@@ -56,6 +56,7 @@ , module Vulkan.Extensions.VK_EXT_fragment_shader_interlock , module Vulkan.Extensions.VK_EXT_full_screen_exclusive , module Vulkan.Extensions.VK_EXT_global_priority+ , module Vulkan.Extensions.VK_EXT_global_priority_query , module Vulkan.Extensions.VK_EXT_hdr_metadata , module Vulkan.Extensions.VK_EXT_headless_surface , module Vulkan.Extensions.VK_EXT_host_query_reset@@ -172,6 +173,7 @@ , module Vulkan.Extensions.VK_KHR_shader_float_controls , module Vulkan.Extensions.VK_KHR_shader_non_semantic_info , module Vulkan.Extensions.VK_KHR_shader_subgroup_extended_types+ , module Vulkan.Extensions.VK_KHR_shader_subgroup_uniform_control_flow , module Vulkan.Extensions.VK_KHR_shader_terminate_invocation , module Vulkan.Extensions.VK_KHR_shared_presentable_image , module Vulkan.Extensions.VK_KHR_spirv_1_4@@ -295,6 +297,7 @@ import Vulkan.Extensions.VK_EXT_fragment_shader_interlock import Vulkan.Extensions.VK_EXT_full_screen_exclusive import Vulkan.Extensions.VK_EXT_global_priority+import Vulkan.Extensions.VK_EXT_global_priority_query import Vulkan.Extensions.VK_EXT_hdr_metadata import Vulkan.Extensions.VK_EXT_headless_surface import Vulkan.Extensions.VK_EXT_host_query_reset@@ -411,6 +414,7 @@ import Vulkan.Extensions.VK_KHR_shader_float_controls import Vulkan.Extensions.VK_KHR_shader_non_semantic_info import Vulkan.Extensions.VK_KHR_shader_subgroup_extended_types+import Vulkan.Extensions.VK_KHR_shader_subgroup_uniform_control_flow import Vulkan.Extensions.VK_KHR_shader_terminate_invocation import Vulkan.Extensions.VK_KHR_shared_presentable_image import Vulkan.Extensions.VK_KHR_spirv_1_4
src/Vulkan/Extensions/Dependencies.hs view
@@ -36,6 +36,8 @@ import Vulkan.Extensions.VK_EXT_fragment_density_map (pattern EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME) import Vulkan.Extensions.VK_EXT_fragment_shader_interlock (pattern EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME) import Vulkan.Extensions.VK_EXT_full_screen_exclusive (pattern EXT_FULL_SCREEN_EXCLUSIVE_EXTENSION_NAME)+import Vulkan.Extensions.VK_EXT_global_priority (pattern EXT_GLOBAL_PRIORITY_EXTENSION_NAME)+import Vulkan.Extensions.VK_EXT_global_priority_query (pattern EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME) import Vulkan.Extensions.VK_EXT_hdr_metadata (pattern EXT_HDR_METADATA_EXTENSION_NAME) import Vulkan.Extensions.VK_EXT_headless_surface (pattern EXT_HEADLESS_SURFACE_EXTENSION_NAME) import Vulkan.Extensions.VK_EXT_host_query_reset (pattern EXT_HOST_QUERY_RESET_EXTENSION_NAME)@@ -124,6 +126,7 @@ import Vulkan.Extensions.VK_KHR_shader_float16_int8 (pattern KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME) import Vulkan.Extensions.VK_KHR_shader_float_controls (pattern KHR_SHADER_FLOAT_CONTROLS_EXTENSION_NAME) import Vulkan.Extensions.VK_KHR_shader_subgroup_extended_types (pattern KHR_SHADER_SUBGROUP_EXTENDED_TYPES_EXTENSION_NAME)+import Vulkan.Extensions.VK_KHR_shader_subgroup_uniform_control_flow (pattern KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME) import Vulkan.Extensions.VK_KHR_shader_terminate_invocation (pattern KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME) import Vulkan.Extensions.VK_KHR_shared_presentable_image (pattern KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME) import Vulkan.Extensions.VK_KHR_spirv_1_4 (pattern KHR_SPIRV_1_4_EXTENSION_NAME)@@ -504,8 +507,10 @@ , KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME ] EXT_EXTENDED_DYNAMIC_STATE_2_EXTENSION_NAME -> [KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME]- QNX_SCREEN_SURFACE_EXTENSION_NAME -> [KHR_SURFACE_EXTENSION_NAME]- EXT_COLOR_WRITE_ENABLE_EXTENSION_NAME -> [KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME]+ QNX_SCREEN_SURFACE_EXTENSION_NAME -> [KHR_SURFACE_EXTENSION_NAME]+ EXT_COLOR_WRITE_ENABLE_EXTENSION_NAME -> [KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME]+ EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME ->+ [EXT_GLOBAL_PRIORITY_EXTENSION_NAME, KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME] _ -> [] -- | The minimum required API version to use this extension@@ -521,5 +526,6 @@ KHR_SPIRV_1_4_EXTENSION_NAME -> MAKE_API_VERSION 1 1 0 KHR_SURFACE_PROTECTED_CAPABILITIES_EXTENSION_NAME -> MAKE_API_VERSION 1 1 0 NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME -> MAKE_API_VERSION 1 1 0+ KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME -> MAKE_API_VERSION 1 1 0 _ -> API_VERSION_1_0
src/Vulkan/Extensions/VK_AMD_buffer_marker.hs view
@@ -256,13 +256,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Transfer | Transfer |--- | Secondary | | Graphics | |--- | | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Transfer |+-- | Secondary | | Graphics |+-- | | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_AMD_rasterization_order.hs view
@@ -129,7 +129,7 @@ -- using the new relaxed mode? -- -- __RESOLVED__: No. In this case the rasterization order is completely--- implementation dependent, but in practice it is expected to partially+-- implementation-dependent, but in practice it is expected to partially -- still follow the order of incoming primitives. -- -- 4) Does the new relaxed rasterization order have any adverse effect on
src/Vulkan/Extensions/VK_AMD_rasterization_order.hs-boot view
@@ -129,7 +129,7 @@ -- using the new relaxed mode? -- -- __RESOLVED__: No. In this case the rasterization order is completely--- implementation dependent, but in practice it is expected to partially+-- implementation-dependent, but in practice it is expected to partially -- still follow the order of incoming primitives. -- -- 4) Does the new relaxed rasterization order have any adverse effect on
src/Vulkan/Extensions/VK_EXT_color_write_enable.hs view
@@ -228,12 +228,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_EXT_conditional_rendering.hs view
@@ -274,12 +274,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -370,12 +370,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_EXT_custom_border_color.hs view
@@ -91,7 +91,7 @@ -- When 'Vulkan.Core10.Enums.BorderColor.BORDER_COLOR_FLOAT_CUSTOM_EXT' or -- 'Vulkan.Core10.Enums.BorderColor.BORDER_COLOR_INT_CUSTOM_EXT' is used, -- applications must provide a 'SamplerCustomBorderColorCreateInfoEXT' in--- the pNext chain for 'Vulkan.Core10.Sampler.SamplerCreateInfo'.+-- the @pNext@ chain for 'Vulkan.Core10.Sampler.SamplerCreateInfo'. -- -- == New Structures --@@ -207,7 +207,7 @@ -- -- - Type-ize VK_BORDER_COLOR_CUSTOM ----- - Fix const-ness on pNext of+-- - Fix const-ness on @pNext@ of -- VkSamplerCustomBorderColorCreateInfoEXT -- -- - Revision 7, 2019-11-26 (Liam Middlebrook)
src/Vulkan/Extensions/VK_EXT_custom_border_color.hs-boot view
@@ -91,7 +91,7 @@ -- When 'Vulkan.Core10.Enums.BorderColor.BORDER_COLOR_FLOAT_CUSTOM_EXT' or -- 'Vulkan.Core10.Enums.BorderColor.BORDER_COLOR_INT_CUSTOM_EXT' is used, -- applications must provide a 'SamplerCustomBorderColorCreateInfoEXT' in--- the pNext chain for 'Vulkan.Core10.Sampler.SamplerCreateInfo'.+-- the @pNext@ chain for 'Vulkan.Core10.Sampler.SamplerCreateInfo'. -- -- == New Structures --@@ -207,7 +207,7 @@ -- -- - Type-ize VK_BORDER_COLOR_CUSTOM ----- - Fix const-ness on pNext of+-- - Fix const-ness on @pNext@ of -- VkSamplerCustomBorderColorCreateInfoEXT -- -- - Revision 7, 2019-11-26 (Liam Middlebrook)
src/Vulkan/Extensions/VK_EXT_debug_marker.hs view
@@ -501,12 +501,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -585,12 +585,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -648,12 +648,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_EXT_debug_utils.hs view
@@ -769,11 +769,11 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | - | - | Any | - |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | - | - | Any |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -831,11 +831,11 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | - | - | Any | - |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | - | - | Any |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -867,11 +867,11 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | - | - | Any | - |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | - | - | Any |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -938,12 +938,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1032,12 +1032,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1095,12 +1095,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_EXT_device_memory_report.hs view
@@ -101,7 +101,7 @@ -- == Issues -- -- 1) Should this be better expressed as an extension to VK_EXT_debug_utils--- and its general purpose messenger construct?+-- and its general-purpose messenger construct? -- -- __RESOLVED__: No. The intended lifecycle is quite different. We want to -- make this extension tied to the device’s lifecycle. Each ICD just
src/Vulkan/Extensions/VK_EXT_device_memory_report.hs-boot view
@@ -101,7 +101,7 @@ -- == Issues -- -- 1) Should this be better expressed as an extension to VK_EXT_debug_utils--- and its general purpose messenger construct?+-- and its general-purpose messenger construct? -- -- __RESOLVED__: No. The intended lifecycle is quite different. We want to -- make this extension tied to the device’s lifecycle. Each ICD just
src/Vulkan/Extensions/VK_EXT_discard_rectangles.hs view
@@ -276,12 +276,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_EXT_display_surface_counter.hs view
@@ -265,13 +265,6 @@ -- | VkSurfaceCapabilities2EXT - Structure describing capabilities of a -- surface ----- = Members------ All members of 'SurfaceCapabilities2EXT' are identical to the--- corresponding members of--- 'Vulkan.Extensions.VK_KHR_surface.SurfaceCapabilitiesKHR' where one--- exists. The remaining members are:--- -- == Valid Usage (Implicit) -- -- = See Also@@ -285,25 +278,69 @@ -- 'Vulkan.Extensions.VK_KHR_surface.SurfaceTransformFlagsKHR', -- 'getPhysicalDeviceSurfaceCapabilities2EXT' data SurfaceCapabilities2EXT = SurfaceCapabilities2EXT- { -- No documentation found for Nested "VkSurfaceCapabilities2EXT" "minImageCount"+ { -- | @minImageCount@ is the minimum number of images the specified device+ -- supports for a swapchain created for the surface, and will be at least+ -- one. minImageCount :: Word32- , -- No documentation found for Nested "VkSurfaceCapabilities2EXT" "maxImageCount"+ , -- | @maxImageCount@ is the maximum number of images the specified device+ -- supports for a swapchain created for the surface, and will be either 0,+ -- or greater than or equal to @minImageCount@. A value of 0 means that+ -- there is no limit on the number of images, though there /may/ be limits+ -- related to the total amount of memory used by presentable images. maxImageCount :: Word32- , -- No documentation found for Nested "VkSurfaceCapabilities2EXT" "currentExtent"+ , -- | @currentExtent@ is the current width and height of the surface, or the+ -- special value (0xFFFFFFFF, 0xFFFFFFFF) indicating that the surface size+ -- will be determined by the extent of a swapchain targeting the surface. currentExtent :: Extent2D- , -- No documentation found for Nested "VkSurfaceCapabilities2EXT" "minImageExtent"+ , -- | @minImageExtent@ contains the smallest valid swapchain extent for the+ -- surface on the specified device. The @width@ and @height@ of the extent+ -- will each be less than or equal to the corresponding @width@ and+ -- @height@ of @currentExtent@, unless @currentExtent@ has the special+ -- value described above. minImageExtent :: Extent2D- , -- No documentation found for Nested "VkSurfaceCapabilities2EXT" "maxImageExtent"+ , -- | @maxImageExtent@ contains the largest valid swapchain extent for the+ -- surface on the specified device. The @width@ and @height@ of the extent+ -- will each be greater than or equal to the corresponding @width@ and+ -- @height@ of @minImageExtent@. The @width@ and @height@ of the extent+ -- will each be greater than or equal to the corresponding @width@ and+ -- @height@ of @currentExtent@, unless @currentExtent@ has the special+ -- value described above. maxImageExtent :: Extent2D- , -- No documentation found for Nested "VkSurfaceCapabilities2EXT" "maxImageArrayLayers"+ , -- | @maxImageArrayLayers@ is the maximum number of layers presentable images+ -- /can/ have for a swapchain created for this device and surface, and will+ -- be at least one. maxImageArrayLayers :: Word32- , -- No documentation found for Nested "VkSurfaceCapabilities2EXT" "supportedTransforms"+ , -- | @supportedTransforms@ is a bitmask of+ -- 'Vulkan.Extensions.VK_KHR_surface.SurfaceTransformFlagBitsKHR'+ -- indicating the presentation transforms supported for the surface on the+ -- specified device. At least one bit will be set. supportedTransforms :: SurfaceTransformFlagsKHR- , -- No documentation found for Nested "VkSurfaceCapabilities2EXT" "currentTransform"+ , -- | @currentTransform@ is+ -- 'Vulkan.Extensions.VK_KHR_surface.SurfaceTransformFlagBitsKHR' value+ -- indicating the surface’s current transform relative to the presentation+ -- engine’s natural orientation. currentTransform :: SurfaceTransformFlagBitsKHR- , -- No documentation found for Nested "VkSurfaceCapabilities2EXT" "supportedCompositeAlpha"+ , -- | @supportedCompositeAlpha@ is a bitmask of+ -- 'Vulkan.Extensions.VK_KHR_surface.CompositeAlphaFlagBitsKHR',+ -- representing the alpha compositing modes supported by the presentation+ -- engine for the surface on the specified device, and at least one bit+ -- will be set. Opaque composition /can/ be achieved in any alpha+ -- compositing mode by either using an image format that has no alpha+ -- component, or by ensuring that all pixels in the presentable images have+ -- an alpha value of 1.0. supportedCompositeAlpha :: CompositeAlphaFlagsKHR- , -- No documentation found for Nested "VkSurfaceCapabilities2EXT" "supportedUsageFlags"+ , -- | @supportedUsageFlags@ is a bitmask of+ -- 'Vulkan.Core10.Enums.ImageUsageFlagBits.ImageUsageFlagBits' representing+ -- the ways the application /can/ use the presentable images of a swapchain+ -- created with 'Vulkan.Extensions.VK_KHR_surface.PresentModeKHR' set to+ -- 'Vulkan.Extensions.VK_KHR_surface.PRESENT_MODE_IMMEDIATE_KHR',+ -- 'Vulkan.Extensions.VK_KHR_surface.PRESENT_MODE_MAILBOX_KHR',+ -- 'Vulkan.Extensions.VK_KHR_surface.PRESENT_MODE_FIFO_KHR' or+ -- 'Vulkan.Extensions.VK_KHR_surface.PRESENT_MODE_FIFO_RELAXED_KHR' for the+ -- surface on the specified device.+ -- 'Vulkan.Core10.Enums.ImageUsageFlagBits.IMAGE_USAGE_COLOR_ATTACHMENT_BIT'+ -- /must/ be included in the set. Implementations /may/ support additional+ -- usages. supportedUsageFlags :: ImageUsageFlags , -- | @supportedSurfaceCounters@ is a bitmask of 'SurfaceCounterFlagBitsEXT' -- indicating the supported surface counter types.
src/Vulkan/Extensions/VK_EXT_extended_dynamic_state.hs view
@@ -292,12 +292,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -362,12 +362,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -434,12 +434,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -523,12 +523,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -625,12 +625,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -674,7 +674,15 @@ -- bound size of the vertex buffer starting from the corresponding elements -- of @pBuffers@[i] plus @pOffsets@[i]. All vertex input attributes that -- use each of these bindings will use these updated addresses in their--- address calculations for subsequent drawing commands.+-- address calculations for subsequent drawing commands. If the+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#features-nullDescriptor nullDescriptor>+-- feature is enabled, elements of @pBuffers@ /can/ be+-- 'Vulkan.Core10.APIConstants.NULL_HANDLE', and /can/ be used by the+-- vertex shader. If a vertex input attribute is bound to a vertex input+-- binding that is 'Vulkan.Core10.APIConstants.NULL_HANDLE', the values+-- taken from memory are considered to be zero, and missing G, B, or A+-- components are+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fxvertex-input-extraction filled with (0,0,1)>. -- -- If the bound pipeline state object was created with the -- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'@@ -684,6 +692,12 @@ -- 'Vulkan.Core10.Pipeline.VertexInputBindingDescription'::@stride@ state -- from the pipeline state object is ignored. --+-- If the bound pipeline state object was also created with the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- dynamic state enabled then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /can/ be used instead of 'cmdBindVertexBuffers2EXT' to set the stride.+-- -- == Valid Usage -- -- - #VUID-vkCmdBindVertexBuffers2EXT-firstBinding-03355# @firstBinding@@@ -785,12 +799,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -897,12 +911,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -974,12 +988,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1055,12 +1069,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1132,12 +1146,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1209,12 +1223,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1302,12 +1316,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_EXT_extended_dynamic_state2.hs view
@@ -222,12 +222,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -298,12 +298,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -376,12 +376,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -454,12 +454,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -531,12 +531,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_EXT_global_priority.hs view
@@ -228,7 +228,8 @@ -- -- = See Also ----- 'DeviceQueueGlobalPriorityCreateInfoEXT'+-- 'DeviceQueueGlobalPriorityCreateInfoEXT',+-- 'Vulkan.Extensions.VK_EXT_global_priority_query.QueueFamilyGlobalPriorityPropertiesEXT' newtype QueueGlobalPriorityEXT = QueueGlobalPriorityEXT Int32 deriving newtype (Eq, Ord, Storable, Zero) -- Note that the zero instance does not produce a valid value, passing 'zero' to Vulkan will result in an error
+ src/Vulkan/Extensions/VK_EXT_global_priority_query.hs view
@@ -0,0 +1,342 @@+{-# language CPP #-}+-- | = Name+--+-- VK_EXT_global_priority_query - device extension+--+-- == VK_EXT_global_priority_query+--+-- [__Name String__]+-- @VK_EXT_global_priority_query@+--+-- [__Extension Type__]+-- Device extension+--+-- [__Registered Extension Number__]+-- 389+--+-- [__Revision__]+-- 1+--+-- [__Extension and Version Dependencies__]+--+-- - Requires Vulkan 1.0+--+-- - Requires @VK_EXT_global_priority@+--+-- - Requires @VK_KHR_get_physical_device_properties2@+--+-- [__Contact__]+--+-- - Yiwei Zhang+-- <https://github.com/KhronosGroup/Vulkan-Docs/issues/new?title=VK_EXT_global_priority_query:%20&body=@zhangyiwei%20 >+--+-- == Other Extension Metadata+--+-- [__Last Modified Date__]+-- 2021-03-29+--+-- [__IP Status__]+-- No known IP claims.+--+-- [__Contributors__]+--+-- - Yiwei Zhang, Google+--+-- == Description+--+-- This device extension allows applications to query the global queue+-- priorities supported by a queue family. It allows implementations to+-- report which global priority levels are treated differently by the+-- implementation, instead of silently mapping multiple requested global+-- priority levels to the same internal priority, or using device creation+-- failure to signal that a requested priority is not supported. It is+-- intended primarily for use by system integration along with certain+-- platform-specific priority enforcement rules.+--+-- == New Structures+--+-- - Extending+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceFeatures2':+--+-- - 'PhysicalDeviceGlobalPriorityQueryFeaturesEXT'+--+-- - Extending+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.QueueFamilyProperties2':+--+-- - 'QueueFamilyGlobalPriorityPropertiesEXT'+--+-- == New Enum Constants+--+-- - 'EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME'+--+-- - 'EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION'+--+-- - 'Vulkan.Core10.APIConstants.MAX_GLOBAL_PRIORITY_SIZE_EXT'+--+-- - Extending 'Vulkan.Core10.Enums.StructureType.StructureType':+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT'+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT'+--+-- == Issues+--+-- 1) Can we additionally query whether a caller is permitted to acquire a+-- specific global queue priority in this extension?+--+-- __RESOLVED__: No. Whether a caller has enough privilege goes with the+-- OS, and the Vulkan driver can’t really guarantee that the privilege+-- won’t change in between this query and the actual queue creation call.+--+-- 2) If more than 1 queue using global priority is requested, is there a+-- good way to know which queue is failing the device creation?+--+-- __RESOLVED__: No. There isn’t a good way at this moment and it’s also+-- not quite actionable for the applications to know that because the+-- information may not be accurate. Queue creation can fail because of+-- runtime constraints like insufficient privilege or lack of resource, and+-- the failure is not necessarily tied to that particular queue+-- configuration requested.+--+-- == Version History+--+-- - Revision 1, 2021-03-29 (Yiwei Zhang)+--+-- = See Also+--+-- 'Vulkan.Core10.APIConstants.MAX_GLOBAL_PRIORITY_SIZE_EXT',+-- 'PhysicalDeviceGlobalPriorityQueryFeaturesEXT',+-- 'QueueFamilyGlobalPriorityPropertiesEXT'+--+-- = Document Notes+--+-- For more information, see the+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VK_EXT_global_priority_query Vulkan Specification>+--+-- This page is a generated document. Fixes and changes should be made to+-- the generator scripts, not directly.+module Vulkan.Extensions.VK_EXT_global_priority_query ( PhysicalDeviceGlobalPriorityQueryFeaturesEXT(..)+ , QueueFamilyGlobalPriorityPropertiesEXT(..)+ , EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION+ , pattern EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION+ , EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME+ , pattern EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME+ , QueueGlobalPriorityEXT(..)+ , MAX_GLOBAL_PRIORITY_SIZE_EXT+ , pattern MAX_GLOBAL_PRIORITY_SIZE_EXT+ ) where++import Vulkan.CStruct.Utils (FixedArray)+import Control.Monad (unless)+import Foreign.Marshal.Alloc (allocaBytesAligned)+import GHC.IO (throwIO)+import Foreign.Ptr (nullPtr)+import Foreign.Ptr (plusPtr)+import Data.Vector (generateM)+import qualified Data.Vector (imapM_)+import qualified Data.Vector (length)+import Vulkan.CStruct (FromCStruct)+import Vulkan.CStruct (FromCStruct(..))+import Vulkan.CStruct (ToCStruct)+import Vulkan.CStruct (ToCStruct(..))+import Vulkan.Zero (Zero(..))+import Data.String (IsString)+import Data.Typeable (Typeable)+import Foreign.Storable (Storable)+import Foreign.Storable (Storable(peek))+import Foreign.Storable (Storable(poke))+import qualified Foreign.Storable (Storable(..))+import GHC.Generics (Generic)+import GHC.IO.Exception (IOErrorType(..))+import GHC.IO.Exception (IOException(..))+import Foreign.Ptr (Ptr)+import Data.Word (Word32)+import Data.Kind (Type)+import Data.Vector (Vector)+import Vulkan.CStruct.Utils (advancePtrBytes)+import Vulkan.Core10.FundamentalTypes (bool32ToBool)+import Vulkan.Core10.FundamentalTypes (boolToBool32)+import Vulkan.CStruct.Utils (lowerArrayPtr)+import Vulkan.Core10.FundamentalTypes (Bool32)+import Vulkan.Core10.APIConstants (MAX_GLOBAL_PRIORITY_SIZE_EXT)+import Vulkan.Extensions.VK_EXT_global_priority (QueueGlobalPriorityEXT)+import Vulkan.Core10.Enums.StructureType (StructureType)+import Vulkan.Core10.APIConstants (pattern MAX_GLOBAL_PRIORITY_SIZE_EXT)+import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT))+import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT))+import Vulkan.Core10.APIConstants (MAX_GLOBAL_PRIORITY_SIZE_EXT)+import Vulkan.Extensions.VK_EXT_global_priority (QueueGlobalPriorityEXT(..))+import Vulkan.Core10.APIConstants (pattern MAX_GLOBAL_PRIORITY_SIZE_EXT)+-- | VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT - Structure describing+-- whether global priority query can be supported by an implementation+--+-- = Members+--+-- The members of the 'PhysicalDeviceGlobalPriorityQueryFeaturesEXT'+-- structure describe the following features:+--+-- = Description+--+-- If the 'PhysicalDeviceGlobalPriorityQueryFeaturesEXT' structure is+-- included in the @pNext@ chain of the+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceFeatures2'+-- structure passed to+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.getPhysicalDeviceFeatures2',+-- it is filled in to indicate whether each corresponding feature is+-- supported. 'PhysicalDeviceGlobalPriorityQueryFeaturesEXT' /can/ also be+-- used in the @pNext@ chain of 'Vulkan.Core10.Device.DeviceCreateInfo' to+-- selectively enable these features.+--+-- == Valid Usage (Implicit)+--+-- = See Also+--+-- 'Vulkan.Core10.FundamentalTypes.Bool32',+-- 'Vulkan.Core10.Enums.StructureType.StructureType'+data PhysicalDeviceGlobalPriorityQueryFeaturesEXT = PhysicalDeviceGlobalPriorityQueryFeaturesEXT+ { -- | #features-globalPriorityQuery# @globalPriorityQuery@ indicates whether+ -- the implementation supports the ability to query global queue+ -- priorities.+ globalPriorityQuery :: Bool }+ deriving (Typeable, Eq)+#if defined(GENERIC_INSTANCES)+deriving instance Generic (PhysicalDeviceGlobalPriorityQueryFeaturesEXT)+#endif+deriving instance Show PhysicalDeviceGlobalPriorityQueryFeaturesEXT++instance ToCStruct PhysicalDeviceGlobalPriorityQueryFeaturesEXT where+ withCStruct x f = allocaBytesAligned 24 8 $ \p -> pokeCStruct p x (f p)+ pokeCStruct p PhysicalDeviceGlobalPriorityQueryFeaturesEXT{..} f = do+ poke ((p `plusPtr` 0 :: Ptr StructureType)) (STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT)+ poke ((p `plusPtr` 8 :: Ptr (Ptr ()))) (nullPtr)+ poke ((p `plusPtr` 16 :: Ptr Bool32)) (boolToBool32 (globalPriorityQuery))+ f+ cStructSize = 24+ cStructAlignment = 8+ pokeZeroCStruct p f = do+ poke ((p `plusPtr` 0 :: Ptr StructureType)) (STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT)+ poke ((p `plusPtr` 8 :: Ptr (Ptr ()))) (nullPtr)+ poke ((p `plusPtr` 16 :: Ptr Bool32)) (boolToBool32 (zero))+ f++instance FromCStruct PhysicalDeviceGlobalPriorityQueryFeaturesEXT where+ peekCStruct p = do+ globalPriorityQuery <- peek @Bool32 ((p `plusPtr` 16 :: Ptr Bool32))+ pure $ PhysicalDeviceGlobalPriorityQueryFeaturesEXT+ (bool32ToBool globalPriorityQuery)++instance Storable PhysicalDeviceGlobalPriorityQueryFeaturesEXT where+ sizeOf ~_ = 24+ alignment ~_ = 8+ peek = peekCStruct+ poke ptr poked = pokeCStruct ptr poked (pure ())++instance Zero PhysicalDeviceGlobalPriorityQueryFeaturesEXT where+ zero = PhysicalDeviceGlobalPriorityQueryFeaturesEXT+ zero+++-- | VkQueueFamilyGlobalPriorityPropertiesEXT - return structure for queue+-- family global priority info query+--+-- = Description+--+-- The valid elements of @priorities@ /must/ not contain any duplicate+-- values.+--+-- The valid elements of @priorities@ /must/ be a continuous sequence of+-- 'Vulkan.Extensions.VK_EXT_global_priority.QueueGlobalPriorityEXT' enums+-- in the ascending order.+--+-- Note+--+-- For example, returning @priorityCount@ as 3 with supported @priorities@+-- as+-- 'Vulkan.Extensions.VK_EXT_global_priority.QUEUE_GLOBAL_PRIORITY_LOW_EXT',+-- 'Vulkan.Extensions.VK_EXT_global_priority.QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT'+-- and+-- 'Vulkan.Extensions.VK_EXT_global_priority.QUEUE_GLOBAL_PRIORITY_REALTIME_EXT'+-- is not allowed.+--+-- == Valid Usage (Implicit)+--+-- - #VUID-VkQueueFamilyGlobalPriorityPropertiesEXT-sType-sType# @sType@+-- /must/ be+-- 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT'+--+-- - #VUID-VkQueueFamilyGlobalPriorityPropertiesEXT-priorities-parameter#+-- Any given element of @priorities@ /must/ be a valid+-- 'Vulkan.Extensions.VK_EXT_global_priority.QueueGlobalPriorityEXT'+-- value+--+-- = See Also+--+-- 'Vulkan.Extensions.VK_EXT_global_priority.QueueGlobalPriorityEXT',+-- 'Vulkan.Core10.Enums.StructureType.StructureType'+data QueueFamilyGlobalPriorityPropertiesEXT = QueueFamilyGlobalPriorityPropertiesEXT+ { -- | @priorityCount@ is the number of supported global queue priorities in+ -- this queue family, and it /must/ be greater than 0.+ priorityCount :: Word32+ , -- | @priorities@ is an array of+ -- 'Vulkan.Core10.APIConstants.MAX_GLOBAL_PRIORITY_SIZE_EXT'+ -- 'Vulkan.Extensions.VK_EXT_global_priority.QueueGlobalPriorityEXT' enums+ -- representing all supported global queue priorities in this queue family.+ -- The first @priorityCount@ elements of the array will be valid.+ priorities :: Vector QueueGlobalPriorityEXT+ }+ deriving (Typeable)+#if defined(GENERIC_INSTANCES)+deriving instance Generic (QueueFamilyGlobalPriorityPropertiesEXT)+#endif+deriving instance Show QueueFamilyGlobalPriorityPropertiesEXT++instance ToCStruct QueueFamilyGlobalPriorityPropertiesEXT where+ withCStruct x f = allocaBytesAligned 88 8 $ \p -> pokeCStruct p x (f p)+ pokeCStruct p QueueFamilyGlobalPriorityPropertiesEXT{..} f = do+ poke ((p `plusPtr` 0 :: Ptr StructureType)) (STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT)+ poke ((p `plusPtr` 8 :: Ptr (Ptr ()))) (nullPtr)+ poke ((p `plusPtr` 16 :: Ptr Word32)) (priorityCount)+ unless ((Data.Vector.length $ (priorities)) <= MAX_GLOBAL_PRIORITY_SIZE_EXT) $+ throwIO $ IOError Nothing InvalidArgument "" "priorities is too long, a maximum of MAX_GLOBAL_PRIORITY_SIZE_EXT elements are allowed" Nothing Nothing+ Data.Vector.imapM_ (\i e -> poke ((lowerArrayPtr ((p `plusPtr` 20 :: Ptr (FixedArray MAX_GLOBAL_PRIORITY_SIZE_EXT QueueGlobalPriorityEXT)))) `plusPtr` (4 * (i)) :: Ptr QueueGlobalPriorityEXT) (e)) (priorities)+ f+ cStructSize = 88+ cStructAlignment = 8+ pokeZeroCStruct p f = do+ poke ((p `plusPtr` 0 :: Ptr StructureType)) (STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT)+ poke ((p `plusPtr` 8 :: Ptr (Ptr ()))) (nullPtr)+ poke ((p `plusPtr` 16 :: Ptr Word32)) (zero)+ f++instance FromCStruct QueueFamilyGlobalPriorityPropertiesEXT where+ peekCStruct p = do+ priorityCount <- peek @Word32 ((p `plusPtr` 16 :: Ptr Word32))+ priorities <- generateM (MAX_GLOBAL_PRIORITY_SIZE_EXT) (\i -> peek @QueueGlobalPriorityEXT (((lowerArrayPtr @QueueGlobalPriorityEXT ((p `plusPtr` 20 :: Ptr (FixedArray MAX_GLOBAL_PRIORITY_SIZE_EXT QueueGlobalPriorityEXT)))) `advancePtrBytes` (4 * (i)) :: Ptr QueueGlobalPriorityEXT)))+ pure $ QueueFamilyGlobalPriorityPropertiesEXT+ priorityCount priorities++instance Storable QueueFamilyGlobalPriorityPropertiesEXT where+ sizeOf ~_ = 88+ alignment ~_ = 8+ peek = peekCStruct+ poke ptr poked = pokeCStruct ptr poked (pure ())++instance Zero QueueFamilyGlobalPriorityPropertiesEXT where+ zero = QueueFamilyGlobalPriorityPropertiesEXT+ zero+ mempty+++type EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION = 1++-- No documentation found for TopLevel "VK_EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION"+pattern EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION :: forall a . Integral a => a+pattern EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION = 1+++type EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME = "VK_EXT_global_priority_query"++-- No documentation found for TopLevel "VK_EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME"+pattern EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME :: forall a . (Eq a, IsString a) => a+pattern EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME = "VK_EXT_global_priority_query"+
+ src/Vulkan/Extensions/VK_EXT_global_priority_query.hs-boot view
@@ -0,0 +1,140 @@+{-# language CPP #-}+-- | = Name+--+-- VK_EXT_global_priority_query - device extension+--+-- == VK_EXT_global_priority_query+--+-- [__Name String__]+-- @VK_EXT_global_priority_query@+--+-- [__Extension Type__]+-- Device extension+--+-- [__Registered Extension Number__]+-- 389+--+-- [__Revision__]+-- 1+--+-- [__Extension and Version Dependencies__]+--+-- - Requires Vulkan 1.0+--+-- - Requires @VK_EXT_global_priority@+--+-- - Requires @VK_KHR_get_physical_device_properties2@+--+-- [__Contact__]+--+-- - Yiwei Zhang+-- <https://github.com/KhronosGroup/Vulkan-Docs/issues/new?title=VK_EXT_global_priority_query:%20&body=@zhangyiwei%20 >+--+-- == Other Extension Metadata+--+-- [__Last Modified Date__]+-- 2021-03-29+--+-- [__IP Status__]+-- No known IP claims.+--+-- [__Contributors__]+--+-- - Yiwei Zhang, Google+--+-- == Description+--+-- This device extension allows applications to query the global queue+-- priorities supported by a queue family. It allows implementations to+-- report which global priority levels are treated differently by the+-- implementation, instead of silently mapping multiple requested global+-- priority levels to the same internal priority, or using device creation+-- failure to signal that a requested priority is not supported. It is+-- intended primarily for use by system integration along with certain+-- platform-specific priority enforcement rules.+--+-- == New Structures+--+-- - Extending+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceFeatures2':+--+-- - 'PhysicalDeviceGlobalPriorityQueryFeaturesEXT'+--+-- - Extending+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.QueueFamilyProperties2':+--+-- - 'QueueFamilyGlobalPriorityPropertiesEXT'+--+-- == New Enum Constants+--+-- - 'EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME'+--+-- - 'EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION'+--+-- - 'Vulkan.Core10.APIConstants.MAX_GLOBAL_PRIORITY_SIZE_EXT'+--+-- - Extending 'Vulkan.Core10.Enums.StructureType.StructureType':+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT'+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT'+--+-- == Issues+--+-- 1) Can we additionally query whether a caller is permitted to acquire a+-- specific global queue priority in this extension?+--+-- __RESOLVED__: No. Whether a caller has enough privilege goes with the+-- OS, and the Vulkan driver can’t really guarantee that the privilege+-- won’t change in between this query and the actual queue creation call.+--+-- 2) If more than 1 queue using global priority is requested, is there a+-- good way to know which queue is failing the device creation?+--+-- __RESOLVED__: No. There isn’t a good way at this moment and it’s also+-- not quite actionable for the applications to know that because the+-- information may not be accurate. Queue creation can fail because of+-- runtime constraints like insufficient privilege or lack of resource, and+-- the failure is not necessarily tied to that particular queue+-- configuration requested.+--+-- == Version History+--+-- - Revision 1, 2021-03-29 (Yiwei Zhang)+--+-- = See Also+--+-- 'Vulkan.Core10.APIConstants.MAX_GLOBAL_PRIORITY_SIZE_EXT',+-- 'PhysicalDeviceGlobalPriorityQueryFeaturesEXT',+-- 'QueueFamilyGlobalPriorityPropertiesEXT'+--+-- = Document Notes+--+-- For more information, see the+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VK_EXT_global_priority_query Vulkan Specification>+--+-- This page is a generated document. Fixes and changes should be made to+-- the generator scripts, not directly.+module Vulkan.Extensions.VK_EXT_global_priority_query ( PhysicalDeviceGlobalPriorityQueryFeaturesEXT+ , QueueFamilyGlobalPriorityPropertiesEXT+ ) where++import Vulkan.CStruct (FromCStruct)+import Vulkan.CStruct (ToCStruct)+import Data.Kind (Type)++data PhysicalDeviceGlobalPriorityQueryFeaturesEXT++instance ToCStruct PhysicalDeviceGlobalPriorityQueryFeaturesEXT+instance Show PhysicalDeviceGlobalPriorityQueryFeaturesEXT++instance FromCStruct PhysicalDeviceGlobalPriorityQueryFeaturesEXT+++data QueueFamilyGlobalPriorityPropertiesEXT++instance ToCStruct QueueFamilyGlobalPriorityPropertiesEXT+instance Show QueueFamilyGlobalPriorityPropertiesEXT++instance FromCStruct QueueFamilyGlobalPriorityPropertiesEXT+
src/Vulkan/Extensions/VK_EXT_image_drm_format_modifier.hs view
@@ -1,8 +1,531 @@ {-# language CPP #-}--- | Its functionality closely overlaps with+-- | = Name+--+-- VK_EXT_image_drm_format_modifier - device extension+--+-- == VK_EXT_image_drm_format_modifier+--+-- [__Name String__]+-- @VK_EXT_image_drm_format_modifier@+--+-- [__Extension Type__]+-- Device extension+--+-- [__Registered Extension Number__]+-- 159+--+-- [__Revision__]+-- 1+--+-- [__Extension and Version Dependencies__]+--+-- - Requires Vulkan 1.0+--+-- - Requires @VK_KHR_bind_memory2@+--+-- - Requires @VK_KHR_get_physical_device_properties2@+--+-- - Requires @VK_KHR_image_format_list@+--+-- - Requires @VK_KHR_sampler_ycbcr_conversion@+--+-- [__Contact__]+--+-- - Chad Versace+-- <https://github.com/KhronosGroup/Vulkan-Docs/issues/new?title=VK_EXT_image_drm_format_modifier:%20&body=@chadversary%20 >+--+-- == Other Extension Metadata+--+-- [__Last Modified Date__]+-- 2018-08-29+--+-- [__IP Status__]+-- No known IP claims.+--+-- [__Contributors__]+--+-- - Antoine Labour, Google+--+-- - Bas Nieuwenhuizen, Google+--+-- - Chad Versace, Google+--+-- - James Jones, NVIDIA+--+-- - Jason Ekstrand, Intel+--+-- - Jőrg Wagner, ARM+--+-- - Kristian Høgsberg Kristensen, Google+--+-- - Ray Smith, ARM+--+-- == Description+--+-- This extension provides the ability to use /DRM format modifiers/ with+-- images, enabling Vulkan to better integrate with the Linux ecosystem of+-- graphics, video, and display APIs.+--+-- Its functionality closely overlaps with -- @EGL_EXT_image_dma_buf_import_modifiers@<VK_EXT_image_drm_format_modifier-fn2.html 2>^ -- and -- @EGL_MESA_image_dma_buf_export@<VK_EXT_image_drm_format_modifier-fn3.html 3>^.+-- Unlike the EGL extensions, this extension does not require the use of a+-- specific handle type (such as a dma_buf) for external memory and+-- provides more explicit control of image creation.+--+-- == Introduction to DRM Format Modifiers+--+-- A /DRM format modifier/ is a 64-bit, vendor-prefixed, semi-opaque+-- unsigned integer. Most /modifiers/ represent a concrete, vendor-specific+-- tiling format for images. Some exceptions are @DRM_FORMAT_MOD_LINEAR@+-- (which is not vendor-specific); @DRM_FORMAT_MOD_NONE@ (which is an alias+-- of @DRM_FORMAT_MOD_LINEAR@ due to historical accident); and+-- @DRM_FORMAT_MOD_INVALID@ (which does not represent a tiling format). The+-- /modifier’s/ vendor prefix consists of the 8 most significant bits. The+-- canonical list of /modifiers/ and vendor prefixes is found in+-- <https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/uapi/drm/drm_fourcc.h drm_fourcc.h>+-- in the Linux kernel source. The other dominant source of /modifiers/ are+-- vendor kernel trees.+--+-- One goal of /modifiers/ in the Linux ecosystem is to enumerate for each+-- vendor a reasonably sized set of tiling formats that are appropriate for+-- images shared across processes, APIs, and\/or devices, where each+-- participating component may possibly be from different vendors. A+-- non-goal is to enumerate all tiling formats supported by all vendors.+-- Some tiling formats used internally by vendors are inappropriate for+-- sharing; no /modifiers/ should be assigned to such tiling formats.+--+-- Modifier values typically do not /describe/ memory layouts. More+-- precisely, a /modifier/\'s lower 56 bits usually have no structure.+-- Instead, modifiers /name/ memory layouts; they name a small set of+-- vendor-preferred layouts for image sharing. As a consequence, in each+-- vendor namespace the modifier values are often sequentially allocated+-- starting at 1.+--+-- Each /modifier/ is usually supported by a single vendor and its name+-- matches the pattern @{VENDOR}_FORMAT_MOD_*@ or+-- @DRM_FORMAT_MOD_{VENDOR}_*@. Examples are @I915_FORMAT_MOD_X_TILED@ and+-- @DRM_FORMAT_MOD_BROADCOM_VC4_T_TILED@. An exception is+-- @DRM_FORMAT_MOD_LINEAR@, which is supported by most vendors.+--+-- Many APIs in Linux use /modifiers/ to negotiate and specify the memory+-- layout of shared images. For example, a Wayland compositor and Wayland+-- client may, by relaying /modifiers/ over the Wayland protocol+-- @zwp_linux_dmabuf_v1@, negotiate a vendor-specific tiling format for a+-- shared @wl_buffer@. The client may allocate the underlying memory for+-- the @wl_buffer@ with GBM, providing the chosen /modifier/ to+-- @gbm_bo_create_with_modifiers@. The client may then import the+-- @wl_buffer@ into Vulkan for producing image content, providing the+-- resource’s dma_buf to+-- 'Vulkan.Extensions.VK_KHR_external_memory_fd.ImportMemoryFdInfoKHR' and+-- its /modifier/ to 'ImageDrmFormatModifierExplicitCreateInfoEXT'. The+-- compositor may then import the @wl_buffer@ into OpenGL for sampling,+-- providing the resource’s dma_buf and /modifier/ to @eglCreateImage@. The+-- compositor may also bypass OpenGL and submit the @wl_buffer@ directly to+-- the kernel’s display API, providing the dma_buf and /modifier/ through+-- @drm_mode_fb_cmd2@.+--+-- == Format Translation+--+-- /Modifier/-capable APIs often pair /modifiers/ with DRM formats, which+-- are defined in+-- <https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/uapi/drm/drm_fourcc.h drm_fourcc.h>.+-- However, @VK_EXT_image_drm_format_modifier@ uses+-- 'Vulkan.Core10.Enums.Format.Format' instead of DRM formats. The+-- application must convert between 'Vulkan.Core10.Enums.Format.Format' and+-- DRM format when it sends or receives a DRM format to or from an external+-- API.+--+-- The mapping from 'Vulkan.Core10.Enums.Format.Format' to DRM format is+-- lossy. Therefore, when receiving a DRM format from an external API,+-- often the application must use information from the external API to+-- accurately map the DRM format to a 'Vulkan.Core10.Enums.Format.Format'.+-- For example, DRM formats do not distinguish between RGB and sRGB (as of+-- 2018-03-28); external information is required to identify the image’s+-- colorspace.+--+-- The mapping between 'Vulkan.Core10.Enums.Format.Format' and DRM format+-- is also incomplete. For some DRM formats there exist no corresponding+-- Vulkan format, and for some Vulkan formats there exist no corresponding+-- DRM format.+--+-- == Usage Patterns+--+-- Three primary usage patterns are intended for this extension:+--+-- - __Negotiation.__ The application negotiates with /modifier/-aware,+-- external components to determine sets of image creation parameters+-- supported among all components.+--+-- In the Linux ecosystem, the negotiation usually assumes the image is+-- a 2D, single-sampled, non-mipmapped, non-array image; this extension+-- permits that assumption but does not require it. The result of the+-- negotiation usually resembles a set of tuples such as /(drmFormat,+-- drmFormatModifier)/, where each participating component supports all+-- tuples in the set.+--+-- Many details of this negotiation—such as the protocol used during+-- negotiation, the set of image creation parameters expressable in the+-- protocol, and how the protocol chooses which process and which API+-- will create the image—are outside the scope of this specification.+--+-- In this extension,+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.getPhysicalDeviceFormatProperties2'+-- with 'DrmFormatModifierPropertiesListEXT' serves a primary role+-- during the negotiation, and+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.getPhysicalDeviceImageFormatProperties2'+-- with 'PhysicalDeviceImageDrmFormatModifierInfoEXT' serves a+-- secondary role.+--+-- - __Import.__ The application imports an image with a /modifier/.+--+-- In this pattern, the application receives from an external source+-- the image’s memory and its creation parameters, which are often the+-- result of the negotiation described above. Some image creation+-- parameters are implicitly defined by the external source; for+-- example, 'Vulkan.Core10.Enums.ImageType.IMAGE_TYPE_2D' is often+-- assumed. Some image creation parameters are usually explicit, such+-- as the image’s @format@, @drmFormatModifier@, and @extent@; and each+-- plane’s @offset@ and @rowPitch@.+--+-- Before creating the image, the application first verifies that the+-- physical device supports the received creation parameters by+-- querying+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.getPhysicalDeviceFormatProperties2'+-- with 'DrmFormatModifierPropertiesListEXT' and+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.getPhysicalDeviceImageFormatProperties2'+-- with 'PhysicalDeviceImageDrmFormatModifierInfoEXT'. Then the+-- application creates the image by chaining+-- 'ImageDrmFormatModifierExplicitCreateInfoEXT' and+-- 'Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryImageCreateInfo'+-- onto 'Vulkan.Core10.Image.ImageCreateInfo'.+--+-- - __Export.__ The application creates an image and allocates its+-- memory. Then the application exports to /modifier/-aware consumers+-- the image’s memory handles; its creation parameters; its /modifier/;+-- and the <VkSubresourceLayout.html offset>,+-- <VkSubresourceLayout.html size>, and+-- <VkSubresourceLayout.html rowPitch> of each /memory plane/.+--+-- In this pattern, the Vulkan device is the authority for the image;+-- it is the allocator of the image’s memory and the decider of the+-- image’s creation parameters. When choosing the image’s creation+-- parameters, the application usually chooses a tuple /(format,+-- drmFormatModifier)/ from the result of the negotiation described+-- above. The negotiation’s result often contains multiple tuples that+-- share the same format but differ in their /modifier/. In this case,+-- the application should defer the choice of the image’s /modifier/ to+-- the Vulkan implementation by providing all such /modifiers/ to+-- 'ImageDrmFormatModifierListCreateInfoEXT'::@pDrmFormatModifiers@;+-- and the implementation should choose from @pDrmFormatModifiers@ the+-- optimal /modifier/ in consideration with the other image parameters.+--+-- The application creates the image by chaining+-- 'ImageDrmFormatModifierListCreateInfoEXT' and+-- 'Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryImageCreateInfo'+-- onto 'Vulkan.Core10.Image.ImageCreateInfo'. The protocol and APIs by+-- which the application will share the image with external consumers+-- will likely determine the value of+-- 'Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryImageCreateInfo'::@handleTypes@.+-- The implementation chooses for the image an optimal /modifier/ from+-- 'ImageDrmFormatModifierListCreateInfoEXT'::@pDrmFormatModifiers@.+-- The application then queries the implementation-chosen /modifier/+-- with 'getImageDrmFormatModifierPropertiesEXT', and queries the+-- memory layout of each plane with+-- 'Vulkan.Core10.Image.getImageSubresourceLayout'.+--+-- The application then allocates the image’s memory with+-- 'Vulkan.Core10.Memory.MemoryAllocateInfo', adding chained extending+-- structures for external memory; binds it to the image; and exports+-- the memory, for example, with+-- 'Vulkan.Extensions.VK_KHR_external_memory_fd.getMemoryFdKHR'.+--+-- Finally, the application sends the image’s creation parameters, its+-- /modifier/, its per-plane memory layout, and the exported memory+-- handle to the external consumers. The details of how the application+-- transmits this information to external consumers is outside the+-- scope of this specification.+--+-- == Prior Art+--+-- Extension+-- @EGL_EXT_image_dma_buf_import@<VK_EXT_image_drm_format_modifier-fn1.html 1>^+-- introduced the ability to create an @EGLImage@ by importing for each+-- plane a dma_buf, offset, and row pitch.+--+-- Later, extension+-- @EGL_EXT_image_dma_buf_import_modifiers@<VK_EXT_image_drm_format_modifier-fn2.html 2>^+-- introduced the ability to query which combination of formats and+-- /modifiers/ the implementation supports and to specify /modifiers/+-- during creation of the @EGLImage@.+--+-- Extension+-- @EGL_MESA_image_dma_buf_export@<VK_EXT_image_drm_format_modifier-fn3.html 3>^+-- is the inverse of @EGL_EXT_image_dma_buf_import_modifiers@.+--+-- The Linux kernel modesetting API (KMS), when configuring the display’s+-- framebuffer with @struct+-- drm_mode_fb_cmd2@<VK_EXT_image_drm_format_modifier-fn4.html 4>^, allows+-- one to specify the frambuffer’s /modifier/ as well as a per-plane memory+-- handle, offset, and row pitch.+--+-- GBM, a graphics buffer manager for Linux, allows creation of a @gbm_bo@+-- (that is, a graphics /buffer object/) by importing data similar to that+-- in+-- @EGL_EXT_image_dma_buf_import_modifiers@<VK_EXT_image_drm_format_modifier-fn1.html 1>^;+-- and symmetrically allows exporting the same data from the @gbm_bo@. See+-- the references to /modifier/ and /plane/ in+-- @gbm.h@<VK_EXT_image_drm_format_modifier-fn5.html 5>^.+--+-- == New Commands+--+-- - 'getImageDrmFormatModifierPropertiesEXT'+--+-- == New Structures+--+-- - 'DrmFormatModifierPropertiesEXT'+--+-- - 'ImageDrmFormatModifierPropertiesEXT'+--+-- - Extending+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.FormatProperties2':+--+-- - 'DrmFormatModifierPropertiesListEXT'+--+-- - Extending 'Vulkan.Core10.Image.ImageCreateInfo':+--+-- - 'ImageDrmFormatModifierExplicitCreateInfoEXT'+--+-- - 'ImageDrmFormatModifierListCreateInfoEXT'+--+-- - Extending+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceImageFormatInfo2':+--+-- - 'PhysicalDeviceImageDrmFormatModifierInfoEXT'+--+-- == New Enum Constants+--+-- - 'EXT_IMAGE_DRM_FORMAT_MODIFIER_EXTENSION_NAME'+--+-- - 'EXT_IMAGE_DRM_FORMAT_MODIFIER_SPEC_VERSION'+--+-- - Extending+-- 'Vulkan.Core10.Enums.ImageAspectFlagBits.ImageAspectFlagBits':+--+-- - 'Vulkan.Core10.Enums.ImageAspectFlagBits.IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT'+--+-- - 'Vulkan.Core10.Enums.ImageAspectFlagBits.IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT'+--+-- - 'Vulkan.Core10.Enums.ImageAspectFlagBits.IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT'+--+-- - 'Vulkan.Core10.Enums.ImageAspectFlagBits.IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT'+--+-- - Extending 'Vulkan.Core10.Enums.ImageTiling.ImageTiling':+--+-- - 'Vulkan.Core10.Enums.ImageTiling.IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT'+--+-- - Extending 'Vulkan.Core10.Enums.Result.Result':+--+-- - 'Vulkan.Core10.Enums.Result.ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT'+--+-- - Extending 'Vulkan.Core10.Enums.StructureType.StructureType':+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT'+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT'+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT'+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT'+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT'+--+-- == Issues+--+-- 1) Should this extension define a single DRM format modifier per+-- 'Vulkan.Core10.Handles.Image'? Or define one per plane?+--+-- ++--+-- __RESOLVED__: There exists a single DRM format modifier per+-- 'Vulkan.Core10.Handles.Image'.+--+-- __DISCUSSION__: Prior art, such as+-- @EGL_EXT_image_dma_buf_import_modifiers@<VK_EXT_image_drm_format_modifier-fn2.html 2>^,+-- @struct drm_mode_fb_cmd2@<VK_EXT_image_drm_format_modifier-fn4.html 4>^,+-- and @struct+-- gbm_import_fd_modifier_data@<VK_EXT_image_drm_format_modifier-fn5.html 5>^,+-- allows defining one /modifier/ per plane. However, developers of the GBM+-- and kernel APIs concede it was a mistake. Beginning in Linux 4.10, the+-- kernel requires that the application provide the same DRM format+-- /modifier/ for each plane. (See Linux commit+-- <https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=bae781b259269590109e8a4a8227331362b88212 bae781b259269590109e8a4a8227331362b88212>).+-- And GBM provides an entry point, @gbm_bo_get_modifier@, for querying the+-- /modifier/ of the image but does not provide one to query the modifier+-- of individual planes.+--+-- 2) When creating an image with+-- 'ImageDrmFormatModifierExplicitCreateInfoEXT', which is typically used+-- when /importing/ an image, should the application explicitly provide the+-- size of each plane?+--+-- ++--+-- __RESOLVED__: No. The application /must/ not provide the size. To+-- enforce this, the API requires that+-- 'ImageDrmFormatModifierExplicitCreateInfoEXT'::@pPlaneLayouts->size@+-- /must/ be 0.+--+-- __DISCUSSION__: Prior art, such as+-- @EGL_EXT_image_dma_buf_import_modifiers@<VK_EXT_image_drm_format_modifier-fn2.html 2>^,+-- @struct drm_mode_fb_cmd2@<VK_EXT_image_drm_format_modifier-fn4.html 4>^,+-- and @struct+-- gbm_import_fd_modifier_data@<VK_EXT_image_drm_format_modifier-fn5.html 5>^,+-- omits from the API the size of each plane. Instead, the APIs infer each+-- plane’s size from the import parameters, which include the image’s pixel+-- format and a dma_buf, offset, and row pitch for each plane.+--+-- However, Vulkan differs from EGL and GBM with regards to image creation+-- in the following ways:+--+-- - __Undedicated allocation by default.__ When importing or exporting a+-- set of dma_bufs as an @EGLImage@ or @gbm_bo@, common practice+-- mandates that each dma_buf’s memory be dedicated (in the sense of+-- @VK_KHR_dedicated_allocation@) to the image (though not necessarily+-- dedicated to a single plane). In particular, neither the GBM+-- documentation nor the EGL extension specifications explicitly state+-- this requirement, but in light of common practice this is likely due+-- to under-specification rather than intentional omission. In+-- contrast, @VK_EXT_image_drm_format_modifier@ permits, but does not+-- require, the implementation to require dedicated allocations for+-- images created with+-- 'Vulkan.Core10.Enums.ImageTiling.IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT'.+--+-- - __Separation of image creation and memory allocation.__ When+-- importing a set of dma_bufs as an @EGLImage@ or @gbm_bo@, EGL and+-- GBM create the image resource and bind it to memory (the dma_bufs)+-- simultaneously. This allows EGL and GBM to query each dma_buf’s size+-- during image creation. In Vulkan, image creation and memory+-- allocation are independent unless a dedicated allocation is used (as+-- in @VK_KHR_dedicated_allocation@). Therefore, without requiring+-- dedicated allocation, Vulkan cannot query the size of each dma_buf+-- (or other external handle) when calculating the image’s memory+-- layout. Even if dedication allocation were required, Vulkan cannot+-- calculate the image’s memory layout until after the image is bound+-- to its dma_ufs.+--+-- The above differences complicate the potential inference of plane size+-- in Vulkan. Consider the following problematic cases:+--+-- - __Padding.__ Some plane of the image may require+-- implementation-dependent padding.+--+-- - __Metadata.__ For some /modifiers/, the image may have a metadata+-- plane which requires a non-trivial calculation to determine its+-- size.+--+-- - __Mipmapped, array, and 3D images.__ The implementation may support+-- 'Vulkan.Core10.Enums.ImageTiling.IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT'+-- for images whose @mipLevels@, @arrayLayers@, or @depth@ is greater+-- than 1. For such images with certain /modifiers/, the calculation of+-- each plane’s size may be non-trivial.+--+-- However, an application-provided plane size solves none of the above+-- problems.+--+-- For simplicity, consider an external image with a single memory plane.+-- The implementation is obviously capable calculating the image’s size+-- when its tiling is+-- 'Vulkan.Core10.Enums.ImageTiling.IMAGE_TILING_OPTIMAL'. Likewise, any+-- reasonable implementation is capable of calculating the image’s size+-- when its tiling uses a supported /modifier/.+--+-- Suppose that the external image’s size is smaller than the+-- implementation-calculated size. If the application provided the external+-- image’s size to 'Vulkan.Core10.Image.createImage', the implementation+-- would observe the mismatched size and recognize its inability to+-- comprehend the external image’s layout (unless the implementation used+-- the application-provided size to select a refinement of the tiling+-- layout indicated by the /modifier/, which is strongly discouraged). The+-- implementation would observe the conflict, and reject image creation+-- with+-- 'Vulkan.Core10.Enums.Result.ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT'.+-- On the other hand, if the application did not provide the external+-- image’s size to 'Vulkan.Core10.Image.createImage', then the application+-- would observe after calling+-- 'Vulkan.Core10.MemoryManagement.getImageMemoryRequirements' that the+-- external image’s size is less than the size required by the+-- implementation. The application would observe the conflict and refuse to+-- bind the 'Vulkan.Core10.Handles.Image' to the external memory. In both+-- cases, the result is explicit failure.+--+-- Suppose that the external image’s size is larger than the+-- implementation-calculated size. If the application provided the external+-- image’s size to 'Vulkan.Core10.Image.createImage', for reasons similar+-- to above the implementation would observe the mismatched size and+-- recognize its inability to comprehend the image data residing in the+-- extra size. The implementation, however, must assume that image data+-- resides in the entire size provided by the application. The+-- implementation would observe the conflict and reject image creation with+-- 'Vulkan.Core10.Enums.Result.ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT'.+-- On the other hand, if the application did not provide the external+-- image’s size to 'Vulkan.Core10.Image.createImage', then the application+-- would observe after calling+-- 'Vulkan.Core10.MemoryManagement.getImageMemoryRequirements' that the+-- external image’s size is larger than the implementation-usable size. The+-- application would observe the conflict and refuse to bind the+-- 'Vulkan.Core10.Handles.Image' to the external memory. In both cases, the+-- result is explicit failure.+--+-- Therefore, an application-provided size provides no benefit, and this+-- extension should not require it. This decision renders+-- 'Vulkan.Core10.Image.SubresourceLayout'::@size@ an unused field during+-- image creation, and thus introduces a risk that implementations may+-- require applications to submit sideband creation parameters in the+-- unused field. To prevent implementations from relying on sideband data,+-- this extension /requires/ the application to set @size@ to 0.+--+-- === References+--+-- 1. #VK_EXT_image_drm_format_modifier-fn1#+-- <https://www.khronos.org/registry/EGL/extensions/EXT/EGL_EXT_image_dma_buf_import.txt EGL_EXT_image_dma_buf_import>+--+-- 2. #VK_EXT_image_drm_format_modifier-fn2#+-- <https://www.khronos.org/registry/EGL/extensions/EXT/EGL_EXT_image_dma_buf_import_modifiers.txt EGL_EXT_image_dma_buf_import_modifiers>+--+-- 3. #VK_EXT_image_drm_format_modifier-fn3#+-- <https://www.khronos.org/registry/EGL/extensions/MESA/EGL_MESA_image_dma_buf_export.txt EGL_MESA_image_dma_buf_export>+--+-- 4. #VK_EXT_image_drm_format_modifier-fn4#+-- <https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/include/uapi/drm/drm_mode.h?id=refs/tags/v4.10#n392 struct+-- drm_mode_fb_cmd2>+--+-- 5. #VK_EXT_image_drm_format_modifier-fn5#+-- <https://cgit.freedesktop.org/mesa/mesa/tree/src/gbm/main/gbm.h?id=refs/tags/mesa-18.0.0-rc1 gbm.h>+--+-- === Version History+--+-- - Revision 1, 2018-08-29 (Chad Versace)+--+-- - First stable revision+--+-- = See Also+--+-- 'DrmFormatModifierPropertiesEXT', 'DrmFormatModifierPropertiesListEXT',+-- 'ImageDrmFormatModifierExplicitCreateInfoEXT',+-- 'ImageDrmFormatModifierListCreateInfoEXT',+-- 'ImageDrmFormatModifierPropertiesEXT',+-- 'PhysicalDeviceImageDrmFormatModifierInfoEXT',+-- 'getImageDrmFormatModifierPropertiesEXT'+--+-- = Document Notes+--+-- For more information, see the+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VK_EXT_image_drm_format_modifier Vulkan Specification>+--+-- This page is a generated document. Fixes and changes should be made to+-- the generator scripts, not directly. module Vulkan.Extensions.VK_EXT_image_drm_format_modifier ( getImageDrmFormatModifierPropertiesEXT , DrmFormatModifierPropertiesListEXT(..) , DrmFormatModifierPropertiesEXT(..)
src/Vulkan/Extensions/VK_EXT_image_drm_format_modifier.hs-boot view
@@ -1,8 +1,531 @@ {-# language CPP #-}--- | Its functionality closely overlaps with+-- | = Name+--+-- VK_EXT_image_drm_format_modifier - device extension+--+-- == VK_EXT_image_drm_format_modifier+--+-- [__Name String__]+-- @VK_EXT_image_drm_format_modifier@+--+-- [__Extension Type__]+-- Device extension+--+-- [__Registered Extension Number__]+-- 159+--+-- [__Revision__]+-- 1+--+-- [__Extension and Version Dependencies__]+--+-- - Requires Vulkan 1.0+--+-- - Requires @VK_KHR_bind_memory2@+--+-- - Requires @VK_KHR_get_physical_device_properties2@+--+-- - Requires @VK_KHR_image_format_list@+--+-- - Requires @VK_KHR_sampler_ycbcr_conversion@+--+-- [__Contact__]+--+-- - Chad Versace+-- <https://github.com/KhronosGroup/Vulkan-Docs/issues/new?title=VK_EXT_image_drm_format_modifier:%20&body=@chadversary%20 >+--+-- == Other Extension Metadata+--+-- [__Last Modified Date__]+-- 2018-08-29+--+-- [__IP Status__]+-- No known IP claims.+--+-- [__Contributors__]+--+-- - Antoine Labour, Google+--+-- - Bas Nieuwenhuizen, Google+--+-- - Chad Versace, Google+--+-- - James Jones, NVIDIA+--+-- - Jason Ekstrand, Intel+--+-- - Jőrg Wagner, ARM+--+-- - Kristian Høgsberg Kristensen, Google+--+-- - Ray Smith, ARM+--+-- == Description+--+-- This extension provides the ability to use /DRM format modifiers/ with+-- images, enabling Vulkan to better integrate with the Linux ecosystem of+-- graphics, video, and display APIs.+--+-- Its functionality closely overlaps with -- @EGL_EXT_image_dma_buf_import_modifiers@<VK_EXT_image_drm_format_modifier-fn2.html 2>^ -- and -- @EGL_MESA_image_dma_buf_export@<VK_EXT_image_drm_format_modifier-fn3.html 3>^.+-- Unlike the EGL extensions, this extension does not require the use of a+-- specific handle type (such as a dma_buf) for external memory and+-- provides more explicit control of image creation.+--+-- == Introduction to DRM Format Modifiers+--+-- A /DRM format modifier/ is a 64-bit, vendor-prefixed, semi-opaque+-- unsigned integer. Most /modifiers/ represent a concrete, vendor-specific+-- tiling format for images. Some exceptions are @DRM_FORMAT_MOD_LINEAR@+-- (which is not vendor-specific); @DRM_FORMAT_MOD_NONE@ (which is an alias+-- of @DRM_FORMAT_MOD_LINEAR@ due to historical accident); and+-- @DRM_FORMAT_MOD_INVALID@ (which does not represent a tiling format). The+-- /modifier’s/ vendor prefix consists of the 8 most significant bits. The+-- canonical list of /modifiers/ and vendor prefixes is found in+-- <https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/uapi/drm/drm_fourcc.h drm_fourcc.h>+-- in the Linux kernel source. The other dominant source of /modifiers/ are+-- vendor kernel trees.+--+-- One goal of /modifiers/ in the Linux ecosystem is to enumerate for each+-- vendor a reasonably sized set of tiling formats that are appropriate for+-- images shared across processes, APIs, and\/or devices, where each+-- participating component may possibly be from different vendors. A+-- non-goal is to enumerate all tiling formats supported by all vendors.+-- Some tiling formats used internally by vendors are inappropriate for+-- sharing; no /modifiers/ should be assigned to such tiling formats.+--+-- Modifier values typically do not /describe/ memory layouts. More+-- precisely, a /modifier/\'s lower 56 bits usually have no structure.+-- Instead, modifiers /name/ memory layouts; they name a small set of+-- vendor-preferred layouts for image sharing. As a consequence, in each+-- vendor namespace the modifier values are often sequentially allocated+-- starting at 1.+--+-- Each /modifier/ is usually supported by a single vendor and its name+-- matches the pattern @{VENDOR}_FORMAT_MOD_*@ or+-- @DRM_FORMAT_MOD_{VENDOR}_*@. Examples are @I915_FORMAT_MOD_X_TILED@ and+-- @DRM_FORMAT_MOD_BROADCOM_VC4_T_TILED@. An exception is+-- @DRM_FORMAT_MOD_LINEAR@, which is supported by most vendors.+--+-- Many APIs in Linux use /modifiers/ to negotiate and specify the memory+-- layout of shared images. For example, a Wayland compositor and Wayland+-- client may, by relaying /modifiers/ over the Wayland protocol+-- @zwp_linux_dmabuf_v1@, negotiate a vendor-specific tiling format for a+-- shared @wl_buffer@. The client may allocate the underlying memory for+-- the @wl_buffer@ with GBM, providing the chosen /modifier/ to+-- @gbm_bo_create_with_modifiers@. The client may then import the+-- @wl_buffer@ into Vulkan for producing image content, providing the+-- resource’s dma_buf to+-- 'Vulkan.Extensions.VK_KHR_external_memory_fd.ImportMemoryFdInfoKHR' and+-- its /modifier/ to 'ImageDrmFormatModifierExplicitCreateInfoEXT'. The+-- compositor may then import the @wl_buffer@ into OpenGL for sampling,+-- providing the resource’s dma_buf and /modifier/ to @eglCreateImage@. The+-- compositor may also bypass OpenGL and submit the @wl_buffer@ directly to+-- the kernel’s display API, providing the dma_buf and /modifier/ through+-- @drm_mode_fb_cmd2@.+--+-- == Format Translation+--+-- /Modifier/-capable APIs often pair /modifiers/ with DRM formats, which+-- are defined in+-- <https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/uapi/drm/drm_fourcc.h drm_fourcc.h>.+-- However, @VK_EXT_image_drm_format_modifier@ uses+-- 'Vulkan.Core10.Enums.Format.Format' instead of DRM formats. The+-- application must convert between 'Vulkan.Core10.Enums.Format.Format' and+-- DRM format when it sends or receives a DRM format to or from an external+-- API.+--+-- The mapping from 'Vulkan.Core10.Enums.Format.Format' to DRM format is+-- lossy. Therefore, when receiving a DRM format from an external API,+-- often the application must use information from the external API to+-- accurately map the DRM format to a 'Vulkan.Core10.Enums.Format.Format'.+-- For example, DRM formats do not distinguish between RGB and sRGB (as of+-- 2018-03-28); external information is required to identify the image’s+-- colorspace.+--+-- The mapping between 'Vulkan.Core10.Enums.Format.Format' and DRM format+-- is also incomplete. For some DRM formats there exist no corresponding+-- Vulkan format, and for some Vulkan formats there exist no corresponding+-- DRM format.+--+-- == Usage Patterns+--+-- Three primary usage patterns are intended for this extension:+--+-- - __Negotiation.__ The application negotiates with /modifier/-aware,+-- external components to determine sets of image creation parameters+-- supported among all components.+--+-- In the Linux ecosystem, the negotiation usually assumes the image is+-- a 2D, single-sampled, non-mipmapped, non-array image; this extension+-- permits that assumption but does not require it. The result of the+-- negotiation usually resembles a set of tuples such as /(drmFormat,+-- drmFormatModifier)/, where each participating component supports all+-- tuples in the set.+--+-- Many details of this negotiation—such as the protocol used during+-- negotiation, the set of image creation parameters expressable in the+-- protocol, and how the protocol chooses which process and which API+-- will create the image—are outside the scope of this specification.+--+-- In this extension,+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.getPhysicalDeviceFormatProperties2'+-- with 'DrmFormatModifierPropertiesListEXT' serves a primary role+-- during the negotiation, and+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.getPhysicalDeviceImageFormatProperties2'+-- with 'PhysicalDeviceImageDrmFormatModifierInfoEXT' serves a+-- secondary role.+--+-- - __Import.__ The application imports an image with a /modifier/.+--+-- In this pattern, the application receives from an external source+-- the image’s memory and its creation parameters, which are often the+-- result of the negotiation described above. Some image creation+-- parameters are implicitly defined by the external source; for+-- example, 'Vulkan.Core10.Enums.ImageType.IMAGE_TYPE_2D' is often+-- assumed. Some image creation parameters are usually explicit, such+-- as the image’s @format@, @drmFormatModifier@, and @extent@; and each+-- plane’s @offset@ and @rowPitch@.+--+-- Before creating the image, the application first verifies that the+-- physical device supports the received creation parameters by+-- querying+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.getPhysicalDeviceFormatProperties2'+-- with 'DrmFormatModifierPropertiesListEXT' and+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.getPhysicalDeviceImageFormatProperties2'+-- with 'PhysicalDeviceImageDrmFormatModifierInfoEXT'. Then the+-- application creates the image by chaining+-- 'ImageDrmFormatModifierExplicitCreateInfoEXT' and+-- 'Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryImageCreateInfo'+-- onto 'Vulkan.Core10.Image.ImageCreateInfo'.+--+-- - __Export.__ The application creates an image and allocates its+-- memory. Then the application exports to /modifier/-aware consumers+-- the image’s memory handles; its creation parameters; its /modifier/;+-- and the <VkSubresourceLayout.html offset>,+-- <VkSubresourceLayout.html size>, and+-- <VkSubresourceLayout.html rowPitch> of each /memory plane/.+--+-- In this pattern, the Vulkan device is the authority for the image;+-- it is the allocator of the image’s memory and the decider of the+-- image’s creation parameters. When choosing the image’s creation+-- parameters, the application usually chooses a tuple /(format,+-- drmFormatModifier)/ from the result of the negotiation described+-- above. The negotiation’s result often contains multiple tuples that+-- share the same format but differ in their /modifier/. In this case,+-- the application should defer the choice of the image’s /modifier/ to+-- the Vulkan implementation by providing all such /modifiers/ to+-- 'ImageDrmFormatModifierListCreateInfoEXT'::@pDrmFormatModifiers@;+-- and the implementation should choose from @pDrmFormatModifiers@ the+-- optimal /modifier/ in consideration with the other image parameters.+--+-- The application creates the image by chaining+-- 'ImageDrmFormatModifierListCreateInfoEXT' and+-- 'Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryImageCreateInfo'+-- onto 'Vulkan.Core10.Image.ImageCreateInfo'. The protocol and APIs by+-- which the application will share the image with external consumers+-- will likely determine the value of+-- 'Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryImageCreateInfo'::@handleTypes@.+-- The implementation chooses for the image an optimal /modifier/ from+-- 'ImageDrmFormatModifierListCreateInfoEXT'::@pDrmFormatModifiers@.+-- The application then queries the implementation-chosen /modifier/+-- with 'getImageDrmFormatModifierPropertiesEXT', and queries the+-- memory layout of each plane with+-- 'Vulkan.Core10.Image.getImageSubresourceLayout'.+--+-- The application then allocates the image’s memory with+-- 'Vulkan.Core10.Memory.MemoryAllocateInfo', adding chained extending+-- structures for external memory; binds it to the image; and exports+-- the memory, for example, with+-- 'Vulkan.Extensions.VK_KHR_external_memory_fd.getMemoryFdKHR'.+--+-- Finally, the application sends the image’s creation parameters, its+-- /modifier/, its per-plane memory layout, and the exported memory+-- handle to the external consumers. The details of how the application+-- transmits this information to external consumers is outside the+-- scope of this specification.+--+-- == Prior Art+--+-- Extension+-- @EGL_EXT_image_dma_buf_import@<VK_EXT_image_drm_format_modifier-fn1.html 1>^+-- introduced the ability to create an @EGLImage@ by importing for each+-- plane a dma_buf, offset, and row pitch.+--+-- Later, extension+-- @EGL_EXT_image_dma_buf_import_modifiers@<VK_EXT_image_drm_format_modifier-fn2.html 2>^+-- introduced the ability to query which combination of formats and+-- /modifiers/ the implementation supports and to specify /modifiers/+-- during creation of the @EGLImage@.+--+-- Extension+-- @EGL_MESA_image_dma_buf_export@<VK_EXT_image_drm_format_modifier-fn3.html 3>^+-- is the inverse of @EGL_EXT_image_dma_buf_import_modifiers@.+--+-- The Linux kernel modesetting API (KMS), when configuring the display’s+-- framebuffer with @struct+-- drm_mode_fb_cmd2@<VK_EXT_image_drm_format_modifier-fn4.html 4>^, allows+-- one to specify the frambuffer’s /modifier/ as well as a per-plane memory+-- handle, offset, and row pitch.+--+-- GBM, a graphics buffer manager for Linux, allows creation of a @gbm_bo@+-- (that is, a graphics /buffer object/) by importing data similar to that+-- in+-- @EGL_EXT_image_dma_buf_import_modifiers@<VK_EXT_image_drm_format_modifier-fn1.html 1>^;+-- and symmetrically allows exporting the same data from the @gbm_bo@. See+-- the references to /modifier/ and /plane/ in+-- @gbm.h@<VK_EXT_image_drm_format_modifier-fn5.html 5>^.+--+-- == New Commands+--+-- - 'getImageDrmFormatModifierPropertiesEXT'+--+-- == New Structures+--+-- - 'DrmFormatModifierPropertiesEXT'+--+-- - 'ImageDrmFormatModifierPropertiesEXT'+--+-- - Extending+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.FormatProperties2':+--+-- - 'DrmFormatModifierPropertiesListEXT'+--+-- - Extending 'Vulkan.Core10.Image.ImageCreateInfo':+--+-- - 'ImageDrmFormatModifierExplicitCreateInfoEXT'+--+-- - 'ImageDrmFormatModifierListCreateInfoEXT'+--+-- - Extending+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceImageFormatInfo2':+--+-- - 'PhysicalDeviceImageDrmFormatModifierInfoEXT'+--+-- == New Enum Constants+--+-- - 'EXT_IMAGE_DRM_FORMAT_MODIFIER_EXTENSION_NAME'+--+-- - 'EXT_IMAGE_DRM_FORMAT_MODIFIER_SPEC_VERSION'+--+-- - Extending+-- 'Vulkan.Core10.Enums.ImageAspectFlagBits.ImageAspectFlagBits':+--+-- - 'Vulkan.Core10.Enums.ImageAspectFlagBits.IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT'+--+-- - 'Vulkan.Core10.Enums.ImageAspectFlagBits.IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT'+--+-- - 'Vulkan.Core10.Enums.ImageAspectFlagBits.IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT'+--+-- - 'Vulkan.Core10.Enums.ImageAspectFlagBits.IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT'+--+-- - Extending 'Vulkan.Core10.Enums.ImageTiling.ImageTiling':+--+-- - 'Vulkan.Core10.Enums.ImageTiling.IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT'+--+-- - Extending 'Vulkan.Core10.Enums.Result.Result':+--+-- - 'Vulkan.Core10.Enums.Result.ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT'+--+-- - Extending 'Vulkan.Core10.Enums.StructureType.StructureType':+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT'+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT'+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT'+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT'+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT'+--+-- == Issues+--+-- 1) Should this extension define a single DRM format modifier per+-- 'Vulkan.Core10.Handles.Image'? Or define one per plane?+--+-- ++--+-- __RESOLVED__: There exists a single DRM format modifier per+-- 'Vulkan.Core10.Handles.Image'.+--+-- __DISCUSSION__: Prior art, such as+-- @EGL_EXT_image_dma_buf_import_modifiers@<VK_EXT_image_drm_format_modifier-fn2.html 2>^,+-- @struct drm_mode_fb_cmd2@<VK_EXT_image_drm_format_modifier-fn4.html 4>^,+-- and @struct+-- gbm_import_fd_modifier_data@<VK_EXT_image_drm_format_modifier-fn5.html 5>^,+-- allows defining one /modifier/ per plane. However, developers of the GBM+-- and kernel APIs concede it was a mistake. Beginning in Linux 4.10, the+-- kernel requires that the application provide the same DRM format+-- /modifier/ for each plane. (See Linux commit+-- <https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=bae781b259269590109e8a4a8227331362b88212 bae781b259269590109e8a4a8227331362b88212>).+-- And GBM provides an entry point, @gbm_bo_get_modifier@, for querying the+-- /modifier/ of the image but does not provide one to query the modifier+-- of individual planes.+--+-- 2) When creating an image with+-- 'ImageDrmFormatModifierExplicitCreateInfoEXT', which is typically used+-- when /importing/ an image, should the application explicitly provide the+-- size of each plane?+--+-- ++--+-- __RESOLVED__: No. The application /must/ not provide the size. To+-- enforce this, the API requires that+-- 'ImageDrmFormatModifierExplicitCreateInfoEXT'::@pPlaneLayouts->size@+-- /must/ be 0.+--+-- __DISCUSSION__: Prior art, such as+-- @EGL_EXT_image_dma_buf_import_modifiers@<VK_EXT_image_drm_format_modifier-fn2.html 2>^,+-- @struct drm_mode_fb_cmd2@<VK_EXT_image_drm_format_modifier-fn4.html 4>^,+-- and @struct+-- gbm_import_fd_modifier_data@<VK_EXT_image_drm_format_modifier-fn5.html 5>^,+-- omits from the API the size of each plane. Instead, the APIs infer each+-- plane’s size from the import parameters, which include the image’s pixel+-- format and a dma_buf, offset, and row pitch for each plane.+--+-- However, Vulkan differs from EGL and GBM with regards to image creation+-- in the following ways:+--+-- - __Undedicated allocation by default.__ When importing or exporting a+-- set of dma_bufs as an @EGLImage@ or @gbm_bo@, common practice+-- mandates that each dma_buf’s memory be dedicated (in the sense of+-- @VK_KHR_dedicated_allocation@) to the image (though not necessarily+-- dedicated to a single plane). In particular, neither the GBM+-- documentation nor the EGL extension specifications explicitly state+-- this requirement, but in light of common practice this is likely due+-- to under-specification rather than intentional omission. In+-- contrast, @VK_EXT_image_drm_format_modifier@ permits, but does not+-- require, the implementation to require dedicated allocations for+-- images created with+-- 'Vulkan.Core10.Enums.ImageTiling.IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT'.+--+-- - __Separation of image creation and memory allocation.__ When+-- importing a set of dma_bufs as an @EGLImage@ or @gbm_bo@, EGL and+-- GBM create the image resource and bind it to memory (the dma_bufs)+-- simultaneously. This allows EGL and GBM to query each dma_buf’s size+-- during image creation. In Vulkan, image creation and memory+-- allocation are independent unless a dedicated allocation is used (as+-- in @VK_KHR_dedicated_allocation@). Therefore, without requiring+-- dedicated allocation, Vulkan cannot query the size of each dma_buf+-- (or other external handle) when calculating the image’s memory+-- layout. Even if dedication allocation were required, Vulkan cannot+-- calculate the image’s memory layout until after the image is bound+-- to its dma_ufs.+--+-- The above differences complicate the potential inference of plane size+-- in Vulkan. Consider the following problematic cases:+--+-- - __Padding.__ Some plane of the image may require+-- implementation-dependent padding.+--+-- - __Metadata.__ For some /modifiers/, the image may have a metadata+-- plane which requires a non-trivial calculation to determine its+-- size.+--+-- - __Mipmapped, array, and 3D images.__ The implementation may support+-- 'Vulkan.Core10.Enums.ImageTiling.IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT'+-- for images whose @mipLevels@, @arrayLayers@, or @depth@ is greater+-- than 1. For such images with certain /modifiers/, the calculation of+-- each plane’s size may be non-trivial.+--+-- However, an application-provided plane size solves none of the above+-- problems.+--+-- For simplicity, consider an external image with a single memory plane.+-- The implementation is obviously capable calculating the image’s size+-- when its tiling is+-- 'Vulkan.Core10.Enums.ImageTiling.IMAGE_TILING_OPTIMAL'. Likewise, any+-- reasonable implementation is capable of calculating the image’s size+-- when its tiling uses a supported /modifier/.+--+-- Suppose that the external image’s size is smaller than the+-- implementation-calculated size. If the application provided the external+-- image’s size to 'Vulkan.Core10.Image.createImage', the implementation+-- would observe the mismatched size and recognize its inability to+-- comprehend the external image’s layout (unless the implementation used+-- the application-provided size to select a refinement of the tiling+-- layout indicated by the /modifier/, which is strongly discouraged). The+-- implementation would observe the conflict, and reject image creation+-- with+-- 'Vulkan.Core10.Enums.Result.ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT'.+-- On the other hand, if the application did not provide the external+-- image’s size to 'Vulkan.Core10.Image.createImage', then the application+-- would observe after calling+-- 'Vulkan.Core10.MemoryManagement.getImageMemoryRequirements' that the+-- external image’s size is less than the size required by the+-- implementation. The application would observe the conflict and refuse to+-- bind the 'Vulkan.Core10.Handles.Image' to the external memory. In both+-- cases, the result is explicit failure.+--+-- Suppose that the external image’s size is larger than the+-- implementation-calculated size. If the application provided the external+-- image’s size to 'Vulkan.Core10.Image.createImage', for reasons similar+-- to above the implementation would observe the mismatched size and+-- recognize its inability to comprehend the image data residing in the+-- extra size. The implementation, however, must assume that image data+-- resides in the entire size provided by the application. The+-- implementation would observe the conflict and reject image creation with+-- 'Vulkan.Core10.Enums.Result.ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT'.+-- On the other hand, if the application did not provide the external+-- image’s size to 'Vulkan.Core10.Image.createImage', then the application+-- would observe after calling+-- 'Vulkan.Core10.MemoryManagement.getImageMemoryRequirements' that the+-- external image’s size is larger than the implementation-usable size. The+-- application would observe the conflict and refuse to bind the+-- 'Vulkan.Core10.Handles.Image' to the external memory. In both cases, the+-- result is explicit failure.+--+-- Therefore, an application-provided size provides no benefit, and this+-- extension should not require it. This decision renders+-- 'Vulkan.Core10.Image.SubresourceLayout'::@size@ an unused field during+-- image creation, and thus introduces a risk that implementations may+-- require applications to submit sideband creation parameters in the+-- unused field. To prevent implementations from relying on sideband data,+-- this extension /requires/ the application to set @size@ to 0.+--+-- === References+--+-- 1. #VK_EXT_image_drm_format_modifier-fn1#+-- <https://www.khronos.org/registry/EGL/extensions/EXT/EGL_EXT_image_dma_buf_import.txt EGL_EXT_image_dma_buf_import>+--+-- 2. #VK_EXT_image_drm_format_modifier-fn2#+-- <https://www.khronos.org/registry/EGL/extensions/EXT/EGL_EXT_image_dma_buf_import_modifiers.txt EGL_EXT_image_dma_buf_import_modifiers>+--+-- 3. #VK_EXT_image_drm_format_modifier-fn3#+-- <https://www.khronos.org/registry/EGL/extensions/MESA/EGL_MESA_image_dma_buf_export.txt EGL_MESA_image_dma_buf_export>+--+-- 4. #VK_EXT_image_drm_format_modifier-fn4#+-- <https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/include/uapi/drm/drm_mode.h?id=refs/tags/v4.10#n392 struct+-- drm_mode_fb_cmd2>+--+-- 5. #VK_EXT_image_drm_format_modifier-fn5#+-- <https://cgit.freedesktop.org/mesa/mesa/tree/src/gbm/main/gbm.h?id=refs/tags/mesa-18.0.0-rc1 gbm.h>+--+-- === Version History+--+-- - Revision 1, 2018-08-29 (Chad Versace)+--+-- - First stable revision+--+-- = See Also+--+-- 'DrmFormatModifierPropertiesEXT', 'DrmFormatModifierPropertiesListEXT',+-- 'ImageDrmFormatModifierExplicitCreateInfoEXT',+-- 'ImageDrmFormatModifierListCreateInfoEXT',+-- 'ImageDrmFormatModifierPropertiesEXT',+-- 'PhysicalDeviceImageDrmFormatModifierInfoEXT',+-- 'getImageDrmFormatModifierPropertiesEXT'+--+-- = Document Notes+--+-- For more information, see the+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VK_EXT_image_drm_format_modifier Vulkan Specification>+--+-- This page is a generated document. Fixes and changes should be made to+-- the generator scripts, not directly. module Vulkan.Extensions.VK_EXT_image_drm_format_modifier ( DrmFormatModifierPropertiesEXT , DrmFormatModifierPropertiesListEXT , ImageDrmFormatModifierExplicitCreateInfoEXT
src/Vulkan/Extensions/VK_EXT_line_rasterization.hs view
@@ -233,12 +233,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_EXT_sample_locations.hs view
@@ -302,12 +302,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_EXT_transform_feedback.hs view
@@ -429,12 +429,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -590,12 +590,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -752,12 +752,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -996,12 +996,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1126,12 +1126,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1653,16 +1653,36 @@ -- /must/ be the same as the current subpass color and\/or -- depth\/stencil attachments ----- - #VUID-vkCmdDrawIndirectByteCountEXT-pStrides-04884# If the bound+-- - #VUID-vkCmdDrawIndirectByteCountEXT-None-04912# If the bound+-- graphics pipeline was created with both the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- and+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic states enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+--+-- - #VUID-vkCmdDrawIndirectByteCountEXT-pStrides-04913# If the bound -- graphics pipeline was created with the -- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic state enabled, but not the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT' -- dynamic state enabled, then -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ have been called in the current command buffer prior to this--- drawing command, and the @pStrides@ parameter of+-- draw command, and the @pStrides@ parameter of -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ not be @NULL@ --+-- - #VUID-vkCmdDrawIndirectByteCountEXT-None-04914# If the bound+-- graphics pipeline state was created with the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- dynamic state enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+-- -- - #VUID-vkCmdDrawIndirectByteCountEXT-None-04007# All vertex input -- bindings accessed via vertex input variables declared in the vertex -- shader entry point’s interface /must/ have either valid or@@ -1743,12 +1763,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | Graphics |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_EXT_validation_cache.hs view
@@ -555,7 +555,7 @@ -- -- Note ----- The details of the merge operation are implementation dependent, but+-- The details of the merge operation are implementation-dependent, but -- implementations /should/ merge the contents of the specified validation -- caches and prune duplicate entries. --
src/Vulkan/Extensions/VK_EXT_validation_features.hs view
@@ -15,7 +15,7 @@ -- 248 -- -- [__Revision__]--- 4+-- 5 -- -- [__Extension and Version Dependencies__] --@@ -110,6 +110,10 @@ -- -- - Add Synchronization Validation enable --+-- - Revision 5, 2021-05-18 (Tony Barbour)+--+-- - Add Shader Validation Cache disable+-- -- = See Also -- -- 'ValidationFeatureDisableEXT', 'ValidationFeatureEnableEXT',@@ -137,6 +141,7 @@ , VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT , VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT , VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT+ , VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT , .. ) , EXT_VALIDATION_FEATURES_SPEC_VERSION@@ -354,35 +359,41 @@ -- | 'VALIDATION_FEATURE_DISABLE_ALL_EXT' specifies that all validation -- checks are disabled.-pattern VALIDATION_FEATURE_DISABLE_ALL_EXT = ValidationFeatureDisableEXT 0+pattern VALIDATION_FEATURE_DISABLE_ALL_EXT = ValidationFeatureDisableEXT 0 -- | 'VALIDATION_FEATURE_DISABLE_SHADERS_EXT' specifies that shader -- validation is disabled. This feature is enabled by default.-pattern VALIDATION_FEATURE_DISABLE_SHADERS_EXT = ValidationFeatureDisableEXT 1+pattern VALIDATION_FEATURE_DISABLE_SHADERS_EXT = ValidationFeatureDisableEXT 1 -- | 'VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT' specifies that thread -- safety validation is disabled. This feature is enabled by default.-pattern VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT = ValidationFeatureDisableEXT 2+pattern VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT = ValidationFeatureDisableEXT 2 -- | 'VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT' specifies that stateless -- parameter validation is disabled. This feature is enabled by default.-pattern VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT = ValidationFeatureDisableEXT 3+pattern VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT = ValidationFeatureDisableEXT 3 -- | 'VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT' specifies that object -- lifetime validation is disabled. This feature is enabled by default.-pattern VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT = ValidationFeatureDisableEXT 4+pattern VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT = ValidationFeatureDisableEXT 4 -- | 'VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT' specifies that core -- validation checks are disabled. This feature is enabled by default. If -- this feature is disabled, the shader validation and GPU-assisted -- validation features are also disabled.-pattern VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT = ValidationFeatureDisableEXT 5+pattern VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT = ValidationFeatureDisableEXT 5 -- | 'VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT' specifies that -- protection against duplicate non-dispatchable object handles is -- disabled. This feature is enabled by default.-pattern VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT = ValidationFeatureDisableEXT 6+pattern VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT = ValidationFeatureDisableEXT 6+-- | 'VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT' specifies that+-- there will be no caching of shader validation results and every shader+-- will be validated on every application execution. Shader validation+-- caching is enabled by default.+pattern VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT = ValidationFeatureDisableEXT 7 {-# complete VALIDATION_FEATURE_DISABLE_ALL_EXT, VALIDATION_FEATURE_DISABLE_SHADERS_EXT, VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT, VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT, VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT, VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT,- VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT :: ValidationFeatureDisableEXT #-}+ VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT,+ VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT :: ValidationFeatureDisableEXT #-} conNameValidationFeatureDisableEXT :: String conNameValidationFeatureDisableEXT = "ValidationFeatureDisableEXT"@@ -392,13 +403,14 @@ showTableValidationFeatureDisableEXT :: [(ValidationFeatureDisableEXT, String)] showTableValidationFeatureDisableEXT =- [ (VALIDATION_FEATURE_DISABLE_ALL_EXT , "ALL_EXT")- , (VALIDATION_FEATURE_DISABLE_SHADERS_EXT , "SHADERS_EXT")- , (VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT , "THREAD_SAFETY_EXT")- , (VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT , "API_PARAMETERS_EXT")- , (VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT, "OBJECT_LIFETIMES_EXT")- , (VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT , "CORE_CHECKS_EXT")- , (VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT , "UNIQUE_HANDLES_EXT")+ [ (VALIDATION_FEATURE_DISABLE_ALL_EXT , "ALL_EXT")+ , (VALIDATION_FEATURE_DISABLE_SHADERS_EXT , "SHADERS_EXT")+ , (VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT , "THREAD_SAFETY_EXT")+ , (VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT , "API_PARAMETERS_EXT")+ , (VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT , "OBJECT_LIFETIMES_EXT")+ , (VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT , "CORE_CHECKS_EXT")+ , (VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT , "UNIQUE_HANDLES_EXT")+ , (VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT, "SHADER_VALIDATION_CACHE_EXT") ] instance Show ValidationFeatureDisableEXT where@@ -415,11 +427,11 @@ ValidationFeatureDisableEXT -type EXT_VALIDATION_FEATURES_SPEC_VERSION = 4+type EXT_VALIDATION_FEATURES_SPEC_VERSION = 5 -- No documentation found for TopLevel "VK_EXT_VALIDATION_FEATURES_SPEC_VERSION" pattern EXT_VALIDATION_FEATURES_SPEC_VERSION :: forall a . Integral a => a-pattern EXT_VALIDATION_FEATURES_SPEC_VERSION = 4+pattern EXT_VALIDATION_FEATURES_SPEC_VERSION = 5 type EXT_VALIDATION_FEATURES_EXTENSION_NAME = "VK_EXT_validation_features"
src/Vulkan/Extensions/VK_EXT_validation_features.hs-boot view
@@ -15,7 +15,7 @@ -- 248 -- -- [__Revision__]--- 4+-- 5 -- -- [__Extension and Version Dependencies__] --@@ -109,6 +109,10 @@ -- - Revision 4, 2020-07-29 (John Zulauf) -- -- - Add Synchronization Validation enable+--+-- - Revision 5, 2021-05-18 (Tony Barbour)+--+-- - Add Shader Validation Cache disable -- -- = See Also --
src/Vulkan/Extensions/VK_EXT_vertex_attribute_divisor.hs view
@@ -212,8 +212,8 @@ -- -- = Description ----- If this structure is not used to define a divisor value for an attribute--- then the divisor has a logical default value of 1.+-- If this structure is not used to define a divisor value for an+-- attribute, then the divisor has a logical default value of 1. -- -- == Valid Usage --@@ -250,7 +250,7 @@ -- value of the vertex attribute when instanced rendering is enabled. For -- example, if the divisor is N, the same vertex attribute will be applied -- to N successive instances before moving on to the next vertex attribute.- -- The maximum value of divisor is implementation dependent and can be+ -- The maximum value of @divisor@ is implementation-dependent and can be -- queried using -- 'PhysicalDeviceVertexAttributeDivisorPropertiesEXT'::@maxVertexAttribDivisor@. -- A value of @0@ /can/ be used for the divisor if the
src/Vulkan/Extensions/VK_EXT_vertex_input_dynamic_state.hs view
@@ -251,12 +251,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -418,8 +418,8 @@ -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#features-vertexAttributeInstanceRateDivisor vertexAttributeInstanceRateDivisor> -- feature is enabled. For example, if the divisor is N, the same vertex -- attribute will be applied to N successive instances before moving on to- -- the next vertex attribute. The maximum value of divisor is- -- implementation dependent and can be queried using+ -- the next vertex attribute. The maximum value of @divisor@ is+ -- implementation-dependent and can be queried using -- 'Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PhysicalDeviceVertexAttributeDivisorPropertiesEXT'::@maxVertexAttribDivisor@. -- A value of @0@ /can/ be used for the divisor if the -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#features-vertexAttributeInstanceRateZeroDivisor vertexAttributeInstanceRateZeroDivisor>
src/Vulkan/Extensions/VK_INTEL_performance_query.hs view
@@ -575,13 +575,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- | | | Transfer | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- | | | Transfer |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- == Return Codes --@@ -654,13 +654,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- | | | Transfer | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- | | | Transfer |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- == Return Codes --@@ -741,13 +741,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- | | | Transfer | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- | | | Transfer |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- == Return Codes --@@ -933,11 +933,11 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | - | - | Any | - |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | - | - | Any |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- == Return Codes --
src/Vulkan/Extensions/VK_KHR_acceleration_structure.hs view
@@ -1514,12 +1514,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Compute | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Compute |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1767,12 +1767,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Compute | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Compute |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -2000,12 +2000,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Compute | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Compute |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -2245,12 +2245,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Compute | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Compute |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -2870,8 +2870,8 @@ -- 'AccelerationStructureGeometryKHR' structure referred to by its -- @pGeometries@ or @ppGeometries@ members, if @geometryType@ is -- 'GEOMETRY_TYPE_TRIANGLES_KHR', if its--- @geometry.triangles.transformData@ member was NULL when--- @srcAccelerationStructure@ was last built, then it /must/ be NULL+-- @geometry.triangles.transformData@ address was @NULL@ when+-- @srcAccelerationStructure@ was last built, then it /must/ be @NULL@ -- -- - #VUID-vkCmdBuildAccelerationStructuresKHR-pInfos-03767# For each -- element of @pInfos@, if its @mode@ member is@@ -2879,8 +2879,9 @@ -- 'AccelerationStructureGeometryKHR' structure referred to by its -- @pGeometries@ or @ppGeometries@ members, if @geometryType@ is -- 'GEOMETRY_TYPE_TRIANGLES_KHR', if its--- @geometry.triangles.transformData@ member was not NULL when--- @srcAccelerationStructure@ was last built, then it may not be NULL+-- @geometry.triangles.transformData@ address was not @NULL@ when+-- @srcAccelerationStructure@ was last built, then it /must/ not be+-- @NULL@ -- -- - #VUID-vkCmdBuildAccelerationStructuresKHR-pInfos-03768# For each -- element of @pInfos@, if its @mode@ member is@@ -3166,12 +3167,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Compute | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Compute |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -3434,8 +3435,8 @@ -- 'AccelerationStructureGeometryKHR' structure referred to by its -- @pGeometries@ or @ppGeometries@ members, if @geometryType@ is -- 'GEOMETRY_TYPE_TRIANGLES_KHR', if its--- @geometry.triangles.transformData@ member was NULL when--- @srcAccelerationStructure@ was last built, then it /must/ be NULL+-- @geometry.triangles.transformData@ address was @NULL@ when+-- @srcAccelerationStructure@ was last built, then it /must/ be @NULL@ -- -- - #VUID-vkCmdBuildAccelerationStructuresIndirectKHR-pInfos-03767# For -- each element of @pInfos@, if its @mode@ member is@@ -3443,8 +3444,9 @@ -- 'AccelerationStructureGeometryKHR' structure referred to by its -- @pGeometries@ or @ppGeometries@ members, if @geometryType@ is -- 'GEOMETRY_TYPE_TRIANGLES_KHR', if its--- @geometry.triangles.transformData@ member was not NULL when--- @srcAccelerationStructure@ was last built, then it may not be NULL+-- @geometry.triangles.transformData@ address was not @NULL@ when+-- @srcAccelerationStructure@ was last built, then it /must/ not be+-- @NULL@ -- -- - #VUID-vkCmdBuildAccelerationStructuresIndirectKHR-pInfos-03768# For -- each element of @pInfos@, if its @mode@ member is@@ -3792,12 +3794,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Compute | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Compute |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -4078,8 +4080,8 @@ -- 'AccelerationStructureGeometryKHR' structure referred to by its -- @pGeometries@ or @ppGeometries@ members, if @geometryType@ is -- 'GEOMETRY_TYPE_TRIANGLES_KHR', if its--- @geometry.triangles.transformData@ member was NULL when--- @srcAccelerationStructure@ was last built, then it /must/ be NULL+-- @geometry.triangles.transformData@ address was @NULL@ when+-- @srcAccelerationStructure@ was last built, then it /must/ be @NULL@ -- -- - #VUID-vkBuildAccelerationStructuresKHR-pInfos-03767# For each -- element of @pInfos@, if its @mode@ member is@@ -4087,8 +4089,9 @@ -- 'AccelerationStructureGeometryKHR' structure referred to by its -- @pGeometries@ or @ppGeometries@ members, if @geometryType@ is -- 'GEOMETRY_TYPE_TRIANGLES_KHR', if its--- @geometry.triangles.transformData@ member was not NULL when--- @srcAccelerationStructure@ was last built, then it may not be NULL+-- @geometry.triangles.transformData@ address was not @NULL@ when+-- @srcAccelerationStructure@ was last built, then it /must/ not be+-- @NULL@ -- -- - #VUID-vkBuildAccelerationStructuresKHR-pInfos-03768# For each -- element of @pInfos@, if its @mode@ member is
src/Vulkan/Extensions/VK_KHR_copy_commands2.hs view
@@ -318,13 +318,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Transfer | Transfer |--- | Secondary | | Graphics | |--- | | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Transfer |+-- | Secondary | | Graphics |+-- | | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -409,13 +409,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Transfer | Transfer |--- | Secondary | | Graphics | |--- | | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Transfer |+-- | Secondary | | Graphics |+-- | | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -500,12 +500,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Graphics | Transfer |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -592,13 +592,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Transfer | Transfer |--- | Secondary | | Graphics | |--- | | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Transfer |+-- | Secondary | | Graphics |+-- | | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -685,13 +685,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Transfer | Transfer |--- | Secondary | | Graphics | |--- | | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Transfer |+-- | Secondary | | Graphics |+-- | | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -776,12 +776,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Graphics | Transfer |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_KHR_fragment_shading_rate.hs view
@@ -397,12 +397,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_KHR_pipeline_executable_properties.hs view
@@ -508,8 +508,8 @@ -- 'Vulkan.Core10.Enums.Result.SUCCESS', to indicate that not all the -- available representations were returned. ----- While the details of the internal representations remain implementation--- dependent, the implementation /should/ order the internal+-- While the details of the internal representations remain+-- implementation-dependent, the implementation /should/ order the internal -- representations in the order in which they occur in the compiled -- pipeline with the final shader assembly (if any) last. --
src/Vulkan/Extensions/VK_KHR_push_descriptor.hs view
@@ -304,12 +304,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -413,12 +413,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- __API example__ --
src/Vulkan/Extensions/VK_KHR_ray_tracing_pipeline.hs view
@@ -1218,7 +1218,7 @@ -- tracing pipeline was created with @flags@ that included -- 'Vulkan.Core10.Enums.PipelineCreateFlagBits.PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR', -- the shader group handle identified by @pMissShaderBindingTable@--- /must/ contain a valid miss shader+-- /must/ not be set to zero -- -- - #VUID-vkCmdTraceRaysKHR-flags-03512# If the currently bound ray -- tracing pipeline was created with @flags@ that included@@ -1242,15 +1242,15 @@ -- to zero -- -- - #VUID-vkCmdTraceRaysKHR-pHitShaderBindingTable-04735# Any non-zero--- hit group entries in @pHitShaderBindingTable@ accessed by this call--- from a geometry with a @geometryType@ of+-- hit shader group entries in @pHitShaderBindingTable@ accessed by+-- this call from a geometry with a @geometryType@ of -- 'Vulkan.Extensions.VK_KHR_acceleration_structure.GEOMETRY_TYPE_TRIANGLES_KHR' -- /must/ have been created with -- 'RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR' -- -- - #VUID-vkCmdTraceRaysKHR-pHitShaderBindingTable-04736# Any non-zero--- hit group entries in @pHitShaderBindingTable@ accessed by this call--- from a geometry with a @geometryType@ of+-- hit shader group entries in @pHitShaderBindingTable@ accessed by+-- this call from a geometry with a @geometryType@ of -- 'Vulkan.Extensions.VK_KHR_acceleration_structure.GEOMETRY_TYPE_AABBS_KHR' -- /must/ have been created with -- 'RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR'@@ -1323,12 +1323,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Compute | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Compute |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -2096,7 +2096,7 @@ -- ray tracing pipeline was created with @flags@ that included -- 'Vulkan.Core10.Enums.PipelineCreateFlagBits.PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR', -- the shader group handle identified by @pMissShaderBindingTable@--- /must/ contain a valid miss shader+-- /must/ not be set to zero -- -- - #VUID-vkCmdTraceRaysIndirectKHR-flags-03512# If the currently bound -- ray tracing pipeline was created with @flags@ that included@@ -2120,15 +2120,15 @@ -- to zero -- -- - #VUID-vkCmdTraceRaysIndirectKHR-pHitShaderBindingTable-04735# Any--- non-zero hit group entries in @pHitShaderBindingTable@ accessed by--- this call from a geometry with a @geometryType@ of+-- non-zero hit shader group entries in @pHitShaderBindingTable@+-- accessed by this call from a geometry with a @geometryType@ of -- 'Vulkan.Extensions.VK_KHR_acceleration_structure.GEOMETRY_TYPE_TRIANGLES_KHR' -- /must/ have been created with -- 'RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR' -- -- - #VUID-vkCmdTraceRaysIndirectKHR-pHitShaderBindingTable-04736# Any--- non-zero hit group entries in @pHitShaderBindingTable@ accessed by--- this call from a geometry with a @geometryType@ of+-- non-zero hit shader group entries in @pHitShaderBindingTable@+-- accessed by this call from a geometry with a @geometryType@ of -- 'Vulkan.Extensions.VK_KHR_acceleration_structure.GEOMETRY_TYPE_AABBS_KHR' -- /must/ have been created with -- 'RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR'@@ -2204,12 +2204,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Compute | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Compute |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -2370,12 +2370,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Compute | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Compute |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
+ src/Vulkan/Extensions/VK_KHR_shader_subgroup_uniform_control_flow.hs view
@@ -0,0 +1,211 @@+{-# language CPP #-}+-- | = Name+--+-- VK_KHR_shader_subgroup_uniform_control_flow - device extension+--+-- == VK_KHR_shader_subgroup_uniform_control_flow+--+-- [__Name String__]+-- @VK_KHR_shader_subgroup_uniform_control_flow@+--+-- [__Extension Type__]+-- Device extension+--+-- [__Registered Extension Number__]+-- 324+--+-- [__Revision__]+-- 1+--+-- [__Extension and Version Dependencies__]+--+-- - Requires Vulkan 1.1+--+-- [__Contact__]+--+-- - Alan Baker+-- <https://github.com/KhronosGroup/Vulkan-Docs/issues/new?title=VK_KHR_shader_subgroup_uniform_control_flow:%20&body=@alan-baker%20 >+--+-- == Other Extension Metadata+--+-- [__Last Modified Date__]+-- 2020-08-27+--+-- [__IP Status__]+-- No known IP claims.+--+-- [__Interactions and External Dependencies__]+--+-- - Requires SPIR-V 1.3.+--+-- - This extension requires+-- <https://htmlpreview.github.io/?https://github.com/KhronosGroup/SPIRV-Registry/blob/master/extensions/KHR/SPV_KHR_subgroup_uniform_control_flow.html SPV_KHR_subgroup_uniform_control_flow>+--+-- [__Contributors__]+--+-- - Alan Baker, Google+--+-- - Jeff Bolz, NVIDIA+--+-- == Description+--+-- This extension allows the use of the+-- @SPV_KHR_subgroup_uniform_control_flow@ SPIR-V extension in shader+-- modules. @SPV_KHR_subgroup_uniform_control_flow@ provides stronger+-- guarantees that diverged subgroups will reconverge.+--+-- Developers should utilize this extension if they use subgroup operations+-- to reduce the work performed by a uniform subgroup. This extension will+-- guarantee that uniform subgroup will reconverge in the same manner as+-- invocation groups (see “Uniform Control Flow” in the+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#spirv-spec Khronos SPIR-V Specification>).+--+-- == New Structures+--+-- - Extending+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceFeatures2',+-- 'Vulkan.Core10.Device.DeviceCreateInfo':+--+-- - 'PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR'+--+-- == New Enum Constants+--+-- - 'KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME'+--+-- - 'KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION'+--+-- - Extending 'Vulkan.Core10.Enums.StructureType.StructureType':+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR'+--+-- == Version History+--+-- - Revision 1, 2020-08-27 (Alan Baker)+--+-- - Internal draft version+--+-- = See Also+--+-- 'PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR'+--+-- = Document Notes+--+-- For more information, see the+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VK_KHR_shader_subgroup_uniform_control_flow Vulkan Specification>+--+-- This page is a generated document. Fixes and changes should be made to+-- the generator scripts, not directly.+module Vulkan.Extensions.VK_KHR_shader_subgroup_uniform_control_flow ( PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(..)+ , KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION+ , pattern KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION+ , KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME+ , pattern KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME+ ) where++import Foreign.Marshal.Alloc (allocaBytesAligned)+import Foreign.Ptr (nullPtr)+import Foreign.Ptr (plusPtr)+import Vulkan.CStruct (FromCStruct)+import Vulkan.CStruct (FromCStruct(..))+import Vulkan.CStruct (ToCStruct)+import Vulkan.CStruct (ToCStruct(..))+import Vulkan.Zero (Zero(..))+import Data.String (IsString)+import Data.Typeable (Typeable)+import Foreign.Storable (Storable)+import Foreign.Storable (Storable(peek))+import Foreign.Storable (Storable(poke))+import qualified Foreign.Storable (Storable(..))+import GHC.Generics (Generic)+import Foreign.Ptr (Ptr)+import Data.Kind (Type)+import Vulkan.Core10.FundamentalTypes (bool32ToBool)+import Vulkan.Core10.FundamentalTypes (boolToBool32)+import Vulkan.Core10.FundamentalTypes (Bool32)+import Vulkan.Core10.Enums.StructureType (StructureType)+import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR))+-- | VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR - Structure+-- describing support for shader subgroup uniform control flow by an+-- implementation+--+-- = Members+--+-- This structure describes the following feature:+--+-- = Description+--+-- If the+-- 'Vulkan.Extensions.VK_EXT_private_data.PhysicalDevicePrivateDataFeaturesEXT'+-- structure is included in the @pNext@ chain of the+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceFeatures2'+-- structure passed to+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.getPhysicalDeviceFeatures2',+-- it is filled in to indicate whether each corresponding feature is+-- supported.+-- 'Vulkan.Extensions.VK_EXT_private_data.PhysicalDevicePrivateDataFeaturesEXT'+-- /can/ also be used in the @pNext@ chain of+-- 'Vulkan.Core10.Device.DeviceCreateInfo' to selectively enable these+-- features.+--+-- == Valid Usage (Implicit)+--+-- = See Also+--+-- 'Vulkan.Core10.FundamentalTypes.Bool32',+-- 'Vulkan.Core10.Enums.StructureType.StructureType'+data PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR = PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR+ { -- | #features-shaderSubgroupUniformControlFlow#+ -- @shaderSubgroupUniformControlFlow@ specifies whether the implementation+ -- supports the shader execution mode @SubgroupUniformControlFlowKHR@+ shaderSubgroupUniformControlFlow :: Bool }+ deriving (Typeable, Eq)+#if defined(GENERIC_INSTANCES)+deriving instance Generic (PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR)+#endif+deriving instance Show PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR++instance ToCStruct PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR where+ withCStruct x f = allocaBytesAligned 24 8 $ \p -> pokeCStruct p x (f p)+ pokeCStruct p PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR{..} f = do+ poke ((p `plusPtr` 0 :: Ptr StructureType)) (STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR)+ poke ((p `plusPtr` 8 :: Ptr (Ptr ()))) (nullPtr)+ poke ((p `plusPtr` 16 :: Ptr Bool32)) (boolToBool32 (shaderSubgroupUniformControlFlow))+ f+ cStructSize = 24+ cStructAlignment = 8+ pokeZeroCStruct p f = do+ poke ((p `plusPtr` 0 :: Ptr StructureType)) (STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR)+ poke ((p `plusPtr` 8 :: Ptr (Ptr ()))) (nullPtr)+ poke ((p `plusPtr` 16 :: Ptr Bool32)) (boolToBool32 (zero))+ f++instance FromCStruct PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR where+ peekCStruct p = do+ shaderSubgroupUniformControlFlow <- peek @Bool32 ((p `plusPtr` 16 :: Ptr Bool32))+ pure $ PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR+ (bool32ToBool shaderSubgroupUniformControlFlow)++instance Storable PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR where+ sizeOf ~_ = 24+ alignment ~_ = 8+ peek = peekCStruct+ poke ptr poked = pokeCStruct ptr poked (pure ())++instance Zero PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR where+ zero = PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR+ zero+++type KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION = 1++-- No documentation found for TopLevel "VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION"+pattern KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION :: forall a . Integral a => a+pattern KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION = 1+++type KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME = "VK_KHR_shader_subgroup_uniform_control_flow"++-- No documentation found for TopLevel "VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME"+pattern KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME :: forall a . (Eq a, IsString a) => a+pattern KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME = "VK_KHR_shader_subgroup_uniform_control_flow"+
+ src/Vulkan/Extensions/VK_KHR_shader_subgroup_uniform_control_flow.hs-boot view
@@ -0,0 +1,110 @@+{-# language CPP #-}+-- | = Name+--+-- VK_KHR_shader_subgroup_uniform_control_flow - device extension+--+-- == VK_KHR_shader_subgroup_uniform_control_flow+--+-- [__Name String__]+-- @VK_KHR_shader_subgroup_uniform_control_flow@+--+-- [__Extension Type__]+-- Device extension+--+-- [__Registered Extension Number__]+-- 324+--+-- [__Revision__]+-- 1+--+-- [__Extension and Version Dependencies__]+--+-- - Requires Vulkan 1.1+--+-- [__Contact__]+--+-- - Alan Baker+-- <https://github.com/KhronosGroup/Vulkan-Docs/issues/new?title=VK_KHR_shader_subgroup_uniform_control_flow:%20&body=@alan-baker%20 >+--+-- == Other Extension Metadata+--+-- [__Last Modified Date__]+-- 2020-08-27+--+-- [__IP Status__]+-- No known IP claims.+--+-- [__Interactions and External Dependencies__]+--+-- - Requires SPIR-V 1.3.+--+-- - This extension requires+-- <https://htmlpreview.github.io/?https://github.com/KhronosGroup/SPIRV-Registry/blob/master/extensions/KHR/SPV_KHR_subgroup_uniform_control_flow.html SPV_KHR_subgroup_uniform_control_flow>+--+-- [__Contributors__]+--+-- - Alan Baker, Google+--+-- - Jeff Bolz, NVIDIA+--+-- == Description+--+-- This extension allows the use of the+-- @SPV_KHR_subgroup_uniform_control_flow@ SPIR-V extension in shader+-- modules. @SPV_KHR_subgroup_uniform_control_flow@ provides stronger+-- guarantees that diverged subgroups will reconverge.+--+-- Developers should utilize this extension if they use subgroup operations+-- to reduce the work performed by a uniform subgroup. This extension will+-- guarantee that uniform subgroup will reconverge in the same manner as+-- invocation groups (see “Uniform Control Flow” in the+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#spirv-spec Khronos SPIR-V Specification>).+--+-- == New Structures+--+-- - Extending+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceFeatures2',+-- 'Vulkan.Core10.Device.DeviceCreateInfo':+--+-- - 'PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR'+--+-- == New Enum Constants+--+-- - 'KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME'+--+-- - 'KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION'+--+-- - Extending 'Vulkan.Core10.Enums.StructureType.StructureType':+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR'+--+-- == Version History+--+-- - Revision 1, 2020-08-27 (Alan Baker)+--+-- - Internal draft version+--+-- = See Also+--+-- 'PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR'+--+-- = Document Notes+--+-- For more information, see the+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VK_KHR_shader_subgroup_uniform_control_flow Vulkan Specification>+--+-- This page is a generated document. Fixes and changes should be made to+-- the generator scripts, not directly.+module Vulkan.Extensions.VK_KHR_shader_subgroup_uniform_control_flow (PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR) where++import Vulkan.CStruct (FromCStruct)+import Vulkan.CStruct (ToCStruct)+import Data.Kind (Type)++data PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR++instance ToCStruct PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR+instance Show PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR++instance FromCStruct PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR+
src/Vulkan/Extensions/VK_KHR_swapchain.hs view
@@ -1899,11 +1899,11 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | - | - | Any | - |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | - | - | Any |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- == Return Codes --
src/Vulkan/Extensions/VK_KHR_synchronization2.hs view
@@ -777,12 +777,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -944,12 +944,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1179,12 +1179,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1343,13 +1343,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Transfer | |--- | Secondary | | Graphics | |--- | | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Transfer |+-- | Secondary | | Graphics |+-- | | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1568,11 +1568,11 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | - | - | Any | - |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | - | - | Any |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- == Return Codes --@@ -1796,13 +1796,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Transfer | Transfer |--- | Secondary | | Graphics | |--- | | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Transfer |+-- | Secondary | | Graphics |+-- | | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1979,13 +1979,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Transfer | Transfer |--- | Secondary | | Graphics | |--- | | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Transfer |+-- | Secondary | | Graphics |+-- | | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -4636,8 +4636,15 @@ -- waited on by @semaphore@, if @semaphore@ is a timeline semaphore. -- Otherwise it is ignored. value :: Word64- , -- | @stageMask@ is a 'PipelineStageFlags2KHR' mask of pipeline stages at- -- which the semaphore either waits or is signaled.+ , -- | @stageMask@ is a 'PipelineStageFlags2KHR' mask of pipeline stages which+ -- limit the first synchronization scope of a semaphore signal operation,+ -- or second synchronization scope of a semaphore wait operation as+ -- described in the+ -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-semaphores-waiting semaphore wait operation>+ -- and+ -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-semaphores-signaling semaphore signal operation>+ -- sections of+ -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization the synchronization chapter>. stageMask :: PipelineStageFlags2KHR , -- | @deviceIndex@ is the index of the device within a device group that -- executes the semaphore wait or signal operation.@@ -5163,15 +5170,20 @@ -- | 'ACCESS_2_NONE_KHR' specifies no accesses. pattern ACCESS_2_NONE_KHR = AccessFlagBits2KHR 0x0000000000000000 -- | 'ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR' specifies read access to--- indirect buffers in the 'PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR'--- pipeline stage.+-- command data read from indirect buffers as part of an indirect build,+-- trace, drawing or dispatch command. Such access occurs in the+-- 'PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR' pipeline stage. pattern ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR = AccessFlagBits2KHR 0x0000000000000001 -- | 'ACCESS_2_INDEX_READ_BIT_KHR' specifies read access to an index buffer--- in the 'PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR' pipeline stage.+-- as part of an indexed drawing command, bound by+-- 'Vulkan.Core10.CommandBufferBuilding.cmdBindIndexBuffer'. Such access+-- occurs in the 'PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR' pipeline stage. pattern ACCESS_2_INDEX_READ_BIT_KHR = AccessFlagBits2KHR 0x0000000000000002 -- | 'ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR' specifies read access to a--- vertex buffer in the 'PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR'--- pipeline stage.+-- vertex buffer as part of a drawing command, bound by+-- 'Vulkan.Core10.CommandBufferBuilding.cmdBindVertexBuffers'. Such access+-- occurs in the 'PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR' pipeline+-- stage. pattern ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR = AccessFlagBits2KHR 0x0000000000000004 -- | 'ACCESS_2_UNIFORM_READ_BIT_KHR' specifies read access to a -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-uniformbuffer uniform buffer>@@ -5179,9 +5191,13 @@ pattern ACCESS_2_UNIFORM_READ_BIT_KHR = AccessFlagBits2KHR 0x0000000000000008 -- | 'ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR' specifies read access to an -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass input attachment>--- in the 'PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR' pipeline stage.+-- within a render pass during fragment shading. Such access occurs in the+-- 'PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR' pipeline stage. pattern ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR = AccessFlagBits2KHR 0x0000000000000010--- | 'ACCESS_2_SHADER_READ_BIT_KHR' is equivalent to the logical OR of:+-- | 'ACCESS_2_SHADER_READ_BIT_KHR' specifies read access to a+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#shader-binding-table shader binding table>+-- in any shader pipeline. In addition, it is equivalent to the logical OR+-- of: -- -- - VK_ACCESS_2_UNIFORM_READ_BIT_KHR --@@ -5193,43 +5209,72 @@ -- 'ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR'. pattern ACCESS_2_SHADER_WRITE_BIT_KHR = AccessFlagBits2KHR 0x0000000000000040 -- | 'ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR' specifies read access to a--- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass color attachment>--- (excluding--- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#framebuffer-blend-advanced advanced blend operations>)--- in the 'PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR' pipeline--- stage.+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass color attachment>,+-- such as via+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#framebuffer-blending blending>,+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#framebuffer-logicop logic operations>,+-- or via certain+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass-load-store-ops subpass load operations>.+-- It does not include+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#framebuffer-blend-advanced advanced blend operations>.+-- Such access occurs in the+-- 'PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR' pipeline stage. pattern ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR = AccessFlagBits2KHR 0x0000000000000080 -- | 'ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR' specifies write access to a--- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass color or resolve attachment>--- in the 'PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR' pipeline--- stage.+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass color, resolve, or depth\/stencil resolve attachment>+-- during a+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass render pass>+-- or via certain+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass-load-store-ops subpass load and store operations>.+-- Such access occurs in the+-- 'PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR' pipeline stage. pattern ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR = AccessFlagBits2KHR 0x0000000000000100 -- | 'ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR' specifies read access -- to a--- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass depth\/stencil attachment>--- in the 'PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR' or+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass depth\/stencil attachment>,+-- via+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fragops-ds-state depth or stencil operations>+-- or via certain+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass-load-store-ops subpass load operations>.+-- Such access occurs in the+-- 'PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR' or -- 'PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR' pipeline stages. pattern ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR = AccessFlagBits2KHR 0x0000000000000200 -- | 'ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR' specifies write access -- to a--- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass depth\/stencil attachment>--- in the 'PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR' or+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass depth\/stencil attachment>,+-- via+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fragops-ds-state depth or stencil operations>+-- or via certain+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass-load-store-ops subpass load and store operations>.+-- Such access occurs in the+-- 'PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR' or -- 'PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR' pipeline stages. pattern ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR = AccessFlagBits2KHR 0x0000000000000400 -- | 'ACCESS_2_TRANSFER_READ_BIT_KHR' specifies read access to an image or--- buffer in the 'PIPELINE_STAGE_2_COPY_BIT_KHR',+-- buffer in a+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#copies copy>+-- operation. Such access occurs in the 'PIPELINE_STAGE_2_COPY_BIT_KHR', -- 'PIPELINE_STAGE_2_BLIT_BIT_KHR', or 'PIPELINE_STAGE_2_RESOLVE_BIT_KHR' -- pipeline stages. pattern ACCESS_2_TRANSFER_READ_BIT_KHR = AccessFlagBits2KHR 0x0000000000000800 -- | 'ACCESS_2_TRANSFER_WRITE_BIT_KHR' specifies write access to an image or--- buffer in the 'PIPELINE_STAGE_2_COPY_BIT_KHR',+-- buffer in a+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#clears clear>+-- or+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#copies copy>+-- operation. Such access occurs in the 'PIPELINE_STAGE_2_COPY_BIT_KHR', -- 'PIPELINE_STAGE_2_BLIT_BIT_KHR', 'PIPELINE_STAGE_2_CLEAR_BIT_KHR', or -- 'PIPELINE_STAGE_2_RESOLVE_BIT_KHR' pipeline stages. pattern ACCESS_2_TRANSFER_WRITE_BIT_KHR = AccessFlagBits2KHR 0x0000000000001000--- | 'ACCESS_2_HOST_READ_BIT_KHR' specifies read access to memory in the--- 'PIPELINE_STAGE_2_HOST_BIT_KHR' pipeline stage.+-- | 'ACCESS_2_HOST_READ_BIT_KHR' specifies read access by a host operation.+-- Accesses of this type are not performed through a resource, but directly+-- on memory. Such access occurs in the 'PIPELINE_STAGE_2_HOST_BIT_KHR'+-- pipeline stage. pattern ACCESS_2_HOST_READ_BIT_KHR = AccessFlagBits2KHR 0x0000000000002000--- | 'ACCESS_2_HOST_WRITE_BIT_KHR' specifies write access to memory in the+-- | 'ACCESS_2_HOST_WRITE_BIT_KHR' specifies write access by a host+-- operation. Accesses of this type are not performed through a resource,+-- but directly on memory. Such access occurs in the -- 'PIPELINE_STAGE_2_HOST_BIT_KHR' pipeline stage. pattern ACCESS_2_HOST_WRITE_BIT_KHR = AccessFlagBits2KHR 0x0000000000004000 -- | 'ACCESS_2_MEMORY_READ_BIT_KHR' specifies all read accesses. It is always@@ -5266,50 +5311,67 @@ -- access to -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass color attachments>, -- including--- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#framebuffer-blend-advanced advanced blend operations>,--- in the 'PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR' pipeline--- stage.+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#framebuffer-blend-advanced advanced blend operations>.+-- Such access occurs in the+-- 'PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR' pipeline stage. pattern ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT = AccessFlagBits2KHR 0x0000000000080000 -- | 'ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT' specifies read access to a -- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#renderpass-fragmentdensitymapattachment fragment density map attachment>--- in the 'PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT' pipeline--- stage.+-- during dynamic+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fragmentdensitymapops fragment density map operations>.+-- Such access occurs in the+-- 'PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT' pipeline stage. pattern ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT = AccessFlagBits2KHR 0x0000000001000000 -- | 'ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR' specifies write access--- to an acceleration structure in the+-- to an acceleration structure or+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#acceleration-structure-scratch acceleration structure scratch buffer>+-- as part of a build or copy command. Such access occurs in the -- 'PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR' pipeline stage. pattern ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR = AccessFlagBits2KHR 0x0000000000400000 -- | 'ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR' specifies read access to--- an acceleration structure in the--- 'PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR' or--- 'PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR' pipeline stages.+-- an acceleration structure as part of a trace, build, or copy command, or+-- to an+-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#acceleration-structure-scratch acceleration structure scratch buffer>+-- as part of a build command. Such access occurs in the+-- 'PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR' pipeline stage or+-- 'PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR' pipeline stage. pattern ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR = AccessFlagBits2KHR 0x0000000000200000--- No documentation found for Nested "VkAccessFlagBits2KHR" "VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR"+-- | 'ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR' specifies read+-- access to a fragment shading rate attachment during rasterization. Such+-- access occurs in the+-- 'PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR' pipeline+-- stage. pattern ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR = AccessFlagBits2KHR 0x0000000000800000 -- | 'ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV' specifies writes to the--- target command buffer in the+-- target command buffer preprocess outputs. Such access occurs in the -- 'PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV' pipeline stage. pattern ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV = AccessFlagBits2KHR 0x0000000000040000--- | 'ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV' specifies reads from--- 'Vulkan.Core10.Handles.Buffer' inputs to--- 'Vulkan.Extensions.VK_NV_device_generated_commands.cmdPreprocessGeneratedCommandsNV'--- in the 'PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV' pipeline stage.+-- | 'ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV' specifies reads from buffer+-- inputs to+-- 'Vulkan.Extensions.VK_NV_device_generated_commands.cmdPreprocessGeneratedCommandsNV'.+-- Such access occurs in the 'PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV'+-- pipeline stage. pattern ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV = AccessFlagBits2KHR 0x0000000000020000 -- | 'ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT' specifies read access to a--- predicate in the 'PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT'--- pipeline stage.+-- predicate as part of conditional rendering. Such access occurs in the+-- 'PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT' pipeline stage. pattern ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT = AccessFlagBits2KHR 0x0000000000100000 -- | 'ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT' specifies write--- access to a transform feedback counter buffer in the+-- access to a transform feedback counter buffer which is written when+-- 'Vulkan.Extensions.VK_EXT_transform_feedback.cmdEndTransformFeedbackEXT'+-- executes. Such access occurs in the -- 'PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT' pipeline stage. pattern ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT = AccessFlagBits2KHR 0x0000000008000000 -- | 'ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT' specifies read access--- to a transform feedback counter buffer in the+-- to a transform feedback counter buffer which is read when+-- 'Vulkan.Extensions.VK_EXT_transform_feedback.cmdBeginTransformFeedbackEXT'+-- executes. Such access occurs in the -- 'PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT' pipeline stage. pattern ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT = AccessFlagBits2KHR 0x0000000004000000 -- | 'ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT' specifies write access to a--- transform feedback buffer in the--- 'PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT' pipeline stage.+-- transform feedback buffer made when transform feedback is active. Such+-- access occurs in the 'PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT'+-- pipeline stage. pattern ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT = AccessFlagBits2KHR 0x0000000002000000 conNameAccessFlagBits2KHR :: String
src/Vulkan/Extensions/VK_NV_acquire_winrt_display.hs view
@@ -107,7 +107,7 @@ -- The X11 acquire command does need to accept a platform-specific -- parameter. This could be handled by adding to a platform-independent -- acquire command a params struct to which platform-dependent types can be--- chained by pNext pointer.+-- chained by @pNext@ pointer. -- -- The prevailing opinion is that it would be odd to create a second -- platform-independent function that is used on the Windows 10 platform,
src/Vulkan/Extensions/VK_NV_clip_space_w_scaling.hs view
@@ -317,12 +317,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_NV_coverage_reduction_mode.hs view
@@ -47,7 +47,7 @@ -- control how this reduction is performed. -- -- - Merge: When there are more samples in the pixel coverage than color--- samples, there is an implementation dependent association of each+-- samples, there is an implementation-dependent association of each -- pixel coverage sample to a color sample. In the merge mode, the -- color sample coverage is computed such that only if any associated -- sample in the pixel coverage is covered, the color sample is
src/Vulkan/Extensions/VK_NV_coverage_reduction_mode.hs-boot view
@@ -47,7 +47,7 @@ -- control how this reduction is performed. -- -- - Merge: When there are more samples in the pixel coverage than color--- samples, there is an implementation dependent association of each+-- samples, there is an implementation-dependent association of each -- pixel coverage sample to a color sample. In the merge mode, the -- color sample coverage is computed such that only if any associated -- sample in the pixel coverage is covered, the color sample is
src/Vulkan/Extensions/VK_NV_device_diagnostic_checkpoints.hs view
@@ -198,13 +198,13 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- | | | Transfer | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- | | | Transfer |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_NV_device_generated_commands.hs view
@@ -308,7 +308,7 @@ -- possible, for example for doing explicit preprocessing and execution in -- a ping-pong fashion. ----- The actual buffer size is implementation dependent and may be zero, i.e.+-- The actual buffer size is implementation-dependent and may be zero, i.e. -- not always required. -- -- When making use of Graphics Shader Groups, the programs should behave@@ -1177,16 +1177,36 @@ -- /must/ be the same as the current subpass color and\/or -- depth\/stencil attachments ----- - #VUID-vkCmdExecuteGeneratedCommandsNV-pStrides-04884# If the bound+-- - #VUID-vkCmdExecuteGeneratedCommandsNV-None-04912# If the bound+-- graphics pipeline was created with both the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- and+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic states enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+--+-- - #VUID-vkCmdExecuteGeneratedCommandsNV-pStrides-04913# If the bound -- graphics pipeline was created with the -- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic state enabled, but not the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT' -- dynamic state enabled, then -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ have been called in the current command buffer prior to this--- drawing command, and the @pStrides@ parameter of+-- draw command, and the @pStrides@ parameter of -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ not be @NULL@ --+-- - #VUID-vkCmdExecuteGeneratedCommandsNV-None-04914# If the bound+-- graphics pipeline state was created with the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- dynamic state enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+-- -- - #VUID-vkCmdExecuteGeneratedCommandsNV-None-04007# All vertex input -- bindings accessed via vertex input variables declared in the vertex -- shader entry point’s interface /must/ have either valid or@@ -1261,12 +1281,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1354,12 +1374,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1450,12 +1470,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | Compute | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | Compute |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_NV_device_generated_commands.hs-boot view
@@ -308,7 +308,7 @@ -- possible, for example for doing explicit preprocessing and execution in -- a ping-pong fashion. ----- The actual buffer size is implementation dependent and may be zero, i.e.+-- The actual buffer size is implementation-dependent and may be zero, i.e. -- not always required. -- -- When making use of Graphics Shader Groups, the programs should behave
src/Vulkan/Extensions/VK_NV_fragment_shading_rate_enums.hs view
@@ -356,12 +356,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_NV_mesh_shader.hs view
@@ -791,16 +791,36 @@ -- /must/ be the same as the current subpass color and\/or -- depth\/stencil attachments ----- - #VUID-vkCmdDrawMeshTasksNV-pStrides-04884# If the bound graphics+-- - #VUID-vkCmdDrawMeshTasksNV-None-04912# If the bound graphics+-- pipeline was created with both the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- and+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic states enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+--+-- - #VUID-vkCmdDrawMeshTasksNV-pStrides-04913# If the bound graphics -- pipeline was created with the -- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic state enabled, but not the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT' -- dynamic state enabled, then -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ have been called in the current command buffer prior to this--- drawing command, and the @pStrides@ parameter of+-- draw command, and the @pStrides@ parameter of -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ not be @NULL@ --+-- - #VUID-vkCmdDrawMeshTasksNV-None-04914# If the bound graphics+-- pipeline state was created with the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- dynamic state enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+-- -- - #VUID-vkCmdDrawMeshTasksNV-taskCount-02119# @taskCount@ /must/ be -- less than or equal to -- 'PhysicalDeviceMeshShaderPropertiesNV'::@maxDrawMeshTasksCount@@@ -832,12 +852,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | Graphics |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1351,16 +1371,36 @@ -- /must/ be the same as the current subpass color and\/or -- depth\/stencil attachments ----- - #VUID-vkCmdDrawMeshTasksIndirectNV-pStrides-04884# If the bound+-- - #VUID-vkCmdDrawMeshTasksIndirectNV-None-04912# If the bound graphics+-- pipeline was created with both the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- and+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic states enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+--+-- - #VUID-vkCmdDrawMeshTasksIndirectNV-pStrides-04913# If the bound -- graphics pipeline was created with the -- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic state enabled, but not the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT' -- dynamic state enabled, then -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ have been called in the current command buffer prior to this--- drawing command, and the @pStrides@ parameter of+-- draw command, and the @pStrides@ parameter of -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ not be @NULL@ --+-- - #VUID-vkCmdDrawMeshTasksIndirectNV-None-04914# If the bound graphics+-- pipeline state was created with the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- dynamic state enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+-- -- - #VUID-vkCmdDrawMeshTasksIndirectNV-buffer-02708# If @buffer@ is -- non-sparse then it /must/ be bound completely and contiguously to a -- single 'Vulkan.Core10.Handles.DeviceMemory' object@@ -1434,12 +1474,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | Graphics |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1955,16 +1995,36 @@ -- /must/ be the same as the current subpass color and\/or -- depth\/stencil attachments ----- - #VUID-vkCmdDrawMeshTasksIndirectCountNV-pStrides-04884# If the bound+-- - #VUID-vkCmdDrawMeshTasksIndirectCountNV-None-04912# If the bound+-- graphics pipeline was created with both the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- and+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic states enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+--+-- - #VUID-vkCmdDrawMeshTasksIndirectCountNV-pStrides-04913# If the bound -- graphics pipeline was created with the -- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT'+-- dynamic state enabled, but not the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT' -- dynamic state enabled, then -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ have been called in the current command buffer prior to this--- drawing command, and the @pStrides@ parameter of+-- draw command, and the @pStrides@ parameter of -- 'Vulkan.Extensions.VK_EXT_extended_dynamic_state.cmdBindVertexBuffers2EXT' -- /must/ not be @NULL@ --+-- - #VUID-vkCmdDrawMeshTasksIndirectCountNV-None-04914# If the bound+-- graphics pipeline state was created with the+-- 'Vulkan.Core10.Enums.DynamicState.DYNAMIC_STATE_VERTEX_INPUT_EXT'+-- dynamic state enabled, then+-- 'Vulkan.Extensions.VK_EXT_vertex_input_dynamic_state.cmdSetVertexInputEXT'+-- /must/ have been called in the current command buffer prior to this+-- draw command+-- -- - #VUID-vkCmdDrawMeshTasksIndirectCountNV-buffer-02708# If @buffer@ is -- non-sparse then it /must/ be bound completely and contiguously to a -- single 'Vulkan.Core10.Handles.DeviceMemory' object@@ -2065,12 +2125,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Inside | Graphics | Graphics |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Inside | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_NV_ray_tracing.hs view
@@ -1207,12 +1207,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Compute | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Compute |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1340,12 +1340,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Compute | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Compute |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1537,12 +1537,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Compute | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Compute |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -1984,12 +1984,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Outside | Compute | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Outside | Compute |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_NV_scissor_exclusive.hs view
@@ -266,12 +266,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_NV_shading_rate_image.hs view
@@ -463,12 +463,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -561,12 +561,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --@@ -655,12 +655,12 @@ -- -- \' ----- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+--- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-types Pipeline Type> |--- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+--- | Primary | Both | Graphics | |--- | Secondary | | | |--- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------++-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------++-- | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkCommandBufferLevel Command Buffer Levels> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#vkCmdBeginRenderPass Render Pass Scope> | <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkQueueFlagBits Supported Queue Types> |+-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================++-- | Primary | Both | Graphics |+-- | Secondary | | |+-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+ -- -- = See Also --
src/Vulkan/Extensions/VK_QCOM_rotated_copy_commands.hs view
@@ -62,11 +62,11 @@ -- -- 1) What is an appropriate name for the added extension structure? The -- style guide says “Structures which extend other structures through the--- pNext chain should reflect the name of the base structure they extend.”,--- but in this case a single extension structure is used to extend three--- base structures (vkCmdBlitImage2KHR, vkCmdCopyImageToBuffer2KHR and--- vkCmdCopyBufferToImage2KHR). Creating three identical structures with--- unique names seemed undesirable.+-- @pNext@ chain should reflect the name of the base structure they+-- extend.”, but in this case a single extension structure is used to+-- extend three base structures (vkCmdBlitImage2KHR,+-- vkCmdCopyImageToBuffer2KHR and vkCmdCopyBufferToImage2KHR). Creating+-- three identical structures with unique names seemed undesirable. -- -- __RESOLVED__: Deviate from the style guide for extension structure -- naming.
src/Vulkan/Extensions/VK_QCOM_rotated_copy_commands.hs-boot view
@@ -62,11 +62,11 @@ -- -- 1) What is an appropriate name for the added extension structure? The -- style guide says “Structures which extend other structures through the--- pNext chain should reflect the name of the base structure they extend.”,--- but in this case a single extension structure is used to extend three--- base structures (vkCmdBlitImage2KHR, vkCmdCopyImageToBuffer2KHR and--- vkCmdCopyBufferToImage2KHR). Creating three identical structures with--- unique names seemed undesirable.+-- @pNext@ chain should reflect the name of the base structure they+-- extend.”, but in this case a single extension structure is used to+-- extend three base structures (vkCmdBlitImage2KHR,+-- vkCmdCopyImageToBuffer2KHR and vkCmdCopyBufferToImage2KHR). Creating+-- three identical structures with unique names seemed undesirable. -- -- __RESOLVED__: Deviate from the style guide for extension structure -- naming.
src/Vulkan/Extensions/VK_VALVE_mutable_descriptor_type.hs view
@@ -3,8 +3,123 @@ -- -- VK_VALVE_mutable_descriptor_type - device extension ----- - Joshua Ashton--- <https://github.com/KhronosGroup/Vulkan-Docs/issues/new?title=VK_VALVE_mutable_descriptor_type:%20&body=@Joshua-Ashton%20 >+-- == VK_VALVE_mutable_descriptor_type+--+-- [__Name String__]+-- @VK_VALVE_mutable_descriptor_type@+--+-- [__Extension Type__]+-- Device extension+--+-- [__Registered Extension Number__]+-- 352+--+-- [__Revision__]+-- 1+--+-- [__Extension and Version Dependencies__]+--+-- - Requires Vulkan 1.0+--+-- - Requires @VK_KHR_maintenance3@+--+-- [__Special Use__]+--+-- - <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#extendingvulkan-compatibility-specialuse D3D support>+--+-- [__Contact__]+--+-- - Joshua Ashton+-- <https://github.com/KhronosGroup/Vulkan-Docs/issues/new?title=VK_VALVE_mutable_descriptor_type:%20&body=@Joshua-Ashton%20 >+--+-- - Hans-Kristian Arntzen+-- <https://github.com/KhronosGroup/Vulkan-Docs/issues/new?title=VK_VALVE_mutable_descriptor_type:%20&body=@HansKristian-Work%20 >+--+-- == Other Extension Metadata+--+-- [__Last Modified Date__]+-- 2020-12-02+--+-- [__IP Status__]+-- No known IP claims.+--+-- [__Contributors__]+--+-- - Joshua Ashton, Valve+--+-- - Hans-Kristian Arntzen, Valve+--+-- == Description+--+-- This extension allows applications to reduce descriptor memory footprint+-- by allowing a descriptor to be able to mutate to a given list of+-- descriptor types depending on which descriptor types are written into,+-- or copied into a descriptor set.+--+-- The main use case this extension intends to address is descriptor+-- indexing with+-- 'Vulkan.Core12.Enums.DescriptorBindingFlagBits.DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT'+-- where the descriptor types are completely generic, as this means+-- applications can allocate one large descriptor set, rather than having+-- one large descriptor set per descriptor type, which significantly bloats+-- descriptor memory usage and causes performance issues.+--+-- This extension also adds a mechanism to declare that a descriptor pool,+-- and therefore the descriptor sets that are allocated from it, reside+-- only in host memory; as such these descriptors can only be+-- updated\/copied, but not bound.+--+-- These features together allow much more efficient emulation of the raw+-- D3D12 binding model. This extension is primarily intended to be useful+-- for API layering efforts.+--+-- == New Structures+--+-- - 'MutableDescriptorTypeListVALVE'+--+-- - Extending+-- 'Vulkan.Core10.DescriptorSet.DescriptorSetLayoutCreateInfo',+-- 'Vulkan.Core10.DescriptorSet.DescriptorPoolCreateInfo':+--+-- - 'MutableDescriptorTypeCreateInfoVALVE'+--+-- - Extending+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceFeatures2',+-- 'Vulkan.Core10.Device.DeviceCreateInfo':+--+-- - 'PhysicalDeviceMutableDescriptorTypeFeaturesVALVE'+--+-- == New Enum Constants+--+-- - 'VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME'+--+-- - 'VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION'+--+-- - Extending+-- 'Vulkan.Core10.Enums.DescriptorPoolCreateFlagBits.DescriptorPoolCreateFlagBits':+--+-- - 'Vulkan.Core10.Enums.DescriptorPoolCreateFlagBits.DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE'+--+-- - Extending+-- 'Vulkan.Core10.Enums.DescriptorSetLayoutCreateFlagBits.DescriptorSetLayoutCreateFlagBits':+--+-- - 'Vulkan.Core10.Enums.DescriptorSetLayoutCreateFlagBits.DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE'+--+-- - Extending 'Vulkan.Core10.Enums.DescriptorType.DescriptorType':+--+-- - 'Vulkan.Core10.Enums.DescriptorType.DESCRIPTOR_TYPE_MUTABLE_VALVE'+--+-- - Extending 'Vulkan.Core10.Enums.StructureType.StructureType':+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE'+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE'+--+-- == Version History+--+-- - Revision 1, 2020-12-01 (Joshua Ashton, Hans-Kristian Arntzen)+--+-- - Initial specification, squashed from public draft. -- -- = See Also --
src/Vulkan/Extensions/VK_VALVE_mutable_descriptor_type.hs-boot view
@@ -3,8 +3,123 @@ -- -- VK_VALVE_mutable_descriptor_type - device extension ----- - Joshua Ashton--- <https://github.com/KhronosGroup/Vulkan-Docs/issues/new?title=VK_VALVE_mutable_descriptor_type:%20&body=@Joshua-Ashton%20 >+-- == VK_VALVE_mutable_descriptor_type+--+-- [__Name String__]+-- @VK_VALVE_mutable_descriptor_type@+--+-- [__Extension Type__]+-- Device extension+--+-- [__Registered Extension Number__]+-- 352+--+-- [__Revision__]+-- 1+--+-- [__Extension and Version Dependencies__]+--+-- - Requires Vulkan 1.0+--+-- - Requires @VK_KHR_maintenance3@+--+-- [__Special Use__]+--+-- - <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#extendingvulkan-compatibility-specialuse D3D support>+--+-- [__Contact__]+--+-- - Joshua Ashton+-- <https://github.com/KhronosGroup/Vulkan-Docs/issues/new?title=VK_VALVE_mutable_descriptor_type:%20&body=@Joshua-Ashton%20 >+--+-- - Hans-Kristian Arntzen+-- <https://github.com/KhronosGroup/Vulkan-Docs/issues/new?title=VK_VALVE_mutable_descriptor_type:%20&body=@HansKristian-Work%20 >+--+-- == Other Extension Metadata+--+-- [__Last Modified Date__]+-- 2020-12-02+--+-- [__IP Status__]+-- No known IP claims.+--+-- [__Contributors__]+--+-- - Joshua Ashton, Valve+--+-- - Hans-Kristian Arntzen, Valve+--+-- == Description+--+-- This extension allows applications to reduce descriptor memory footprint+-- by allowing a descriptor to be able to mutate to a given list of+-- descriptor types depending on which descriptor types are written into,+-- or copied into a descriptor set.+--+-- The main use case this extension intends to address is descriptor+-- indexing with+-- 'Vulkan.Core12.Enums.DescriptorBindingFlagBits.DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT'+-- where the descriptor types are completely generic, as this means+-- applications can allocate one large descriptor set, rather than having+-- one large descriptor set per descriptor type, which significantly bloats+-- descriptor memory usage and causes performance issues.+--+-- This extension also adds a mechanism to declare that a descriptor pool,+-- and therefore the descriptor sets that are allocated from it, reside+-- only in host memory; as such these descriptors can only be+-- updated\/copied, but not bound.+--+-- These features together allow much more efficient emulation of the raw+-- D3D12 binding model. This extension is primarily intended to be useful+-- for API layering efforts.+--+-- == New Structures+--+-- - 'MutableDescriptorTypeListVALVE'+--+-- - Extending+-- 'Vulkan.Core10.DescriptorSet.DescriptorSetLayoutCreateInfo',+-- 'Vulkan.Core10.DescriptorSet.DescriptorPoolCreateInfo':+--+-- - 'MutableDescriptorTypeCreateInfoVALVE'+--+-- - Extending+-- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceFeatures2',+-- 'Vulkan.Core10.Device.DeviceCreateInfo':+--+-- - 'PhysicalDeviceMutableDescriptorTypeFeaturesVALVE'+--+-- == New Enum Constants+--+-- - 'VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME'+--+-- - 'VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION'+--+-- - Extending+-- 'Vulkan.Core10.Enums.DescriptorPoolCreateFlagBits.DescriptorPoolCreateFlagBits':+--+-- - 'Vulkan.Core10.Enums.DescriptorPoolCreateFlagBits.DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE'+--+-- - Extending+-- 'Vulkan.Core10.Enums.DescriptorSetLayoutCreateFlagBits.DescriptorSetLayoutCreateFlagBits':+--+-- - 'Vulkan.Core10.Enums.DescriptorSetLayoutCreateFlagBits.DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE'+--+-- - Extending 'Vulkan.Core10.Enums.DescriptorType.DescriptorType':+--+-- - 'Vulkan.Core10.Enums.DescriptorType.DESCRIPTOR_TYPE_MUTABLE_VALVE'+--+-- - Extending 'Vulkan.Core10.Enums.StructureType.StructureType':+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE'+--+-- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE'+--+-- == Version History+--+-- - Revision 1, 2020-12-01 (Joshua Ashton, Hans-Kristian Arntzen)+--+-- - Initial specification, squashed from public draft. -- -- = See Also --
src/Vulkan/Version.hs view
@@ -19,11 +19,11 @@ import Data.Word (Word32) pattern HEADER_VERSION :: Word32-pattern HEADER_VERSION = 179+pattern HEADER_VERSION = 180 pattern HEADER_VERSION_COMPLETE :: Word32-pattern HEADER_VERSION_COMPLETE = MAKE_API_VERSION 1 2 179+pattern HEADER_VERSION_COMPLETE = MAKE_API_VERSION 1 2 180 pattern MAKE_API_VERSION :: Word32 -> Word32 -> Word32 -> Word32
vulkan.cabal view
@@ -5,7 +5,7 @@ -- see: https://github.com/sol/hpack name: vulkan-version: 3.10.2+version: 3.10.3 synopsis: Bindings to the Vulkan graphics API. category: Graphics homepage: https://github.com/expipiplus1/vulkan#readme@@ -307,6 +307,7 @@ Vulkan.Extensions.VK_EXT_fragment_shader_interlock Vulkan.Extensions.VK_EXT_full_screen_exclusive Vulkan.Extensions.VK_EXT_global_priority+ Vulkan.Extensions.VK_EXT_global_priority_query Vulkan.Extensions.VK_EXT_hdr_metadata Vulkan.Extensions.VK_EXT_headless_surface Vulkan.Extensions.VK_EXT_host_query_reset@@ -423,6 +424,7 @@ Vulkan.Extensions.VK_KHR_shader_float_controls Vulkan.Extensions.VK_KHR_shader_non_semantic_info Vulkan.Extensions.VK_KHR_shader_subgroup_extended_types+ Vulkan.Extensions.VK_KHR_shader_subgroup_uniform_control_flow Vulkan.Extensions.VK_KHR_shader_terminate_invocation Vulkan.Extensions.VK_KHR_shared_presentable_image Vulkan.Extensions.VK_KHR_spirv_1_4